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