[
https://issues.apache.org/jira/browse/ISIS-274?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dan Haywood updated ISIS-274:
-----------------------------
Description:
Currently there is a number of settings in isis.properties whose values is
pretty much determined by the configured persistor/object store. Most notable
examples included the class substitutor and the object factory, where cglib
versions are configured for most persistors (for lazy loading), but is not
configured for the JDO object store (that leverages the built-in lazy loading
of DataNucleus).
This ticket is to remove some of these configuration settings, and instead
arrange things such that selecting the persistor automatically configures these
components.
In particular, that means removing:
1. isis.reflector.class-substitutor
(with the default being
org.apache.isis.runtimes.dflt.bytecode.dflt.classsubstitutor.CglibClassSubstitutor
for most object stores, overridden by the JDO object store)
2. isis.persistor.identifier-generator
(with the default already being overridden by all object stores)
3. isis.persistor.object-factory
(with the default being
org.apache.isis.runtimes.dflt.bytecode.dflt.objectfactory.CglibObjectFactory
for most object stores, overridden by the JDO object store)
4. isis.persistor.services-injector
(with the default being ServicesInjectorDefault; there are no other
implementations.)
5. isis.persistor.adapter-factory
(with the default being PojoAdapterFactory; there are no other implementations.)
At the same time, persistor/object stores sometimes have a requirement to
install their own FacetFactories and/or MetaModelValidators. So this ticket is
also to provide a mechanism such that a persistor can "refine" the metamodel.
was:
Currently there is a number of settings in isis.properties whose values is
pretty much determined by the configured persistor/object store. Most notable
examples included the class substitutor and the object factory, where cglib
versions are configured for most persistors (for lazy loading), but is not
configured for the JDO object store (that leverages the built-in lazy loading
of DataNucleus).
This ticket is to remove some of these configuration settings, and instead
arrange things such that selecting the persistor automatically configures these
components.
In particular, that means removing:
1. isis.reflector.class-substitutor
(with the default being
org.apache.isis.runtimes.dflt.bytecode.dflt.classsubstitutor.CglibClassSubstitutor
for most object stores, overridden by the JDO object store)
2. isis.persistor.identifier-generator
(with the default already being overridden by all object stores)
3. isis.persistor.object-factory
(with the default being
org.apache.isis.runtimes.dflt.bytecode.dflt.objectfactory.CglibObjectFactory
for most object stores, overridden by the JDO object store)
4. isis.persistor.services-injector
with the default being ServicesInjectorDefault; there are no other
implementations.
5. isis.persistor.adapter-factory
with the default being PojoAdapterFactory; there are no other implementations.
> Simplify the bootstrapping of Isis so that there are fewer configuration
> properties to set in isis.properties
> -------------------------------------------------------------------------------------------------------------
>
> Key: ISIS-274
> URL: https://issues.apache.org/jira/browse/ISIS-274
> Project: Isis
> Issue Type: Improvement
> Affects Versions: 0.2.0-incubating
> Reporter: Dan Haywood
> Fix For: 0.3.1-incubating
>
>
> Currently there is a number of settings in isis.properties whose values is
> pretty much determined by the configured persistor/object store. Most
> notable examples included the class substitutor and the object factory, where
> cglib versions are configured for most persistors (for lazy loading), but is
> not configured for the JDO object store (that leverages the built-in lazy
> loading of DataNucleus).
> This ticket is to remove some of these configuration settings, and instead
> arrange things such that selecting the persistor automatically configures
> these components.
> In particular, that means removing:
> 1. isis.reflector.class-substitutor
> (with the default being
> org.apache.isis.runtimes.dflt.bytecode.dflt.classsubstitutor.CglibClassSubstitutor
> for most object stores, overridden by the JDO object store)
> 2. isis.persistor.identifier-generator
> (with the default already being overridden by all object stores)
> 3. isis.persistor.object-factory
> (with the default being
> org.apache.isis.runtimes.dflt.bytecode.dflt.objectfactory.CglibObjectFactory
> for most object stores, overridden by the JDO object store)
> 4. isis.persistor.services-injector
> (with the default being ServicesInjectorDefault; there are no other
> implementations.)
> 5. isis.persistor.adapter-factory
> (with the default being PojoAdapterFactory; there are no other
> implementations.)
> At the same time, persistor/object stores sometimes have a requirement to
> install their own FacetFactories and/or MetaModelValidators. So this ticket
> is also to provide a mechanism such that a persistor can "refine" the
> metamodel.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira