[jira] [Commented] (ISIS-2033) IoC Container Integration
[ https://issues.apache.org/jira/browse/ISIS-2033?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16724749#comment-16724749 ] ASF subversion and git services commented on ISIS-2033: --- Commit 2d891c2b2374894cc08834b77725d2e317327116 in isis's branch refs/heads/v2 from Andi Huber [ https://gitbox.apache.org/repos/asf?p=isis.git;h=2d891c2 ] ISIS-2033: refine IsisContext.getSessionFactory() to support testing Task-Url: https://issues.apache.org/jira/browse/ISIS-2033 > IoC Container Integration > - > > Key: ISIS-2033 > URL: https://issues.apache.org/jira/browse/ISIS-2033 > Project: Isis > Issue Type: Task >Reporter: Andi Huber >Assignee: Andi Huber >Priority: Major > Fix For: 2.0.0 > > > Dan and I discussed an idea, where there could be a way for the framework to > no longer 'care' about the persistence layer, session handling and event > handling. Instead delegating this responsibility to an IoC Container. With > that have all the domain objects being managed by the container and no longer > care about domain-object's life-cycles. > Candidates being Spring and JEE. > Some inspiring videos (Spring) ... > [1] [https://www.youtube.com/watch?v=aA4tfBGY6jY] > [2] [https://www.youtube.com/watch?v=jDchAEHIht0] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2033) IoC Container Integration
[ https://issues.apache.org/jira/browse/ISIS-2033?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16724748#comment-16724748 ] ASF subversion and git services commented on ISIS-2033: --- Commit 2d891c2b2374894cc08834b77725d2e317327116 in isis's branch refs/heads/v2 from Andi Huber [ https://gitbox.apache.org/repos/asf?p=isis.git;h=2d891c2 ] ISIS-2033: refine IsisContext.getSessionFactory() to support testing Task-Url: https://issues.apache.org/jira/browse/ISIS-2033 > IoC Container Integration > - > > Key: ISIS-2033 > URL: https://issues.apache.org/jira/browse/ISIS-2033 > Project: Isis > Issue Type: Task >Reporter: Andi Huber >Assignee: Andi Huber >Priority: Major > Fix For: 2.0.0 > > > Dan and I discussed an idea, where there could be a way for the framework to > no longer 'care' about the persistence layer, session handling and event > handling. Instead delegating this responsibility to an IoC Container. With > that have all the domain objects being managed by the container and no longer > care about domain-object's life-cycles. > Candidates being Spring and JEE. > Some inspiring videos (Spring) ... > [1] [https://www.youtube.com/watch?v=aA4tfBGY6jY] > [2] [https://www.youtube.com/watch?v=jDchAEHIht0] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2033) IoC Container Integration
[ https://issues.apache.org/jira/browse/ISIS-2033?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16724740#comment-16724740 ] ASF subversion and git services commented on ISIS-2033: --- Commit 08896e1cb000c75d7fe7bd2e630b48ce66e58032 in isis's branch refs/heads/v2 from Andi Huber [ https://gitbox.apache.org/repos/asf?p=isis.git;h=08896e1 ] ISIS-2033: proper support for CDI lifecycle Task-Url: https://issues.apache.org/jira/browse/ISIS-2033 > IoC Container Integration > - > > Key: ISIS-2033 > URL: https://issues.apache.org/jira/browse/ISIS-2033 > Project: Isis > Issue Type: Task >Reporter: Andi Huber >Assignee: Andi Huber >Priority: Major > Fix For: 2.0.0 > > > Dan and I discussed an idea, where there could be a way for the framework to > no longer 'care' about the persistence layer, session handling and event > handling. Instead delegating this responsibility to an IoC Container. With > that have all the domain objects being managed by the container and no longer > care about domain-object's life-cycles. > Candidates being Spring and JEE. > Some inspiring videos (Spring) ... > [1] [https://www.youtube.com/watch?v=aA4tfBGY6jY] > [2] [https://www.youtube.com/watch?v=jDchAEHIht0] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2033) IoC Container Integration
[ https://issues.apache.org/jira/browse/ISIS-2033?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16724739#comment-16724739 ] ASF subversion and git services commented on ISIS-2033: --- Commit 08896e1cb000c75d7fe7bd2e630b48ce66e58032 in isis's branch refs/heads/v2 from Andi Huber [ https://gitbox.apache.org/repos/asf?p=isis.git;h=08896e1 ] ISIS-2033: proper support for CDI lifecycle Task-Url: https://issues.apache.org/jira/browse/ISIS-2033 > IoC Container Integration > - > > Key: ISIS-2033 > URL: https://issues.apache.org/jira/browse/ISIS-2033 > Project: Isis > Issue Type: Task >Reporter: Andi Huber >Assignee: Andi Huber >Priority: Major > Fix For: 2.0.0 > > > Dan and I discussed an idea, where there could be a way for the framework to > no longer 'care' about the persistence layer, session handling and event > handling. Instead delegating this responsibility to an IoC Container. With > that have all the domain objects being managed by the container and no longer > care about domain-object's life-cycles. > Candidates being Spring and JEE. > Some inspiring videos (Spring) ... > [1] [https://www.youtube.com/watch?v=aA4tfBGY6jY] > [2] [https://www.youtube.com/watch?v=jDchAEHIht0] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2033) IoC Container Integration
[ https://issues.apache.org/jira/browse/ISIS-2033?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16724495#comment-16724495 ] ASF subversion and git services commented on ISIS-2033: --- Commit 26f5fac3e7e2e4d298b47a71a823c814ea3f33ca in isis's branch refs/heads/v2 from Andi Huber [ https://gitbox.apache.org/repos/asf?p=isis.git;h=26f5fac ] ISIS-2033: remove AppManifestProvider interface and do some cleanup Task-Url: https://issues.apache.org/jira/browse/ISIS-2033 > IoC Container Integration > - > > Key: ISIS-2033 > URL: https://issues.apache.org/jira/browse/ISIS-2033 > Project: Isis > Issue Type: Task >Reporter: Andi Huber >Assignee: Andi Huber >Priority: Major > Fix For: 2.0.0 > > > Dan and I discussed an idea, where there could be a way for the framework to > no longer 'care' about the persistence layer, session handling and event > handling. Instead delegating this responsibility to an IoC Container. With > that have all the domain objects being managed by the container and no longer > care about domain-object's life-cycles. > Candidates being Spring and JEE. > Some inspiring videos (Spring) ... > [1] [https://www.youtube.com/watch?v=aA4tfBGY6jY] > [2] [https://www.youtube.com/watch?v=jDchAEHIht0] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2033) IoC Container Integration
[ https://issues.apache.org/jira/browse/ISIS-2033?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16724496#comment-16724496 ] ASF subversion and git services commented on ISIS-2033: --- Commit 26f5fac3e7e2e4d298b47a71a823c814ea3f33ca in isis's branch refs/heads/v2 from Andi Huber [ https://gitbox.apache.org/repos/asf?p=isis.git;h=26f5fac ] ISIS-2033: remove AppManifestProvider interface and do some cleanup Task-Url: https://issues.apache.org/jira/browse/ISIS-2033 > IoC Container Integration > - > > Key: ISIS-2033 > URL: https://issues.apache.org/jira/browse/ISIS-2033 > Project: Isis > Issue Type: Task >Reporter: Andi Huber >Assignee: Andi Huber >Priority: Major > Fix For: 2.0.0 > > > Dan and I discussed an idea, where there could be a way for the framework to > no longer 'care' about the persistence layer, session handling and event > handling. Instead delegating this responsibility to an IoC Container. With > that have all the domain objects being managed by the container and no longer > care about domain-object's life-cycles. > Candidates being Spring and JEE. > Some inspiring videos (Spring) ... > [1] [https://www.youtube.com/watch?v=aA4tfBGY6jY] > [2] [https://www.youtube.com/watch?v=jDchAEHIht0] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-1927) Invoking an action returning a non-null Blob via RO results in exception
[ https://issues.apache.org/jira/browse/ISIS-1927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16724245#comment-16724245 ] Jörg Rade commented on ISIS-1927: - With 1.16.2 when: {code:java} $ curl -H "Content-Type: application/json" -d @input.json -u jenkins:pass http://localhost:8080/restful/services/ife.cfg.vm.Checks/actions/checkNewEndpoints/invoke -o output.json{code} where input json is: {code:java} { "applicationName": { "value": "SALOG" }, "applicationVersion": { "value": "3.12.5.10" } }{code} and Checks.checkNewEndpoints is: {code:java} @Action(semantics = SemanticsOf.SAFE) @ActionLayout(cssClassFa = "bolt", describedAs = "Check if WS endpoints and JMS topics of new release exist") public String checkNewEndpoints( @ParameterLayout(named = "Application Name") String appName, @ParameterLayout(named = "Application Version") String appVersion) { applicationReader.init(); final Stage stage = stages.findOrCreate(Constants.PROD); final Application application = applications.findByName(appName); final Configuration oldConfig = configurations.importApplicationStage(application, stage); final Configuration newConfig = configurations.importApplicationVersion(application, appVersion); final ReleaseComparison dashboard = releaseComparisons.create(oldConfig.getRelease(), newConfig.getRelease()); SortedSet epList = serviceComparisons.checkNewEndpoints(dashboard); return toString(epList); }{code} then output.json is: {code} { "httpStatusCode": 500, "message": "objectAdapter must be a root adapter", "detail": { "className": "java.lang.IllegalArgumentException", "message": "objectAdapter must be a root adapter", "element": [ "org.apache.isis.viewer.restfulobjects.rendering.util.OidUtils.getOidStr(OidUtils.java:52)", "org.apache.isis.viewer.restfulobjects.rendering.util.OidUtils.getInstanceId(OidUtils.java:43)", "org.apache.isis.viewer.restfulobjects.rendering.domainobjects.DomainObjectReprRenderer.getInstanceId(DomainObjectReprRenderer.java:250)", "org.apache.isis.viewer.restfulobjects.rendering.domainobjects.DomainObjectReprRenderer.render(DomainObjectReprRenderer.java:160)", "org.apache.isis.viewer.restfulobjects.rendering.Responses.ofOk(Responses.java:82)", "org.apache.isis.viewer.restfulobjects.rendering.Responses.ofOk(Responses.java:63)", "org.apache.isis.viewer.restfulobjects.rendering.service.conneg.ContentNegotiationServiceForRestfulObjectsV1_0.buildResponseTo(ContentNegotiationServiceForRestfulObjectsV1_0.java:105)", "org.apache.isis.viewer.restfulobjects.rendering.service.conneg.ContentNegotiationServiceForRestfulObjectsV1_0.buildResponse(ContentNegotiationServiceForRestfulObjectsV1_0.java:86)", "org.apache.isis.viewer.restfulobjects.rendering.service.conneg.ContentNegotiationServiceForRestfulObjectsV1_0.buildResponse(ContentNegotiationServiceForRestfulObjectsV1_0.java:228)", "org.apache.isis.viewer.restfulobjects.rendering.service.RepresentationServiceContentNegotiator$5.apply(RepresentationServiceContentNegotiator.java:157)", "org.apache.isis.viewer.restfulobjects.rendering.service.RepresentationServiceContentNegotiator$5.apply(RepresentationServiceContentNegotiator.java:154)", "org.apache.isis.viewer.restfulobjects.rendering.service.RepresentationServiceContentNegotiator.buildResponse(RepresentationServiceContentNegotiator.java:195)", "org.apache.isis.viewer.restfulobjects.rendering.service.RepresentationServiceContentNegotiator.actionResult(RepresentationServiceContentNegotiator.java:154)", "org.apache.isis.viewer.restfulobjects.server.resources.DomainResourceHelper.invokeActionUsingAdapters(DomainResourceHelper.java:379)", "org.apache.isis.viewer.restfulobjects.server.resources.DomainResourceHelper.invokeAction(DomainResourceHelper.java:351)", "org.apache.isis.viewer.restfulobjects.server.resources.DomainServiceResourceServerside.invokeAction(DomainServiceResourceServerside.java:263)", "sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)", "sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)", "sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)", "java.lang.reflect.Method.invoke(Method.java:498)", "org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:140)",
[jira] [Created] (ISIS-2051) Amend ugrov
Jörg Rade created ISIS-2051: --- Summary: Amend ugrov Key: ISIS-2051 URL: https://issues.apache.org/jira/browse/ISIS-2051 Project: Isis Issue Type: Documentation Reporter: Jörg Rade Attachments: _ugvro_hints-and-tips_troubleshooting.adoc Attachment contains adoc formatted example, in short: Exception: 'com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions' Solution: Add @XmlAccessorType(XmlAccessType.FIELD) to your domain entity -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (ISIS-2051) Amend ugrov
[ https://issues.apache.org/jira/browse/ISIS-2051?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jörg Rade updated ISIS-2051: Fix Version/s: 1.16.3 > Amend ugrov > > > Key: ISIS-2051 > URL: https://issues.apache.org/jira/browse/ISIS-2051 > Project: Isis > Issue Type: Documentation >Affects Versions: 1.16.2 >Reporter: Jörg Rade >Priority: Trivial > Fix For: 1.16.3 > > Attachments: _ugvro_hints-and-tips_troubleshooting.adoc > > > Attachment contains adoc formatted example, in short: > Exception: > 'com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of > IllegalAnnotationExceptions' > Solution: > Add @XmlAccessorType(XmlAccessType.FIELD) to your domain entity -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (ISIS-2051) Amend ugrov
[ https://issues.apache.org/jira/browse/ISIS-2051?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jörg Rade updated ISIS-2051: Affects Version/s: 1.16.2 > Amend ugrov > > > Key: ISIS-2051 > URL: https://issues.apache.org/jira/browse/ISIS-2051 > Project: Isis > Issue Type: Documentation >Affects Versions: 1.16.2 >Reporter: Jörg Rade >Priority: Trivial > Fix For: 1.16.3 > > Attachments: _ugvro_hints-and-tips_troubleshooting.adoc > > > Attachment contains adoc formatted example, in short: > Exception: > 'com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of > IllegalAnnotationExceptions' > Solution: > Add @XmlAccessorType(XmlAccessType.FIELD) to your domain entity -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723816#comment-16723816 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723813#comment-16723813 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723822#comment-16723822 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723810#comment-16723810 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723814#comment-16723814 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723819#comment-16723819 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723820#comment-16723820 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723824#comment-16723824 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723821#comment-16723821 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723808#comment-16723808 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723823#comment-16723823 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723812#comment-16723812 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723811#comment-16723811 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723825#comment-16723825 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723818#comment-16723818 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723817#comment-16723817 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723807#comment-16723807 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723809#comment-16723809 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723806#comment-16723806 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723805#comment-16723805 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723804#comment-16723804 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723803#comment-16723803 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723815#comment-16723815 ] ASF subversion and git services commented on ISIS-2050: --- Commit c29c565cdd45a0a56c481f5fe1cd882285309fd3 in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c29c565 ] ISIS-2050: reworks order and depth of introspection. Squashed from previous commits: ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class ISIS-2050: only contribute to entities and view models; improves MetaModel exporter to also dump out the facets of any "discovered" domain types. ISIS-2050: load specs only to TYPE (not MEMBERS) everywhere; only adds described as facet (derived from type) if is do-op. ISIS-2050: fixes for unit tests and reorder introspection slightly in order to fix lockdown ISIS-2050: adds ValueFacet for Joda LocalTime Uses a very simple implementation, because I suspect that the other capabilities of ValueFacet simply aren't needed anymore... ISIS-2050: - removes contributingDomainServiceTypes from AppManifest.Registry once more ... will just eagerly introspect type and members for all domain services - fixes introspectUpTo algorithm - skip type hierarchy traversal for domain services with natureOfService=DOMAIN - improves/reduces logging - lazily introspect up to type and members whenever any of the members (properties/collections/actions) are referenced of an ObjectSpecAbstract ISIS-2050: introduces config property to enable/disable full introspection of metamodel If disabled, then metamodel validation is skipped ISIS-2050: moves introspectObjectSpecId() so called directly from constructor of ObjectSpec. ISIS-2050: postProcessor now called by ObjectSpecAbstract after fully introspected, rather than by SpecificationLoader ISIS-2050: passes PostProcessor into ObjectSpecificationAbstract's constructor ISIS-2050: scales back the depth of introspection when introspecting members - only need to introspect the type for parameters and return types. ISIS-2050: removes SpecificationLoader#state; now responsibility of each ObjectSpecification to keep track of its own introspectionState. ISIS-2050: eagerly introspects contributing specs, lazily introspecs the remainder. ISIS-2050: updates AppManifest.Registry to also hold all contributingDomainServiceTypes This is so that we can eagerly build the ObjectSpecs for these types and mixins, but leave everything else to be built lazily. ISIS-2050: when traversing type hierarchy, now only introspect super types up to the TYPE, not their MEMBERs as well. ISIS-2050: renames two of the IntrospectionStates ISIS-2050: pulls upTo introspectionState into a parameter for all of SpecificationLoaders methods ... so that the caller can decide the level of introspection that needs to be performed. ISIS-2050: extends IntrospectionState with additional states for type vs member introspection; inlining methods to simplify ... with the aim of exposing the IntrospectionState upTo so can pass through and honour the phases. Removed the guards in introspectTypeHierarchy, don't think they are needed any more since only ever called from its caller which checks the introspectionState anyway ISIS-2050: breaks out introspectTypeHierarchyAndMembers into two. ISIS-2050: replaces IntrospectionStrategy with the concept of introspecting "up to" a certain state. ISIS-2050: refactors responsibilities of SpecLoader vs ObjectSpec just the management of introspectionState on ObjectSpec ISIS-2050: introduces ObjectSpecIdFacetFactory and additional process(ProcessObjectSpecIdContext) for FacetProcessor > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ISIS-2050) Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so can be cached.
[ https://issues.apache.org/jira/browse/ISIS-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16723800#comment-16723800 ] ASF subversion and git services commented on ISIS-2050: --- Commit c6b231e30e2c771b50954810f5569874e2d7bd6f in isis's branch refs/heads/ISIS-2050 from danhaywood [ https://gitbox.apache.org/repos/asf?p=isis.git;h=c6b231e ] ISIS-2050: uses simpler overload that defaults IntrospectionState to TYPE_INTROSPECTED. Also introduces overload for className as well as Class > Install ObjectSpecIdFacet immediately on creation of ObjectSpecification so > can be cached. > -- > > Key: ISIS-2050 > URL: https://issues.apache.org/jira/browse/ISIS-2050 > Project: Isis > Issue Type: Improvement >Affects Versions: 1.16.2 >Reporter: Dan Haywood >Assignee: Dan Haywood >Priority: Minor > Fix For: 1.16.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)