public class SetterConfiguration {
private Class _class;
- private boolean _publicOnly;
+ private boolean publicOnly;
- private Map<Method, ParameterValues> _setters;
+ private Map<Method, ParameterValues> setters;
/**
* Constructs the setter configuration. By default no setters are added.
*/
public SetterConfiguration(Class aClass) {
_class = aClass;
- _publicOnly = true;
- _setters = new HashMap<Method, ParameterValues>();
+ publicOnly = true;
+ setters = new HashMap<Method, ParameterValues>();
}
/**
* Makes sure that all available setters are used.
*/
public SetterConfiguration initAllSetters() {
- _setters.clear();
- for (Method method: getAllSetters(_class, _publicOnly) ) {
- _setters.put(method, createParameterValues(method));
+ setters.clear();
+ for (Method method: getAllSetters(_class, publicOnly) ) {
+ setters.put(method, createParameterValues(method));
}
return this;
}
* Non public flag.
*/
public SetterConfiguration setNonPublic(boolean aIsNonPublic) {
- _publicOnly = !aIsNonPublic;
+ publicOnly = !aIsNonPublic;
return this;
}
* @return Reference to the current object to allow call chaining.
*/
public SetterConfiguration clear() {
- _setters.clear();
+ setters.clear();
return this;
}
* @return Reference to the current object to allow call chaining.
*/
public SetterConfiguration remove(String aName) {
- for (Method method : _setters.keySet()) {
+ for (Method method : setters.keySet()) {
if (method.getName().equals(aName)) {
- _setters.remove(method);
+ setters.remove(method);
return this;
}
}
if ( !aMethod.getDeclaringClass().isAssignableFrom(_class) ) {
throw new RuntimeException("Method " + aMethod + " not found in class " + _class + " or its superclasses");
}
- for (Method method : _setters.keySet()) {
+ for (Method method : setters.keySet()) {
if (method.equals(aMethod)) {
- _setters.remove(method);
+ setters.remove(method);
return this;
}
}
* @return Reference to the current object to allow call chaining.
*/
public SetterConfiguration add(final String aName) {
- int oldlen = _setters.size();
+ int oldlen = setters.size();
List<Method> methods = new ArrayList<Method>();
- CollectionFilter.filter(getAllSetters(_class, _publicOnly), methods,
+ CollectionFilter.filter(getAllSetters(_class, publicOnly), methods,
new Condition<Method>() {
@Override
public boolean matches(Method aObject) {
}
// TODO is it possible to get more than one setter here in case the subclass overrides
// the baseclass method?
- _setters.put(methods.get(0), createParameterValues(methods.get(0)));
+ setters.put(methods.get(0), createParameterValues(methods.get(0)));
return this;
}
*/
public SetterConfiguration addSetter(final Class aType) {
List<Method> result = new ArrayList<Method>();
- CollectionFilter.filter(getAllSetters(_class, _publicOnly), result,
+ CollectionFilter.filter(getAllSetters(_class, publicOnly), result,
new Condition<Method>() {
@Override
public boolean matches(Method aObject) {
+ setters);
}
Method method = result.get(0);
- _setters.put(method, createParameterValues(method));
+ setters.put(method, createParameterValues(method));
return this;
}
*/
public List<RequiredInterface> getRequiredInterfaces() {
List<RequiredInterface> result = new ArrayList<RequiredInterface>();
- for (Method method : _setters.keySet()) {
- result.addAll(_setters.get(method).getRequiredInterfaces());
+ for (Method method : setters.keySet()) {
+ result.addAll(setters.get(method).getRequiredInterfaces());
}
return result;
}
throw new IllegalArgumentException("Object '" + aObject
+ "' is not an instance of " + _class.getName());
}
- for (Method method : _setters.keySet()) {
- ParameterValues values = _setters.get(method);
+ for (Method method : setters.keySet()) {
+ ParameterValues values = setters.get(method);
try {
method.invoke(aObject, values.values(aScope));
* @return Parameter values.
*/
public ParameterValues values(String aMethod) {
- for (Method method : _setters.keySet()) {
+ for (Method method : setters.keySet()) {
if (method.getName().equals(aMethod)) {
- return _setters.get(method);
+ return setters.get(method);
}
}
throw new IllegalArgumentException("No setter method '" + aMethod
}
public List<Method> getSetters() {
- return new ArrayList<Method>(_setters.keySet());
+ return new ArrayList<Method>(setters.keySet());
}
}