Hi devs, I have submitted my proposal for the project on "Provide XML-based configuration for OpenJPA's custom metadata and mapping extensions" to Google. The proposal is available at [1].
I would be glad to hear your thoughts. Thanks, ~Umashanthi [1] https://docs.google.com/document/pub?id=1lYyx13FroAlCIr7gIV4xugzXLDh2z9llXq42XTVRIuM On Sat, Mar 26, 2011 at 6:59 PM, Umashanthi Pavalanathan < [email protected]> wrote: > > > On Sat, Feb 5, 2011 at 9:10 PM, Umashanthi Pavalanathan < > [email protected]> wrote: > >> Hi Jeremy, >> >> On Thu, Feb 3, 2011 at 8:46 PM, Jeremy Bauer <[email protected]> wrote: >> >>> Hi Umashanthi, >>> >>> >Further I went through the Javadocs of OpenJPA annotations you mentioned >>> and >>> >the JPA's XML-ORM XML scheme. I understood that the requirement is to >>> create >>> >an XML schema for the custom annotations of OpenJPA, similar to the one >>> >provided for default annotations of JPA, mentioned in section 12.3 of >>> the >>> >spec. Did I get it right? >>> >>> You got it right. One part of the effort is to create a schema similar >>> to >>> the orm schema defined in 12.3 of the 2.0 spec. I have a few ideas as to >>> the >>> different approaches that one could take, but I'll let you think on it >>> and >>> come up with ideas. I don't want to hinder your creativity. :-) But, >>> I'll >>> be happy to provide suggestions if you'd like. >>> >> >> Hope I can come up with some ideas when I proceed with the findings... >> >> >>> >>> >Currently I'm continuing with the spec and samples. I would like to read >>> >more details about the custom annotations of OpenJPA. It'll be great if >>> you >>> >can provide any related resources, if available. >>> >>> Unfortunately, I've found that resources for the extensions are lacking >>> JavaDoc, documentation, and in some cases, example usage/testing. You >>> may >>> find some annotations within OpenJPA documentation[1]. I've found that >>> the >>> best resource is our jUnits. Search for the annotation and then track >>> the >>> persistent class where it is used back to the test case(s). As you go >>> through this exercise, updates to the annotation JavaDoc would be hugely >>> valuable as well. >>> >> >> Thanks for pointing out the user manual; it has good descriptions for some >> annotations. I started with the approach you mentioned and started to >> document resources (Java docs, user manual, code usages) related to each >> custom annotation. You can find the published version of the GoogleDoc[1]. >> I'll be updating this doc for all annotations and will look at the usages in >> code, to find any possible additions to the JavaDoc. >> > > My apologies; I was not active for a while due to my University > examinations. Since I'm done with that I've resumed this effort. > I've done with tabulating all the annotations extensions to the GoogeDoc. > Now I will start with understanding each annotation extension using the > JavaDoc, user manual and usages in the source code; as Jeremy suggested I > will also add more descriptions to the JavaDoc if there's any lack of > content. > > Since the Google Summer of Code application period is going to start soon, > I would like to know the process for marking this as a GSoC project. I > noticed that many other ASF projects are following last year's method of > adding project ideas to the JIRA and tagging it with 'gsoc2011'. Is it the > same with OpenJPA? > > Jeremy, I hope you will be able to mentor this project. > > Is there any other procedures to be followed along with preparing the > project proposal? I would like to hear the thoughts of the community > regarding this. > > > Thanks in advance, > ~Umashanthi > > > >> >> >> [1] >> https://docs.google.com/document/pub?id=1ABqZlq5qwGORtbfin9_3h9FiymF506g-8IprJGwH9sY >> >> Thanks, >> ~Umashanthi >> >> >> >>> >>> -Jeremy >>> >>> [1] http://openjpa.apache.org/builds/latest/docs/manual/manual.pdf >>> >>> On Tue, Feb 1, 2011 at 4:25 PM, Umashanthi Pavalanathan < >>> [email protected]> wrote: >>> >>> > Hi Jeremy, >>> > >>> > On Mon, Jan 31, 2011 at 10:39 PM, Jeremy Bauer <[email protected]> >>> > wrote: >>> > >>> > > Hi Umashanthi, >>> > > >>> > > Thanks for your interest in OpenJPA. I'm glad you were able to get >>> the >>> > > code >>> > > and get it building. Besides reading the spec, the OpenJPA quick >>> start >>> > > guide[1] (especially the examples) is a good place to start. >>> > > >>> > > Here is one SoC project idea... >>> > > >>> > > The JPA specification includes many annotations for the specification >>> of >>> > > metadata and mapping information within Java classes. In addition, >>> the >>> > > spec >>> > > provides a means to supply the same information within XML >>> configuration >>> > > files (orm.xml). One primary benefit of XML config files is it >>> allows >>> > > modification of the ORM information without needing to recompile the >>> > source >>> > > code. >>> > > >>> > >>> > I went through the sections on annotations of the JPA 2.0 spec ( >>> Chapters >>> > 10,11&12) and got some understanding of the XML O/R mapping descriptors >>> and >>> > their use. As it is mentioned, the mapping descriptor serves as both an >>> > alternative to and an overrid- >>> > ing mechanism for Java language metadata annotations. >>> > >>> > >>> > > >>> > > OpenJPA has many custom metadata and mapping annotations that can be >>> used >>> > > to >>> > > provided functionality beyond the JPA specification. However, these >>> > > extensions are available only through annotations. There is >>> currently no >>> > > means to specify the metadata or mapping extensions via XML. We've >>> had >>> > > several requests for this capability, but it hasn't seen much/any >>> > activity. >>> > > >>> > >>> > Further I went through the Javadocs of OpenJPA annotations you >>> mentioned >>> > and >>> > the JPA's XML-ORM XML scheme. I understood that the requirement is to >>> > create >>> > an XML schema for the custom annotations of OpenJPA, similar to the one >>> > provided for default annotations of JPA, mentioned in section 12.3 of >>> the >>> > spec. Did I get it right? >>> > >>> > >>> > >>> > > >>> > > In part, this effort would include: >>> > > >>> > > 1) Understanding OpenJPA's annotatation extensions. >>> > > 2) Determining which annotations make sense to provide in XML >>> > configuration >>> > > 3) Designing a schema for the XML-based configuration file >>> > > (openjpa-orm.xml?) >>> > > 4) Creating metadata and mapping parsers for the new XML mapping file >>> > > 5) Wiring the new parsers into the existing code path. >>> > > >>> > >>> > I understood the above steps more after going through the spec & >>> resources. >>> > >>> > Currently I'm continuing with the spec and samples. I would like to >>> read >>> > more details about the custom annotations of OpenJPA. It'll be great if >>> you >>> > can provide any related resources, if available. >>> > >>> > >>> > Thanks, >>> > ~Umashanthi >>> > >>> > >>> > > >>> > > I think this would make a good SoC project because: >>> > > >>> > > 1) The work is well defined and fairly self contained. >>> > > 2) It would be a good experience in adding additional capabilities to >>> a >>> > > mature piece of software. >>> > > 3) It wouldn't require spending much/any time trying to understand >>> > OpenJPA >>> > > internals - which can be very time consuming. Instead, you'll be >>> > learning >>> > > about JPA and OpenJPA's powerful extensions - especially by learning >>> what >>> > > the extensions do and writing jUnits to test the capability via XML >>> > > mappings. >>> > > 4) This activity can be ongoing. Not all extensions need to be >>> > immediately >>> > > available. Once the base framework is available, incomplete >>> extensions >>> > can >>> > > be added in the future. (ie. this effort does not have to be fully >>> > > complete by the end of the SoC in order to be beneficial) >>> > > >>> > > Here are some links to the annotation extensions in JavaDoc: >>> > > >>> > > >>> > > >>> > >>> http://openjpa.apache.org/builds/latest/docs/javadoc/org/apache/openjpa/persistence/package-summary.html- >>> > > Annotation Types Summary section >>> > > >>> > > >>> > > >>> > >>> http://openjpa.apache.org/builds/latest/docs/javadoc/org/apache/openjpa/persistence/jdbc/package-summary.html- >>> > > Annotation Types Summary section >>> > > >>> > > If you are interested, I'd be happy to send you additional >>> information to >>> > > help you make a better evaluation and/or get started. >>> > > >>> > > -Jeremy >>> > > >>> > > [1] http://openjpa.apache.org/quick-start.html >>> > > >>> > > On Sun, Jan 30, 2011 at 2:53 AM, Umashanthi Pavalanathan < >>> > > [email protected]> wrote: >>> > > >>> > > > Hi devs, >>> > > > >>> > > > I am an undergraduate student interested in contributing to OpenJPA >>> and >>> > > > would like to know whether you have any ideas for Google Summer of >>> Code >>> > > > 2011. >>> > > > >>> > > > I have checked out the source code and successfully built it with >>> the >>> > > help >>> > > > of Mark. Currently I am in the process of studying the Java >>> Persistence >>> > > API >>> > > > using the OpenJPA user guide. Any suggestions and links to >>> resources >>> > that >>> > > > would help me understand the concepts and get started with OpenJPA? >>> > > > >>> > > > >>> > > > Thanks in advance, >>> > > > ~Umashanthi >>> > > > >>> > > >>> > >>> >> >> >
