[forge-dev] Persistence Model Generator
Lincoln Baxter, III
lincolnbaxter at gmail.com
Thu Jul 7 10:08:21 EDT 2011
Forgive me for asking something I could easily google, but where do
annotation processors fit into the development lifecycle? I admit I've never
used one (that I know of.) It would probably help if I did before giving too
much feedback ;)
On Thu, Jul 7, 2011 at 9:12 AM, Ken Finnigan <ken at kenfinnigan.me> wrote:
> Ok, part way through writing this email I realized it probably makes some
> sense to break it down a bit more.
> Now I'm thinking we need an AnnotationProcessor interface with methods
> String getClassName()
> String getOptions()
> String getSourceDirectory()
> String getOutputDirectory()
> List<Dependency> getDependencies()
> Then the AnnotationProcessorFacet methods would be:
> addAnnotationProcessor(AnnotationProcessor processor)
> removeAnnotationProcessor(AnnotationProcessor processor)
> List<AnnotationProcessor> getAnnotationProcessors()
> processAnnotation(AnnotationProcessor processor)
> That's some real thinking on the fly so any other thoughts/enhancements are
> most welcome!
> On Wed, Jul 6, 2011 at 5:04 PM, Lincoln Baxter, III <
> lincolnbaxter at gmail.com> wrote:
>> Good questions. I think #2 would probably be the easiest, but we could
>> offer #1 as an alternative for those who don't want to use the maven build
>> I think #3 would probably be the most robust for future use. What kinds of
>> methods are you thinking of including for the facet?
>> On Sun, Jul 3, 2011 at 3:41 PM, Ken Finnigan <ken at kenfinnigan.me> wrote:
>>> Hey Lincoln,
>>> Have been working on adding JPA model generation to the persistence
>>> plugin over the last few days and have been mulling over the best way to
>>> implement it and wanted to get your thoughts.
>>> I see that there are a few possibilities:
>>> 1) Call the NativeMethodExec utility to call javac for running annotation
>>> processing only.
>>> 2) Add an annotation processing profile to the pom as part of the install
>>> of the plugin (if they select they want model gen), and then performing the
>>> model gen would execute the maven to process and generate annotations
>>> 3) An extension of 2 would be to make an AnnotationProcessorFacet, and
>>> then do 2 as a Maven implementation of that facet.
>>> After thinking about it today I think 3 seems the most flexible, but
>>> wanted to get your thoughts.
>> Lincoln Baxter, III
>> "Keep it Simple"
Lincoln Baxter, III
"Keep it Simple"
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the forge-dev