Class AbstractCommand

    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      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.
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getContentTemplate()
      Returns the content template associated with a Command, such as PreferencesContent.jsp.
      java.lang.String getJSP()
      Returns the JSP associated with the Command.
      protected 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.
      abstract java.lang.String getName()
      Returns the human-friendly name for this command.
      java.lang.String getRequestContext()
      Returns the name of the request context (e.g.
      java.lang.Object getTarget()
      Returns the target associated with a Command, if it was created with one.
      java.lang.String getURLPattern()
      Returns the URL pattern associated with this Command.
      abstract Command targetedCommand​(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.String toString()
      Returns a String representation of the Command.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • 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 the http:// or https:// prefixes), then the JSP will be a cleansed version of the URL pattern; symbols (such as %u) will be removed. If the supplied URL pattern points to a non-local destination, the JSP will be set to the value supplied, unmodified.
        Parameters:
        requestContext - the request context
        urlPattern - the URL pattern
        contentTemplate - the content template; may be null
        target - the target of the command, such as a WikiPage; may be null
        Throws:
        java.lang.IllegalArgumentException - if the request content or URL pattern is null
    • Method Detail

      • targetedCommand

        public abstract Command targetedCommand​(java.lang.Object target)
        Description copied from interface: Command
        Creates 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 supplied target object is of the correct type. This method is guaranteed to return a non-null Command (unless the target is an incorrect type).
        Specified by:
        targetedCommand in interface Command
        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: Command
        Returns the content template associated with a Command, such as PreferencesContent.jsp. For Commands that are not page-related, this method will always return null. Calling methods should always check to see if the result of this method is null.
        Specified by:
        getContentTemplate in interface Command
        Returns:
        the content template
        See Also:
        Command.getContentTemplate()
      • getJSP

        public final java.lang.String getJSP()
        Description copied from interface: Command
        Returns 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-null result, although in some cases the result may be an empty string.
        Specified by:
        getJSP in interface Command
        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: Command
        Returns the human-friendly name for this command.
        Specified by:
        getName in interface Command
        Returns:
        the name
        See Also:
        Command.getName()
      • getTarget

        public final java.lang.Object getTarget()
        Description copied from interface: Command
        Returns the target associated with a Command, if it was created with one. Commands created with Command.targetedCommand(Object) will always return a non-null object. Calling methods should always check to see if the result of this method is null.
        Specified by:
        getTarget in interface Command
        Returns:
        the wiki page
        See Also:
        Command.getTarget()
      • getURLPattern

        public final java.lang.String getURLPattern()
        Description copied from interface: Command
        Returns the URL pattern associated with this Command. This method is guaranteed to return a non-null String.
        Specified by:
        getURLPattern in interface Command
        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:
        toString in class java.lang.Object
        See Also:
        Object.toString()