isis-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jayesh Prajapati <jayesh...@gmail.com>
Subject Re: v2 - explicit vs implicit annotations
Date Fri, 28 Dec 2018 12:53:18 GMT
Hi Dan

I agree with both the options and would also be great if these can be
configurable at xml file level.

Having said this, based on my experience too many configurations are not
good mainly because ...
... 1) Annotation guide is for advance users, meaning newbees will find it
difficult
... 2) During deployment extreme cares are required because usually
deployment are done by technical operations who are not familiar with such
settings

I will share more thoughts about such settings/config management at UI
level.


On Fri, Dec 28, 2018, 17:18 Dan Haywood <dan@haywood-associates.co.uk wrote:

> Submodules - yes, that's a good point, I hadn't considered that at all.
>
> I suppose it also makes sense to be able to specify using the Module
> interface as well, to create some sort of search hierarchy : class ->
> module -> global.
>
> But perhaps one step at a time.
>
> Thx!
> Dan
>
> On Fri, 28 Dec 2018 at 11:27, Patrick Pliessnig <p.pliessnig@gmx.net>
> wrote:
>
> > Hi Dan
> >
> > In a reuse scenario a local configuration of the annotation property is
> > certainly useful. I guess that if you want to integrate an existing
> > subdomain module into a destination application, a configuration
> > property at the class or module level could ease the job.
> >
> > Patrick
> >
> >
> > Am 28.12.2018 um 11:54 schrieb Dan Haywood:
> > > Hi folks,
> > >
> > > ... and happy holidays!
> > >
> > > 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?
> > >
> > > Thx
> > > Dan
> > >
> >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message