Issue Details (XML | Word | Printable)

Key: NUCCORE-114
Type: Improvement Improvement
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Andy Jefferson
Reporter: Datanucleus Fan
Votes: 1
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
DataNucleus Core

Allow processing of custom class-level and field-level annotations

Created: 08/Sep/08 09:39 PM   Updated: 14/Jun/11 12:16 PM   Resolved: 10/May/11 12:18 PM
Component/s: MetaData
Affects Version/s: None
Fix Version/s: 3.0.0.m5

Severity: Development


 Description  « Hide
Currently, in order to add a custom field-based annotation you need to create a custom class annotation and then implement an AnnotationReader that is associated with the class annotation. I'd like to be able to add a custom field annotation while reusing the existing AnnotationReader implementations. This isn't critical because I can use @Extension to achieve the same goal, but it's definitely a nice-to-have.

Sort Order: Ascending order - Click to sort in descending order
Andy Jefferson added a comment - 10/May/11 12:16 PM
Far better way is to provide a plugin-point for users to define handlers for class-level and field-level annotations and then call these when processing the annotations in the AnnotationReader. This then provides a hook allowing updates to the AbstractClassMetaData, AbstractMemberMetaData objects by user code.

Andy Jefferson added a comment - 10/May/11 12:18 PM
SVN trunk adds extension points

org.datanucleus.class_annotation_handler
org.datanucleus.member_annotation_handler

where the developer can define handlers for their own annotations.