removed experimental stuff
This commit is contained in:
parent
2cf157e09a
commit
0576fe2654
|
|
@ -1,29 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2004-2009 the original author or authors.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
package org.springframework.ui.binding;
|
|
||||||
|
|
||||||
import java.lang.annotation.Documented;
|
|
||||||
import java.lang.annotation.ElementType;
|
|
||||||
import java.lang.annotation.Retention;
|
|
||||||
import java.lang.annotation.RetentionPolicy;
|
|
||||||
import java.lang.annotation.Target;
|
|
||||||
|
|
||||||
@Target({ElementType.METHOD, ElementType.FIELD})
|
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
|
||||||
@Documented
|
|
||||||
public @interface Bound {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -1,34 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2004-2009 the original author or authors.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
package org.springframework.ui.binding;
|
|
||||||
|
|
||||||
import java.lang.annotation.Documented;
|
|
||||||
import java.lang.annotation.ElementType;
|
|
||||||
import java.lang.annotation.Retention;
|
|
||||||
import java.lang.annotation.RetentionPolicy;
|
|
||||||
import java.lang.annotation.Target;
|
|
||||||
|
|
||||||
@Target({ElementType.TYPE})
|
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
|
||||||
@Documented
|
|
||||||
public @interface Model {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The name of the model
|
|
||||||
*/
|
|
||||||
String value() default "";
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -1,33 +0,0 @@
|
||||||
package org.springframework.ui.binding.support;
|
|
||||||
|
|
||||||
import java.beans.BeanInfo;
|
|
||||||
import java.beans.IntrospectionException;
|
|
||||||
import java.beans.Introspector;
|
|
||||||
import java.beans.PropertyDescriptor;
|
|
||||||
import java.lang.reflect.Method;
|
|
||||||
|
|
||||||
import org.springframework.core.annotation.AnnotationUtils;
|
|
||||||
import org.springframework.ui.binding.Bound;
|
|
||||||
|
|
||||||
final class AnnotatedModelBinderConfigurer {
|
|
||||||
|
|
||||||
public void configure(GenericBinder binder) {
|
|
||||||
Class<?> modelClass = binder.getModel().getClass();
|
|
||||||
BeanInfo beanInfo;
|
|
||||||
try {
|
|
||||||
beanInfo = Introspector.getBeanInfo(modelClass);
|
|
||||||
} catch (IntrospectionException e) {
|
|
||||||
throw new IllegalStateException("Unable to introspect model " + binder.getModel(), e);
|
|
||||||
}
|
|
||||||
// TODO do we have to still flush introspector cache here?
|
|
||||||
for (PropertyDescriptor prop : beanInfo.getPropertyDescriptors()) {
|
|
||||||
Method getter = prop.getReadMethod();
|
|
||||||
Bound b = AnnotationUtils.getAnnotation(getter, Bound.class);
|
|
||||||
if (b != null) {
|
|
||||||
// TODO should we wire formatter here if using a format annotation - an optimization?
|
|
||||||
binder.addBinding(prop.getName());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -14,8 +14,6 @@ import org.springframework.ui.alert.Alert;
|
||||||
import org.springframework.ui.alert.Alerts;
|
import org.springframework.ui.alert.Alerts;
|
||||||
import org.springframework.ui.alert.Severity;
|
import org.springframework.ui.alert.Severity;
|
||||||
import org.springframework.ui.alert.support.DefaultAlertContext;
|
import org.springframework.ui.alert.support.DefaultAlertContext;
|
||||||
import org.springframework.ui.binding.Bound;
|
|
||||||
import org.springframework.ui.binding.Model;
|
|
||||||
import org.springframework.ui.binding.support.WebBinder;
|
import org.springframework.ui.binding.support.WebBinder;
|
||||||
import org.springframework.ui.format.number.CurrencyFormat;
|
import org.springframework.ui.format.number.CurrencyFormat;
|
||||||
import org.springframework.ui.validation.ValidationFailure;
|
import org.springframework.ui.validation.ValidationFailure;
|
||||||
|
|
@ -277,14 +275,12 @@ public class BindAndValidateLifecycleTests {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Model(value="testBean")
|
|
||||||
public class TestAnnotatedBean {
|
public class TestAnnotatedBean {
|
||||||
|
|
||||||
private String editable;
|
private String editable;
|
||||||
|
|
||||||
private String notEditable;
|
private String notEditable;
|
||||||
|
|
||||||
@Bound
|
|
||||||
public String getEditable() {
|
public String getEditable() {
|
||||||
return editable;
|
return editable;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue