[
https://issues.apache.org/jira/browse/ISIS-2161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16937607#comment-16937607
]
Andi Huber commented on ISIS-2161:
----------------------------------
It turns out that we can solve this issue, without having to introduce any new
concepts (or extending the programming model):
Simply allow explicitly annotated members to be named with currently reserved
prefixes.
{code:java}
// should be a valid action name, even though 'disable' is reserved
@Action
public void disableUser(User user) {
...
}
{code}
> Remove domain-object member naming restrictions (reserved prefixes)
> -------------------------------------------------------------------
>
> Key: ISIS-2161
> URL: https://issues.apache.org/jira/browse/ISIS-2161
> Project: Isis
> Issue Type: Improvement
> Components: Core
> Reporter: Andi Huber
> Assignee: Andi Huber
> Priority: Major
> Fix For: 2.0.0
>
>
> Currently the prefixes 'hide', 'validate', 'disable', etc are reserved for
> supporting-methods and may not be used for Actions and Properties.
> We can lift this restriction:
> * If a member is annotated Action/Property/Collection, then we allow any
> names for this member, even if these collide with the 'reserved' prefixes!
> It is inconvenient, when misspelling support-methods eg. using 'verify'
> instead of 'validate', that one has to troubleshoot the application later,
> only to find out that one made a sloppy mistake.
> * We can improve on this by introducing a new annotation eg. 'Model' to
> enforce a meta-model check on the correct naming of supporting-methods.
> {code:java}
> @Action
> void placeOrder(X x, Y y, Z z) {...}
> @Model // <-- enforces a meta-model check on this supporting-method
> boolean hidePlaceOrder() {...}
> {code}
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)