[ 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)