Dan Haywood created ISIS-976:
--------------------------------
Summary: Add a button to allow prototype actions to be hidden in
the Wicket viewer
Key: ISIS-976
URL: https://issues.apache.org/jira/browse/ISIS-976
Project: Isis
Issue Type: Improvement
Components: Core, Viewer: Wicket
Affects Versions: core-1.7.0, viewer-wicket-1.7.0
Reporter: Dan Haywood
Assignee: Dan Haywood
Priority: Minor
Fix For: viewer-wicket-1.9.0, core-1.9.0
My thoughts on this is that this would be per-user rather than a singleton, but
probably pluggable. The default implementation could store in the (Wicket
wrapper for) HttpSession.
UI would be a button on the bottom toolbar (alongside "About", only rendered if
running in prototype mode); perhaps make the "About" into a drop-down menu).
It would provide a checkbox to hide prototype actions.
The implementation would be to enhance the PrototypeFacet so that it implements
HidingInteractionAdvisor. The implementation should delegate to an injected
new service which would wrap the HttpSession, simply indicating whether
prototype actions are visible or not, eg:
public interface PrototypeActionVisibilityService {
boolean isHidden();
}
This would be injected into the FacetFactory (we do something similar with
other services) and passed down to the PrototypeFacet.
In terms of providing a default impl, could write a
PrototypeActionVisibilityServiceUsingWicketHttpSession, annotated as
@DomainService, and this would be automatically available. If the user writes
their own impl and registers in isis.properties then this would take precedence.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)