You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@isis.apache.org by "Dan Haywood (JIRA)" <ji...@apache.org> on 2012/10/08 19:50:02 UTC

[jira] [Created] (ISIS-274) Simplify the bootstrapping of Isis so that there are fewer configuration properties to set in isis.properties

Dan Haywood created ISIS-274:
--------------------------------

             Summary: 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.



--
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

[jira] [Assigned] (ISIS-274) Simplify the bootstrapping of Isis so that there are fewer configuration properties to set in isis.properties

Posted by "Dan Haywood (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ISIS-274?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dan Haywood reassigned ISIS-274:
--------------------------------

    Assignee: Dan Haywood
    
> 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
>            Assignee: 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

Re: JAX London

Posted by Dan Haywood <da...@haywood-associates.co.uk>.
Hi Mike,
No, sorry... gonna be out of the country.
Catch you later
Dan

On 15 October 2012 10:25, Mike Burton <mi...@mycosystems.co.uk> wrote:

> Is anyone here going to JAX London tomorrow 16 Oct?
> I can't make the day but will be at the evening session:
> http://www.meetup.com/Londonjavacommunity/events/80218252/
>
> Mike Burton
>
>
> On 9 Oct 2012, at 20:10, Dan Haywood (JIRA) <ji...@apache.org> wrote:
>
> >
> >     [
> https://issues.apache.org/jira/browse/ISIS-274?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel]
> >
> > Dan Haywood resolved ISIS-274.
> > ------------------------------
> >
> >    Resolution: Fixed
> >
> >> 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
> >>           Assignee: 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
>
>

JAX London

Posted by Mike Burton <mi...@mycosystems.co.uk>.
Is anyone here going to JAX London tomorrow 16 Oct?
I can't make the day but will be at the evening session: http://www.meetup.com/Londonjavacommunity/events/80218252/

Mike Burton


On 9 Oct 2012, at 20:10, Dan Haywood (JIRA) <ji...@apache.org> wrote:

> 
>     [ https://issues.apache.org/jira/browse/ISIS-274?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
> 
> Dan Haywood resolved ISIS-274.
> ------------------------------
> 
>    Resolution: Fixed
> 
>> 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
>>           Assignee: 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


[jira] [Resolved] (ISIS-274) Simplify the bootstrapping of Isis so that there are fewer configuration properties to set in isis.properties

Posted by "Dan Haywood (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ISIS-274?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dan Haywood resolved ISIS-274.
------------------------------

    Resolution: Fixed
    
> 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
>            Assignee: 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

[jira] [Updated] (ISIS-274) Simplify the bootstrapping of Isis so that there are fewer configuration properties to set in isis.properties

Posted by "Dan Haywood (JIRA)" <ji...@apache.org>.
     [ 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

[jira] [Commented] (ISIS-274) Simplify the bootstrapping of Isis so that there are fewer configuration properties to set in isis.properties

Posted by "Dan Haywood (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ISIS-274?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13471738#comment-13471738 ] 

Dan Haywood commented on ISIS-274:
----------------------------------

The API I've come up with for the refining of the metamodel is:

/**
 * Provides the ability for components to inform/alter/adjust/refine the metamodel.
 */
public interface MetaModelRefiner {

    ClassSubstitutor createClassSubstitutor(IsisConfiguration configuration);
    MetaModelValidator refineMetaModelValidator(MetaModelValidatorComposite baseMetaModelValidator, IsisConfiguration configuration);
    ProgrammingModel refineProgrammingModel(ProgrammingModel baseProgrammingModel, IsisConfiguration configuration);
   
}

This is now implemented by the PersistenceMechanismInstaller.  In theory, it could also be implemented by other components, eg the FileAuthorizor (in order to install the appropriate FacetFactorys to enable authorization).


                
> 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

[jira] [Commented] (ISIS-274) Simplify the bootstrapping of Isis so that there are fewer configuration properties to set in isis.properties

Posted by "Dan Haywood (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ISIS-274?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13472634#comment-13472634 ] 

Dan Haywood commented on ISIS-274:
----------------------------------

AuthenticationManager and AuthorizationManager are also now implementors of MetaModelRefiner (though have pulled createClassSubstitutor out into a separate interface implemented only by PersistenceMechanismInstaller).
                
> 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
>            Assignee: 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