My first reaction is please don’t. I would really like to see that the
amount of annotations needed on an entity or service is the absolute
minimum.

 In other words: sensible defaults that ‘just work’ and annotations when
needed.

Reserved words can make the framework harder to grasp as well? It would me
nice to bring the amount of concepts to works with also down to the bare
minimum.

Grtz,

Johan

On Wed, 4 Dec 2019 at 11:44, Dan Haywood <d...@haywood-associates.co.uk>
wrote:

> Hi folks,
>
> Canvassing opinions here.
>
> Andi and I are still hard at work on v2.0.  We've been chatting offline
> about the @Action annotation.  Currently this is optional, but there's a
> config property (isis.reflector.explicit-annotations.action) that can be
> set to require it to be required.
>
> If it's required, then it allows actions that start with a "reserved" word,
> such as "clear", "disable" and "addTo" to be used as action names.
>
> What do folks think about this?  Obviously it means there's more effort to
> migrate to v2.0, but is it a worthwhile trade-off.
>
> A couple of follow-on questions.
>
> First, if we make @Action mandatory, should we do the same for @Property
> and @Collection?
>
> Second, if we are being explicit about the "main" methods, should we also
> annotate supporting methods?  There was an earlier discussion about this,
> where Andi had suggested a @Model annotation, the semantic opposite
> of @Programmatic.  I prefer the name @Supporting, but at any rate the idea
> is that the developer would annotate all supporting methods, and the
> framework would then be able to ensure that none had become orphaned.
>
> So, to summarise, what do we think about:
> - @Action mandatory
> - @Property and @Collection also mandatory
> - @Supporting as an indicator of any supporting method, to make part of the
> metamodel and ensure not orphaned?
>
> Thanks
>

Reply via email to