Dan Haywood created ISIS-844:
--------------------------------

             Summary: 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-2.0.0


For example, a contributed collection requires:

@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;

@ActionSemantics(Of.SAFE)
@NotContributed(As.ASSOCIATION)
@NotInServiceMenu
@Render(Type.EAGERLY)
public @interface ContributedCollection {}

and then:

@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.2#6252)

Reply via email to