Package org.apache.wiki.ui
Class AbstractCommand
- java.lang.Object
-
- org.apache.wiki.ui.AbstractCommand
-
- All Implemented Interfaces:
Command
- Direct Known Subclasses:
GroupCommand,PageCommand,RedirectCommand,WikiCommand
public abstract class AbstractCommand extends java.lang.Object implements Command
Abstract, immutable Command implementation class. All of the fields in this class arefinal. This class is thread-safe.- Since:
- 2.4.22
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractCommand(java.lang.String requestContext, java.lang.String urlPattern, java.lang.String contentTemplate, java.lang.Object target)Constructs a new Command with a specified wiki context, URL pattern, content template and target.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetContentTemplate()Returns the content template associated with a Command, such asPreferencesContent.jsp.java.lang.StringgetJSP()Returns the JSP associated with the Command.protected java.lang.StringgetJSPFriendlyName()Returns the "friendly name" for this command's JSP, namely a beatified version of the JSP's name without the .jsp suffix.abstract java.lang.StringgetName()Returns the human-friendly name for this command.java.lang.StringgetRequestContext()Returns the name of the request context (e.g.java.lang.ObjectgetTarget()Returns the target associated with a Command, if it was created with one.java.lang.StringgetURLPattern()Returns the URL pattern associated with this Command.abstract CommandtargetedCommand(java.lang.Object target)Creates and returns a targeted Command by combining a target, such as a WikiPage or GroupPrincipal into the existing Command.java.lang.StringtoString()Returns a String representation of the Command.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.wiki.api.core.Command
requiredPermission
-
-
-
-
Constructor Detail
-
AbstractCommand
protected AbstractCommand(java.lang.String requestContext, java.lang.String urlPattern, java.lang.String contentTemplate, java.lang.Object target)
Constructs a new Command with a specified wiki context, URL pattern, content template and target. The URL pattern is used to derive the JSP; if it is a "local" JSP (that is, it does not contain thehttp://orhttps://prefixes), then the JSP will be a cleansed version of the URL pattern; symbols (such as%u) will removed. If it the supplied URL pattern points to a non-local destination, the JSP will be set to the value supplied, unmodified.- Parameters:
requestContext- the request contexturlPattern- the URL patterncontentTemplate- the content template; may benulltarget- the target of the command, such as a WikiPage; may benull- Throws:
java.lang.IllegalArgumentException- if the request content or URL pattern isnull
-
-
Method Detail
-
targetedCommand
public abstract Command targetedCommand(java.lang.Object target)
Description copied from interface:CommandCreates and returns a targeted Command by combining a target, such as a WikiPage or GroupPrincipal into the existing Command. Subclasses should check to make sure the suppliedtargetobject is of the correct type. This method is guaranteed to return a non-nullCommand (unless the target is an incorrect type).- Specified by:
targetedCommandin interfaceCommand- Parameters:
target- the object to combine, such as a GroupPrincipal or WikiPage- Returns:
- the new, targeted Command
- See Also:
Command.targetedCommand(Object)
-
getContentTemplate
public final java.lang.String getContentTemplate()
Description copied from interface:CommandReturns the content template associated with a Command, such asPreferencesContent.jsp. For Commands that are not page-related, this method will always returnnull. Calling methods should always check to see if the result of this method isnull.- Specified by:
getContentTemplatein interfaceCommand- Returns:
- the content template
- See Also:
Command.getContentTemplate()
-
getJSP
public final java.lang.String getJSP()
Description copied from interface:CommandReturns the JSP associated with the Command. The JSP is a "local" JSP within the JSPWiki webapp; it is not a general HTTP URL. If it exists, the JSP will be expressed relative to the webapp root, without a leading slash. This method is guaranteed to return a non-nullresult, although in some cases the result may be an empty string.- Specified by:
getJSPin interfaceCommand- Returns:
- the JSP or url associated with the wiki command
- See Also:
Command.getJSP()
-
getName
public abstract java.lang.String getName()
Description copied from interface:CommandReturns the human-friendly name for this command.- Specified by:
getNamein interfaceCommand- Returns:
- the name
- See Also:
Command.getName()
-
getRequestContext
public final java.lang.String getRequestContext()
Description copied from interface:CommandReturns the name of the request context (e.g. VIEW) associated with this Command. This method is guaranteed to return a non-nullString.- Specified by:
getRequestContextin interfaceCommand- Returns:
- the request context
- See Also:
Command.getRequestContext()
-
getTarget
public final java.lang.Object getTarget()
Description copied from interface:CommandReturns the target associated with a Command, if it was created with one. Commands created withCommand.targetedCommand(Object)will always return a non-nullobject. Calling methods should always check to see if the result of this method isnull.- Specified by:
getTargetin interfaceCommand- Returns:
- the wiki page
- See Also:
Command.getTarget()
-
getURLPattern
public final java.lang.String getURLPattern()
Description copied from interface:CommandReturns the URL pattern associated with this Command. This method is guaranteed to return a non-nullString.- Specified by:
getURLPatternin interfaceCommand- Returns:
- the URL pattern
- See Also:
Command.getURLPattern()
-
getJSPFriendlyName
protected final java.lang.String getJSPFriendlyName()
Returns the "friendly name" for this command's JSP, namely a beatified version of the JSP's name without the .jsp suffix.- Returns:
- the friendly name
-
toString
public final java.lang.String toString()
Returns a String representation of the Command.- Overrides:
toStringin classjava.lang.Object- See Also:
Object.toString()
-
-