The current features of the generator comprise
- Generating POF Serializer classes for Evolvable and non-Evolvable classes.
- Support for Java primitives, Java primitive arrays, Object arrays, Enums, Enum arrays, Strings, Java primitive wrappers, Date-s, collections, uniform collections, maps, key-uniform maps, uniform maps and component attribute types (like in Hibernate).
- Support for custom component attribute types (attributes serializing to multiple property ids, like Hibernate component types).
- New component attribute type serializers can be added by adding the builder class names to the
META-INF/services/info.politext.coherence.pof.annotation.processor.metadata.typehandlers.AttributeTypeHandler file resolved from the classpath. Component attribute type serializers should extend the info.politext.coherence.pof.support.attributeserializer.AbstractAttributeSerializer class.
- Support for custom attribute type handlers.
- New attribute type handlers can be added by adding the builder class names to the
META-INF/services/info.politext.coherence.pof.annotation.processor.metadata.typehandlers.AttributeTypeHandler file resolved from the classpath. Attribute type handlers should implement the info.politext.coherence.pof.annotation.processor.metadata.typehandlers.AttributeTypeHandler interface.
- Support for upgrading state for newer version on deserialization of UpgradeCapableEvolvable instances.
- Generating POF context configuration.
- Generates all-pof-config.xml containing all annotated types.
- Generates all-pof-config.xml including files for package-level package-pof-config.xml files containing all annotated types in the package.
- Behaviour depends on the configuration option pofconfig.perpackage.configfiles.
- Can discover metadata from
- Processing annotations in Java source code
- Java 5 Mirror API.
- JSR-269 Annotation Processing and Java Language Model.
- Custom builders
- New builders can be added by adding the builder class names to the
META-INF/services/info.politext.coherence.pof.annotation.processor.builders.Builder file resolved from the classpath. Builders should implement the info.politext.coherence.pof.annotation.processor.builders.Builder interface.
For examples, look into the sample project in
coherence-using-project-{version}.zip.
For more about capabilities and
rules, look at the Javadoc on the annotations (on the sources, as it is
not generated yet, sorry).
|
|