+ ") has a " + variableAnnotationClass.getSimpleName()
+ " annotated property (" + propertyDescriptor.getName()
+ ") that should have a setter.");
}
if (variableAnnotationClass.equals(PlanningVariable.class)) {
GenuineVariableDescriptor variableDescriptor = new GenuineVariableDescriptor(
this, propertyDescriptor);
declaredGenuineVariableDescriptorMap.put(propertyDescriptor.getName(), variableDescriptor);
variableDescriptor.processAnnotations(descriptorPolicy);
} else if (variableAnnotationClass.equals(InverseRelationShadowVariable.class)) {
ShadowVariableDescriptor variableDescriptor = new InverseRelationShadowVariableDescriptor(
this, propertyDescriptor);
declaredShadowVariableDescriptorMap.put(propertyDescriptor.getName(), variableDescriptor);
variableDescriptor.processAnnotations(descriptorPolicy);
} else if (variableAnnotationClass.equals(CustomShadowVariable.class)) {
ShadowVariableDescriptor variableDescriptor = new CustomShadowVariableDescriptor(
this, propertyDescriptor);
declaredShadowVariableDescriptorMap.put(propertyDescriptor.getName(), variableDescriptor);
variableDescriptor.processAnnotations(descriptorPolicy);
} else {
throw new IllegalStateException("The variableAnnotationClass ("
+ variableAnnotationClass + ") is not implemented.");
}
}