[ 
https://issues.apache.org/jira/browse/ISIS-1001?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dan Haywood updated ISIS-1001:
------------------------------
    Fix Version/s:     (was: 2.7.0)
                   1.20.0

> For hard-coded methods such as title(), iconName(),  and cssClass(), 
> hidden(), disabled(), validate(), provide an alternative mechanism to specify 
> such methods. 
> -----------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: ISIS-1001
>                 URL: https://issues.apache.org/jira/browse/ISIS-1001
>             Project: Isis
>          Issue Type: New Feature
>          Components: Core
>    Affects Versions: core-1.7.0
>            Reporter: Dan Haywood
>            Priority: Minor
>             Fix For: 1.20.0
>
>
> The methods involved are:
> - title()
> - iconName()
> - cssClass()   (introduced in ISIS-1000)
> and the (probably to be deprecated) callback methods:
> - loaded()
> - saving()/persisting()
> - saved()/persisted()
> - updating()
> - updated()
> - removing()/deleting()
> - deleted()/deleted()
> In all cases, if the method is annotated with @Action (ISIS-990) or with 
> @Programmatic then it no facet should be installed (that is, action takes 
> precedence).
> Also, if there is a clashing action, then an annotation should indicate the 
> method (analogous to junit's @Test annotation).  Since these are all hook 
> methods for Isis to call, I suggest the annotation is called @Hook, eg:
> {code}
> @Hook(HookType.TITLE)
> String someOtherMethodActingLikeTitle() { ... }
> @Hook(HookType.ICON_NAME)
> String someMethodActingLikeIconName() {  .... }
> @Hook(HookType.CSS_CLASS)
> String someMethodActingLikeCssClass() { ... }
> {code}
> If an annotation doesn't appeal, we could instead define a special prefix, eg 
> "__isis_xxx" (cf JUnit3's testXxx).  For example:
> {code}
> String __isis_title() { ... }
> String __isis_iconName() { ... }
> String __isis_cssClass() { ... }



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to