Hi, The primary purpose of enhancement is to intercept access/mutation of persistent state of a persistent entity, and delegate these invocations to a StateManager interface. The basic interaction pattern is a contract defined between PersistenceCapable & StateManager interface. The core contract of enhancement had arisen of Java Data Object (JDO) [1] -- a object persistence specification in JCP (JSR-243). The access/mutation logic refers the persistent fields by integral index for efficiency -- and this indexing is assigned on the fields while ClassMetaData for a entity class is being generated by OpenJPA. Consider ClassMetaData as something equivalent to java.lang.Class adorned/augmented with more meta-level information for internal processing (such as field indexing). Besides access/mutation, enhancer also adds methods to create new instance of the entity class, methods that perform serialization/deserialization like behavior and so on.
[1] http://java.sun.com/jdo/ David Goodenough-3 wrote: > > I realise that these methods are not part of JPA, and are not safe for > users > to call, but other than the source code that adds them, is there any > documentation for these methods, saying what they are, what they do and > what assumptions they make? > > David > > ----- Pinaki -- View this message in context: http://n2.nabble.com/Is-the-any-documentation-for-the-methods-added-by-enhancement--tp3155198p3175177.html Sent from the OpenJPA Users mailing list archive at Nabble.com.
