[ 
https://issues.apache.org/jira/browse/ISIS-2270?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17020216#comment-17020216
 ] 

ASF subversion and git services commented on ISIS-2270:
-------------------------------------------------------

Commit 4d6e3ed63fb8c7f21a6b12ba89d3cecb20c83150 in isis's branch 
refs/heads/master from Andi Huber
[ https://gitbox.apache.org/repos/asf?p=isis.git;h=4d6e3ed ]

ISIS-2270: polishing FactoryService#get

- possibly shared or independent but required to resolvable uniquely

> Rethink, who shall manage Lifecycles of DomainObjects, ViewModels and Mixins
> ----------------------------------------------------------------------------
>
>                 Key: ISIS-2270
>                 URL: https://issues.apache.org/jira/browse/ISIS-2270
>             Project: Isis
>          Issue Type: Improvement
>            Reporter: Daniel Keir Haywood
>            Assignee: Andi Huber
>            Priority: Minor
>             Fix For: 2.0.0
>
>
> 1) Document and annotate @DomainObject, @ViewModel and @Mixin with 
> @Scope(SCOPE_PROTOTYPE)
> 2) FactoryService#instantiate needs a semantic update
> We want Spring to discover these types from the classpath (so that we can 
> build the metamodel eagerly), but we don't want it to manage them, or do we?
> Using @Scope(PROTOTYPE) is the closest we can come to expressing that without 
> (attempting to) define a custom scope for each of these three types., 
> analogous to factoryService#instantiate for transient objects.
> In practical terms, inventing a custom "entity" scope is probably impossible 
> due to DN's design (the enhancer creates a dnNewInstance method and this is 
> called upon as a factory).
> Instead, then, we "veto" any of these domain types so that Spring is NOT 
> allowed to instantiate any of them.
> The docs should be updated to explain what we're doing here.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to