On Tue, Jun 16, 2009 at 4:48 PM, Raymond Feng<[email protected]> wrote: > Hi, > > I realized that we have an established pattern for the code of > implementation and binding extensions. We also use "copy/paste" to create > new modules for implementation/binding extensions. I think it would be > useful to develop two maven archetypes that can be used to generate the > skeleton modules for implementation/binding extensions. Developers can just > provide the name of the implementation/binding. The java and resource files > will be generated in a maven module. For example, the > sample-implementation-pojo will contain the following files: > > * > META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor > * > META-INF/services/org.apache.tuscany.sca.contribution.processor.ValidationSchema > * > META-INF/services/org.apache.tuscany.sca.provider.ImplementationProviderFactory > * META-INF/services/pojo.POJOImplementationFactory > # sample-implementation-pojo.xsd > # pojo/POJOImplementation.java > * pojo/POJOImplementationFactory.java > * pojo/impl/POJOImplementationFactoryImpl.java > # pojo/impl/POJOImplementationImpl.java > # pojo/impl/POJOImplementationProcessor.java > # pojo/provider/POJOImplementationProvider.java > # pojo/provider/POJOImplementationInvoker.java > # pojo/provider/POJOImplementationProviderFactory.java > > The files marked with * will be completely generated while those with # will > have skeleton code produced. > > Thoughts? Want to help? > > Thanks, > Raymond >
Absolutley, archetypes for creating Tuscany extensions was always something i'd intended to have so +1. I'm not sure if you're aware (its not particularly well documented in the Maven plugin doc) that it is possible to have the archetype define additional properties that get prompted for when archetype:generate is run, so along with the goupId, artifactId, version and package, we can have it prompt for things like the extension name and namespace. ...ant
