String fieldType = transformation.getFieldType(fieldName);
if (annotation.activate())
{
TransformMethodSignature activate
= new TransformMethodSignature(Modifier.PROTECTED | Modifier.FINAL, "void",
"onActivate",
new String[]{fieldType}, null);
transformation.addTransformedMethod(activate, fieldName + " = $1;");
}
if (annotation.passivate())
{
TransformMethodSignature passivate
= new TransformMethodSignature(Modifier.PROTECTED | Modifier.FINAL, "java.lang.Object",
"onPassivate",
null, null);
transformation.addTransformedMethod(passivate, "return ($w) " + fieldName + ";");
}
}