* Process a transformation accessor. Creates a TransformationMapping and
* adds it to descriptor.
*/
@Override
public void process() {
TransformationMapping mapping = new TransformationMapping();
mapping.setAttributeName(getAttributeName());
mapping.setIsOptional(isOptional());
mapping.setIsLazy(usesIndirection());
if (getMutable() != null) {
mapping.setIsMutable(getMutable().booleanValue());
}
// Will check for PROPERTY access.
setAccessorMethods(mapping);
// Process properties
processProperties(mapping);
if (m_readTransformer != null) {
m_readTransformer.process(mapping, getAnnotatedElementName());
}
if (m_writeTransformers.isEmpty()) {
mapping.setIsReadOnly(true);
} else {
if (m_writeTransformers.size() == 1) {
// If only one WriteTransformer specified then if column name
// is not specified attribute name will be used as a column
// name.