[ 
https://issues.apache.org/jira/browse/ISIS-2064?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andi Huber closed ISIS-2064.
----------------------------
    Resolution: Fixed

provided via 
{code:java}
@DomainObject(introspection=...)
{code}


> Allow explicit vs implicit metamodel discovery to be specified with 
> @DomainObject
> ---------------------------------------------------------------------------------
>
>                 Key: ISIS-2064
>                 URL: https://issues.apache.org/jira/browse/ISIS-2064
>             Project: Isis
>          Issue Type: New Feature
>          Components: Isis Applib (programming model)
>            Reporter: Daniel Keir Haywood
>            Priority: Minor
>
> as per dev mailing list
> [https://lists.apache.org/thread.html/9d766b4e43079f81d1a72c9a78be9f78f65433cb92288394b7f195df@%3Cusers.isis.apache.org%3E]
>  
> We currently have the configuration property 
> "isis.reflector.explicitAnnotations.action" which if specified requires 
> @Action to be added as an annotation for all public methods that don't 
> represent properties/collections or supporting methods.  If this is enabled 
> then there's generally no need to annotate public methods that aren't meant 
> to be in the metamodel with the @Programmatic annotation.
>   
>  Andi and I have just been discussing this (off-list) and wondering if we 
> should extend this in v2.  Our idea is maybe to allow this to be specified at 
> the class level, and to also have three levels rather than two:
>   
>  - explicit : all properties, collections and actions must be annotated
>  - actions : actions must be annotated, but properties and collections need 
> not.  This is the behavior if the above configuration property is specified.
>  - implicit : no annotations are required.  This is the current default
>   
>  So, we were thinking to add a value to @DomainObject, eg
>   
>  @DomainObject(metamodelDiscoveryStrategy = EXPLICIT | ACTIONS | IMPLICIT | 
> AS_CONFIGURED)
>   
>  where "AS_CONFIGURED" would read a new configuration property that would 
> take these three values (replacing the existing 
> "isis.reflector.explicitAnnotations.action".
>   
>  Two questions:
>   
>  1. is the idea of a new level to explicitly annotate everything (properties 
> and collections as well as actions) useful ?
>  2. is there a need to configure this on a class-by-class basis, or is a 
> global configuration property sufficient?



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to