[
https://issues.apache.org/jira/browse/ISIS-844?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dan Haywood updated ISIS-844:
-----------------------------
Fix Version/s: (was: core-2.0.0)
core-1.10.0
> Support custom annotations as higher-level semantics (a la BeanVal)
> -------------------------------------------------------------------
>
> Key: ISIS-844
> URL: https://issues.apache.org/jira/browse/ISIS-844
> Project: Isis
> Issue Type: New Feature
> Components: Core
> Affects Versions: core-1.6.0
> Reporter: Dan Haywood
> Assignee: Dan Haywood
> Priority: Minor
> Fix For: core-1.9.0
>
>
> For example, a contributed collection requires:
> import org.apache.isis.applib.annotations.*;
> @ActionSemantics(Of.SAFE)
> @NotContributed(As.ASSOCIATION)
> @NotInServiceMenu
> @Render(Type.EAGERLY)
> public List<Foo> getFoos() { ... }
> it would be nice to allow the user to simplify the programming model. For
> example:
> package com.mycompany.isis;
> import org.apache.isis.applib.annotations.*;
> @ActionSemantics(Of.SAFE)
> @NotContributed(As.ASSOCIATION)
> @NotInServiceMenu
> @Render(Type.EAGERLY)
> public @interface ContributedCollection {}
> and then:
> import com.mycompany.isis.*;
> @ContributedCollection
> public List<Foo> getFoos() { ... }
> ~~~
> Thus, Isis continues to define the base "primitive" semantics, but the
> end-programmer is free to introduce higher-level semantics/abstractions if
> they so wish.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)