Class TestableRequestImpl

    • Constructor Summary

      Constructors 
      Constructor Description
      TestableRequestImpl​(java.lang.String contextPath)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      TestableRequest clear()
      Clears the internal parameters map.
      java.lang.Object getAttribute​(java.lang.String name)
      Returns the value of the named attribute as an Object, or null if no attribute of the given name exists.
      java.util.List<java.lang.String> getAttributeNames()
      Returns a sorted list of attribute names.
      java.lang.String getContextPath()
      Returns the context path.
      long getDateHeader​(java.lang.String name)
      Returns the value of the specified request header as a long value that represents a Date object.
      java.lang.String getHeader​(java.lang.String name)
      Returns null.
      java.util.List<java.lang.String> getHeaderNames()
      Returns an empty list.
      java.util.Locale getLocale()
      Returns the locale of the client as determined from the request headers.
      int getLocalPort()
      Always returns 80.
      java.lang.String getMethod()
      Always returns POST, to keep the Form component happy.
      java.lang.String getParameter​(java.lang.String name)
      Returns the query parameter value for the given name.
      java.util.List<java.lang.String> getParameterNames()
      Returns a list of query parameter names, in alphabetical order.
      java.lang.String[] getParameters​(java.lang.String name)
      Returns the parameter values for the given name.
      java.lang.String getPath()
      Returns the path portion of the request, which starts with a "/" and contains everything up to the start of the query parameters.
      java.lang.String getRemoteHost()
      Always returns "localhost".
      java.lang.String getServerName()
      Returns "localhost" which is sufficient for testing purposes.
      int getServerPort()
      Always returns 80.
      Session getSession​(boolean create)
      Gets the Session.
      boolean isRequestedSessionIdValid()
      Always returns true.
      boolean isSecure()
      Returns a boolean indicating whether this request was made using a secure channel, such as HTTPS.
      boolean isSessionInvalidated()
      Returns true if the request specified a session, and that session has been invalidated.
      boolean isXHR()
      Always returns false.
      TestableRequest loadParameter​(java.lang.String parameterName, java.lang.String parameterValue)
      Loads a single parameter/value pair.
      TestableRequest overrideParameter​(java.lang.String parameterName, java.lang.String parameterValue)
      Overrides a parameter to the specific value, regardless of how the parameter was previously set.
      void setAttribute​(java.lang.String name, java.lang.Object value)
      Stores an attribute in this request.
      void setEncoding​(java.lang.String requestEncoding)  
      TestableRequest setLocale​(java.util.Locale locale)
      Sets the locale requested by "the browser".
      TestableRequest setPath​(java.lang.String path)
      Sets the path; the path should begin with a "/" character and contain everything from there to the start of query parameters (if any).
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • setPath

        public TestableRequest setPath​(java.lang.String path)
        Description copied from interface: TestableRequest
        Sets the path; the path should begin with a "/" character and contain everything from there to the start of query parameters (if any).
        Specified by:
        setPath in interface TestableRequest
        Returns:
        the request for further configuration
      • loadParameter

        public TestableRequest loadParameter​(java.lang.String parameterName,
                                             java.lang.String parameterValue)
        Description copied from interface: TestableRequest
        Loads a single parameter/value pair. This may define a new parameter, or add a value to a list of parameters.
        Specified by:
        loadParameter in interface TestableRequest
        Returns:
        the request for further configuration
      • getDateHeader

        public long getDateHeader​(java.lang.String name)
        Description copied from interface: Request
        Returns the value of the specified request header as a long value that represents a Date object. Use this method with headers that contain dates, such as If-Modified-Since . The date is returned as the number of milliseconds since January 1, 1970 GMT. The header name is case insensitive. If the request did not have a header of the specified name, this method returns -1. If the header can't be converted to a date, the method throws an IllegalArgumentException.
        Specified by:
        getDateHeader in interface Request
        Parameters:
        name - a String specifying the name of the header
        Returns:
        a long value representing the date specified in the header expressed as the number of milliseconds since January 1, 1970 GMT, or -1 if the named header was not included with the reqest
      • getHeader

        public java.lang.String getHeader​(java.lang.String name)
        Returns null.
        Specified by:
        getHeader in interface Request
      • getLocale

        public java.util.Locale getLocale()
        Description copied from interface: Request
        Returns the locale of the client as determined from the request headers.
        Specified by:
        getLocale in interface Request
      • getParameterNames

        public java.util.List<java.lang.String> getParameterNames()
        Description copied from interface: Request
        Returns a list of query parameter names, in alphabetical order.
        Specified by:
        getParameterNames in interface Request
      • getParameters

        public java.lang.String[] getParameters​(java.lang.String name)
        Description copied from interface: Request
        Returns the parameter values for the given name. Returns null if no such parameter is in the request.
        Specified by:
        getParameters in interface Request
      • getPath

        public java.lang.String getPath()
        Description copied from interface: Request
        Returns the path portion of the request, which starts with a "/" and contains everything up to the start of the query parameters. It doesn't include the context path.
        Specified by:
        getPath in interface Request
      • getContextPath

        public java.lang.String getContextPath()
        Description copied from interface: Request
        Returns the context path. This always starts with a "/" character and does not end with one, with the exception of servlets in the root context, which return the empty string.
        Specified by:
        getContextPath in interface Request
      • getParameter

        public java.lang.String getParameter​(java.lang.String name)
        Description copied from interface: Request
        Returns the query parameter value for the given name. Returns null if no such parameter is in the request. For a multi-valued parameter, returns just the first value.
        Specified by:
        getParameter in interface Request
      • getSession

        public Session getSession​(boolean create)
        Description copied from interface: Request
        Gets the Session. If create is false and the session has not be created previously, returns null. Also, if the session is invalidated and create is false, returns null. Invoking this method with true, when the session exists but has been invalidated, will force the creation of a new session.
        Specified by:
        getSession in interface Request
        Parameters:
        create - true to force the creation of the session
        Returns:
        the session (or null if create is false the session has not been previously created)
      • setEncoding

        public void setEncoding​(java.lang.String requestEncoding)
      • isXHR

        public boolean isXHR()
        Always returns false. If you need to test Ajax functionality, you need to be using Selenium.
        Specified by:
        isXHR in interface Request
        Returns:
        true if the request has an XmlHttpRequest origin
      • isSecure

        public boolean isSecure()
        Description copied from interface: Request
        Returns a boolean indicating whether this request was made using a secure channel, such as HTTPS.
        Specified by:
        isSecure in interface Request
        Returns:
        a boolean indicating if the request was made using a secure channel
      • getAttribute

        public java.lang.Object getAttribute​(java.lang.String name)
        Description copied from interface: Request
        Returns the value of the named attribute as an Object, or null if no attribute of the given name exists. Because this method is a wrapper around ServletRequest.getAttribute(String), it is case sensitive (unlike most of Tapestry).
        Specified by:
        getAttribute in interface Request
        Parameters:
        name - a String specifying the name of the attribute
        Returns:
        an Object containing the value of the attribute, or null if the attribute does not exist
      • setAttribute

        public void setAttribute​(java.lang.String name,
                                 java.lang.Object value)
        Description copied from interface: Request
        Stores an attribute in this request. Attributes are reset between requests (and remember that in Tapestry, there is usually two requests per operation: the action request that redirects to a render request).
        Specified by:
        setAttribute in interface Request
        Parameters:
        name - a String specifying the name of the attribute
        value - the Object to be stored, or null to remove the attribute
      • getServerName

        public java.lang.String getServerName()
        Returns "localhost" which is sufficient for testing purposes.
        Specified by:
        getServerName in interface Request
        Returns:
        the name of the server
      • getMethod

        public java.lang.String getMethod()
        Always returns POST, to keep the Form component happy.
        Specified by:
        getMethod in interface Request
        Returns:
        a string specifying the name of the method with which this request was made
      • getLocalPort

        public int getLocalPort()
        Always returns 80.
        Specified by:
        getLocalPort in interface Request
        Returns:
        an integer specifying the port number
      • getServerPort

        public int getServerPort()
        Always returns 80.
        Specified by:
        getServerPort in interface Request
        Returns:
        an integer specifying the port number
        Since:
        5.2.5
      • getRemoteHost

        public java.lang.String getRemoteHost()
        Always returns "localhost".
        Specified by:
        getRemoteHost in interface Request
        Returns:
        a String containing the fully qualified name of the client
        Since:
        5.3
      • isSessionInvalidated

        public boolean isSessionInvalidated()
        Description copied from interface: Request
        Returns true if the request specified a session, and that session has been invalidated.
        Specified by:
        isSessionInvalidated in interface Request
        Returns:
        true if session was invalidated during this request