2. Extensibility of OpenJPA via ProductDerivation
Primary modifications are
a) The configuration information resources are located/parsed/loaded via dynamically discovered ProductDerivation services
(instead of ConfigurationProviders). ConfigurationProvider is not enlisted as a service any more.
b) Tools are modified to use ProductDerivations instead of Configurations
c) ProductDerivation has moved to lib from kernel.
d) ProductDerivation types that are STORE specific are no more defined in lib version.
OpenJPAProductDerivation in kernel package defines them. The type constants have holes.
e) One test is modified
f) pom.xml is modified as ProductDerivation has moved to lib from kernel
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@447664 13f79535-47bb-0310-9956-ffa450edef68
persistence.xml when no explicit configuration is given to dev tools. Do this
in a backwards-compatible way that won't break previous behavior or other facade
behavior (JDO). This means you should no longer have to pass
"-p persistence.xml" to tools like the enhancer, nor should you have to specify
a properties argument to the PCEnhancerAgent in the premain for runtime
enhancement.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@430897 13f79535-47bb-0310-9956-ffa450edef68
information is immutable within a fetch instance and cloned on relation
traversal, it was safe to combine fetch state back into the fetch configuration
class and remove the fetch state class for cleaner APIs (no more having some
components use fetch state and others fetch configuration). Also changed
recursion depth logic to more accurately mirror intent (per JDO spec), though
testing is needed.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@426710 13f79535-47bb-0310-9956-ffa450edef68