All Downloads are FREE. Search and download functionalities are using the official Maven repository.

public.javadoc.org.spincast.core.exchange.ResponseRequestContextAddon.html Maven / Gradle / Ivy

There is a newer version: 2.2.0
Show newest version






ResponseRequestContextAddon (org.spincast:spincast-framework 1.0.0 API)












org.spincast.core.exchange

Interface ResponseRequestContextAddon<R extends RequestContext<?>>

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method and Description
      void addAlert(AlertLevel level, String message)
      Adds an Alert that is, in general, displayed at the top of the page to show the user an Error, a Warning or a confirmation message.
      void addForm(Form form)
      Adds a Form object to the response's model and links its validation messages to the default "validation" root element.
      void addForm(Form form, String validationElementName)
      Adds a Form object to the response's model and links its validation messages to the specified validation element.
      ResponseRequestContextAddon<R> addHeaderValue(String name, String value)
      Adds a value to a response header.
      ResponseRequestContextAddon<R> addHeaderValues(String name, List<String> values)
      Adds a list of values to a response header.
      Cookie createCookie(String name)
      Creates a cookie using the given name (null value).
      void deleteAllCookiesUserHas()
      Deletes all cookies! Not only the new cookies that have been added to the response, but also the cookies that have been received in the request!
      void deleteCookie(String name)
      Deletes a cookie.
      void end()
      Flushes everything and closes the response.
      void flush()
      Flushes the current response.
      void flush(boolean close)
      Flushes the current response.
      String getCharactersCharsetName()
      The charset to use to convert characters to bytes.
      String getContentType()
      The current Content-Type sent or to be send.
      Cookie getCookieAdded(String name)
      Gets a cookie already added to the response, by its name.
      Map<String,Cookie> getCookiesAdded()
      Gets the cookies already added to the response as a Map, using their names as the keys.
      GzipOption getGzipOption()
      The currently set gzip options.
      List<String> getHeader(String name)
      The values of a specific response header.
      String getHeaderFirst(String name)
      The first value of a specific header.
      Map<String,List<String>> getHeaders()
      The currently set response headers.
      JsonObject getModel()
      The JsonObject which serves as the model for the response.
      int getStatusCode()
      The current status code sent or to be send.
      byte[] getUnsentBytes()
      Gets the current unsent bytes (AKA the buffer).
      String getUnsentCharacters()
      Gets the current unsent characters (AKA the buffer), using the UTF-8 encoding.
      String getUnsentCharacters(String encoding)
      Gets the current unsent characters (AKA the buffer), using the specified encoding.
      boolean isClosed()
      Is the response closed? If so, nothing more can be sent...
      boolean isHeadersSent()
      Are the response headers sent? If this is the case, then the headers can't be changed anymore.
      void redirect()
      Sets a temporarily redirection header (302) to the current page.
      void redirect(FlashMessage flashMessage)
      Sets a temporarily redirection header (302) to the current page, with a Flash message to display.
      void redirect(FlashMessageLevel flashMessageType, String flashMessageText)
      Sets a temporarily redirection header (302) to the current page, with a Flash message to display.
      void redirect(FlashMessageLevel flashMessageType, String flashMessageText, JsonObject flashMessageVariables)
      Sets a temporarily redirection header (302) to the current page, with a Flash message to display.
      void redirect(String newUrl)
      Sets a temporarily redirection header (302).
      void redirect(String newUrl, boolean permanently)
      Sets a redirection header.
      void redirect(String newUrl, boolean permanently, FlashMessage flashMessage)
      Sets a redirection header, with a Flash message to display.
      void redirect(String newUrl, boolean permanently, FlashMessageLevel flashMessageType, String flashMessageText)
      Sets a redirection header, with a Flash message to display.
      void redirect(String newUrl, boolean permanently, FlashMessageLevel flashMessageType, String flashMessageText, JsonObject flashMessageVariables)
      Sets a redirection header, with a Flash message to display.
      void redirect(String newUrl, FlashMessage flashMessage)
      Sets a temporarily redirection header (302), with a Flash message to display.
      void redirect(String newUrl, FlashMessageLevel flashMessageType, String flashMessageText)
      Sets a temporarily redirection header (302), with a Flash message to display.
      void redirect(String newUrl, FlashMessageLevel flashMessageType, String flashMessageText, JsonObject flashMessageVariables)
      Sets a temporarily redirection header (302), with a Flash message to display.
      void redirect(String newUrl, int specific3xxCode)
      Sets the redirection headers with a specified 3xx status code.
      void redirect(String newUrl, int specific3xxCode, FlashMessage flashMessage)
      Sets the redirection headers with a specified 3xx status code, and a Flash message to display.
      void redirect(String newUrl, int specific3xxCode, FlashMessageLevel flashMessageType, String flashMessageText)
      Sets the redirection headers with a specified 3xx status code, and a Flash message to display.
      void redirect(String newUrl, int specific3xxCode, FlashMessageLevel flashMessageType, String flashMessageText, JsonObject flashMessageVariables)
      Sets the redirection headers with a specified 3xx status code, and a Flash message to display.
      void redirect(String newUrl, JsonObject flashMessageVariables)
      Sets a temporarily redirection header (302), with a Flash variables.
      ResponseRequestContextAddon<R> removeHeader(String name)
      Removes an header by its name.
      ResponseRequestContextAddon<R> resetBuffer()
      Clears the buffer (the unsent buffer, of course).
      ResponseRequestContextAddon<R> resetEverything()
      Clears the buffer (the unsent buffer, of course!), resets the cookies, the headers, the Content-Type and sets the status code back to 200.
      ResponseRequestContextAddon<R> resetEverything(boolean resetCookies)
      Clears the buffer (the unsent buffer, of course), the headers, the Content-Type and sets the status code back to 200.
      void sendBytes(byte[] bytes)
      Sends some bytes, without flushing.
      void sendBytes(byte[] bytes, String contentType)
      Sends some bytes using the specified Content-Type, without flushing.
      void sendBytes(byte[] bytes, String contentType, boolean flush)
      Sends some bytes using the specified Content-Type and flushes, if specified.
      void sendCharacters(String content, String contentType)
      Sends a String, using the encoding returned by getCharactersCharsetName and using the specified Content-Type, without flushing.
      void sendCharacters(String content, String contentType, boolean flush)
      Sends a String, using the encoding returned by getCharactersCharsetName and using the specified Content-Type.
      void sendHtml(String html)
      Sends a String as text/html, UTF-8 encoded, without flushing.
      void sendHtml(String html, boolean flush)
      Sends a String as text/html, UTF-8 encoded, and flushes, if specified.
      void sendJson()
      Sends the model as application/json, without flushing.
      void sendJson(boolean flush)
      Sends the model as application/json, and flushes, if specified.
      void sendJson(Object obj)
      Serializes the object to Json and sends as application/json, without flushing.
      void sendJson(Object obj, boolean flush)
      Serializes the object to Json, sends as application/json, and flushes, if specified.
      void sendJson(String jsonString)
      Sends a Json String using the application/json Content-Type, without flushing.
      void sendJson(String jsonString, boolean flush)
      Sends a Json String using the application/json Content-Type, and flushes, if specified.
      void sendParse(String content, String contentType)
      Parses the given String using the TemplatingEngine, then sends the result using the specified Content-Type, without flushing.
      void sendParse(String content, String contentType, boolean flush)
      Parses the given String using the TemplatingEngine, then sends the result using the specified Content-Type, and flushes, if specified.
      void sendParseHtml(String html)
      Parses the given String using the TemplatingEngine and the given parameters, then sends the result as text/html, UTF-8 encoded.
      void sendParseHtml(String html, boolean flush)
      Parses the given String using the TemplatingEngine and the given parameters, then sends the result as text/html, UTF-8 encoded, and flushes, if specified.
      void sendPlainText(String string)
      Sends a String as text/plain, UTF-8 encoded, without flushing.
      void sendPlainText(String string, boolean flush)
      Sends a String as text/plain, UTF-8 encoded, and flushes, if specified.
      void sendTemplate(String templatePath, boolean isClasspathPath, String contentType)
      Finds the specified template using the TemplatingEngine, evaluates it using the given parameters, then sends the result using the given contentType, without flushing.
      void sendTemplate(String templatePath, boolean isClasspathPath, String contentType, boolean flush)
      Finds the specified template using the TemplatingEngine, evaluates it using the given parameters, then sends the result using the given contentType, and flushes, if specified.
      void sendTemplate(String templatePath, String contentType)
      Finds the specified template using the TemplatingEngine, evaluates it using the given parameters, then sends the result using the given contentType, without flushing.
      void sendTemplate(String templatePath, String contentType, boolean flush)
      Finds the specified template using the TemplatingEngine, evaluates it using the given parameters, then sends the result using the given contentType, and flushes, if specified.
      void sendTemplateHtml(String templatePath)
      Finds the HTML template using the TemplatingEngine, evaluates it using the model that have been added to the response, then sends the result as text/html, UTF-8 encoded, without flushing.
      void sendTemplateHtml(String templatePath, boolean isClasspathPath)
      Finds the HTML template using the TemplatingEngine, evaluates it using the given parameters, then sends the result as text/html, UTF-8 encoded.
      void sendTemplateHtml(String templatePath, boolean isClasspathPath, boolean flush)
      Finds the HTML template using the TemplatingEngine, evaluates it using the given parameters, then sends the result as text/html, UTF-8 encoded, and flushes, if specified.
      void sendXml()
      Sends the model as application/xml, without flushing.
      void sendXml(boolean flush)
      Sends the model as application/xml, and flushes, if specified.
      void sendXml(Object obj)
      Serializes the object to XML and sends as application/xml, without flushing.
      void sendXml(Object obj, boolean flush)
      Serializes the object to XML, sends as application/xml, and flushes, if specified.
      void sendXml(String xml)
      Sends some XML using the application/xml Content-Type, without flushing.
      void sendXml(String xml, boolean flush)
      Sends some XML using the application/xml Content-Type, and flushes, if specified.
      ResponseRequestContextAddon<R> setCacheSeconds(int cacheSeconds)
      Adds caching headers.
      ResponseRequestContextAddon<R> setCacheSeconds(int cacheSeconds, boolean isPrivateCache)
      Adds caching headers for the specified number of seconds.
      ResponseRequestContextAddon<R> setCharactersCharsetName(String name)
      Sets the charset to use to convert characters to bytes.
      ResponseRequestContextAddon<R> setContentType(String responseContentType)
      The Content-Type header to use for the response.
      void setCookie(Cookie cookie)
      Sets a cookie.
      void setCookie(String name, String value, int nbrSecondsToLive)
      Sets a cookie using the specified name, value and number of seconds to live.
      void setCookie(String name, String value, int nbrSecondsToLive, boolean httpOnly)
      Sets a cookie using the specified name, value, number of seconds to live and if it's http only.
      void setCookie(String name, String value, String path, String domain, Date expires, boolean secure, boolean httpOnly, CookieSameSite cookieSameSite, boolean discard, int version)
      Sets a cookie, using all available configurations.
      void setCookie10years(String name, String value)
      Sets a permanent cookie (10 years) using the specified name and value.
      void setCookie10yearsSafe(String name, String value)
      Sets a permanent cookie (10 years) using the specified name and value.
      void setCookie1year(String name, String value)
      Sets a permanent cookie (1 years) using the specified name and value.
      void setCookie1yearSafe(String name, String value)
      Sets a permanent cookie (1 years) using the specified name and value.
      void setCookieSession(String name, String value)
      Sets a cookie using the specified name and value.
      void setCookieSessionSafe(String name, String value)
      Sets a cookie using the specified name and value.
      ResponseRequestContextAddon<R> setGzipOption(GzipOption gzipOption)
      Enable or disable gzipping of the response.
      ResponseRequestContextAddon<R> setHeader(String name, List<String> values)
      Set multiple values to a response header.
      ResponseRequestContextAddon<R> setHeader(String name, String value)
      Set the value to a response header.
      void setModel(JsonObject model)
      Replaces the current response model completely.
      ResponseRequestContextAddon<R> setStatusCode(int statusCode)
      Sets the response's status code to use.
    • Method Detail

      • getModel

        JsonObject getModel()
        The JsonObject which serves as the model for the response. This object will be used by the templating engine or will be sent as is, often as an application/json response.

        This object is mutable.

      • setModel

        void setModel(JsonObject model)
        Replaces the current response model completely.

        Use getModel() instead to get the current model instance and add properties to it.

      • isClosed

        boolean isClosed()
        Is the response closed? If so, nothing more can be sent...
      • end

        void end()
        Flushes everything and closes the response. Nothing more can be sent after this (but the remaining route handlers will still be called).
      • isHeadersSent

        boolean isHeadersSent()
        Are the response headers sent? If this is the case, then the headers can't be changed anymore.
      • sendBytes

        void sendBytes(byte[] bytes)
        Sends some bytes, without flushing.
      • sendBytes

        void sendBytes(byte[] bytes,
                       String contentType)
        Sends some bytes using the specified Content-Type, without flushing.
      • sendBytes

        void sendBytes(byte[] bytes,
                       String contentType,
                       boolean flush)
        Sends some bytes using the specified Content-Type and flushes, if specified. Note that once the response is flushed, no header can be added or changed anymore.
      • getCharactersCharsetName

        String getCharactersCharsetName()
        The charset to use to convert characters to bytes. Defaults to "UTF-8".
      • setCharactersCharsetName

        ResponseRequestContextAddon<R> setCharactersCharsetName(String name)
        Sets the charset to use to convert characters to bytes. Defaults to "UTF-8". Make sure you use the same charset here than the one that is sent as the "Content-Type" header (which is also "UTF-8" by default, if you send data using sendPlainText(), sendHtml() or sendJson()).
      • sendCharacters

        void sendCharacters(String content,
                            String contentType)
        Sends a String, using the encoding returned by getCharactersCharsetName and using the specified Content-Type, without flushing.
      • sendCharacters

        void sendCharacters(String content,
                            String contentType,
                            boolean flush)
        Sends a String, using the encoding returned by getCharactersCharsetName and using the specified Content-Type. Flushes the response, if specified. Note that once the response is flushed, no header can be added or changed anymore.
      • sendPlainText

        void sendPlainText(String string)
        Sends a String as text/plain, UTF-8 encoded, without flushing.
      • sendPlainText

        void sendPlainText(String string,
                           boolean flush)
        Sends a String as text/plain, UTF-8 encoded, and flushes, if specified. Note that once the response is flushed, no header can be added or changed anymore.
      • sendJson

        void sendJson()
        Sends the model as application/json, without flushing.
      • sendJson

        void sendJson(boolean flush)
        Sends the model as application/json, and flushes, if specified.

        Note that once the response is flushed, no header can be added or changed anymore.

      • sendJson

        void sendJson(String jsonString)
        Sends a Json String using the application/json Content-Type, without flushing.

        Synonym of : sendCharacters(jsonString, "application/json")

      • sendJson

        void sendJson(String jsonString,
                      boolean flush)
        Sends a Json String using the application/json Content-Type, and flushes, if specified.

        Note that once the response is flushed, no header can be added or changed anymore.

        Synonym of : sendCharacters(jsonString, "application/json", flush)

      • sendJson

        void sendJson(Object obj)
        Serializes the object to Json and sends as application/json, without flushing.

        If the specified Object is a String, it will be considered as already being JSON and will be send as is.

      • sendJson

        void sendJson(Object obj,
                      boolean flush)
        Serializes the object to Json, sends as application/json, and flushes, if specified.

        Note that once the response is flushed, no header can be added or changed anymore.

        If the specified Object is a String, it will be considered as already being JSON and will be send as is.

      • sendXml

        void sendXml()
        Sends the model as application/xml, without flushing.
      • sendXml

        void sendXml(boolean flush)
        Sends the model as application/xml, and flushes, if specified.

        Note that once the response is flushed, no header can be added or changed anymore.

      • sendXml

        void sendXml(String xml)
        Sends some XML using the application/xml Content-Type, without flushing.

        Synonym of : sendCharacters(xml, "application/xml")

      • sendXml

        void sendXml(String xml,
                     boolean flush)
        Sends some XML using the application/xml Content-Type, and flushes, if specified.

        Note that once the response is flushed, no header can be added or changed anymore.

        Synonym of : sendCharacters(xml, "application/xml", flush)

      • sendXml

        void sendXml(Object obj)
        Serializes the object to XML and sends as application/xml, without flushing.

        If the specified Object is a String, it will be considered as already being XML and will be send as is.

      • sendXml

        void sendXml(Object obj,
                     boolean flush)
        Serializes the object to XML, sends as application/xml, and flushes, if specified.

        Note that once the response is flushed, no header can be added or changed anymore.

        If the specified Object is a String, it will be considered as already being XML and will be send as is.

      • sendHtml

        void sendHtml(String html)
        Sends a String as text/html, UTF-8 encoded, without flushing.
      • sendHtml

        void sendHtml(String html,
                      boolean flush)
        Sends a String as text/html, UTF-8 encoded, and flushes, if specified. Note that once the response is flushed, no header can be added or changed anymore.
      • sendParse

        void sendParse(String content,
                       String contentType)
        Parses the given String using the TemplatingEngine, then sends the result using the specified Content-Type, without flushing.
      • sendParse

        void sendParse(String content,
                       String contentType,
                       boolean flush)
        Parses the given String using the TemplatingEngine, then sends the result using the specified Content-Type, and flushes, if specified. Note that once the response is flushed, no header can be added or changed anymore.
      • sendTemplateHtml

        void sendTemplateHtml(String templatePath)
        Finds the HTML template using the TemplatingEngine, evaluates it using the model that have been added to the response, then sends the result as text/html, UTF-8 encoded, without flushing.
        Parameters:
        templatePath - must be a classpath's relative path.
      • sendTemplateHtml

        void sendTemplateHtml(String templatePath,
                              boolean isClasspathPath)
        Finds the HTML template using the TemplatingEngine, evaluates it using the given parameters, then sends the result as text/html, UTF-8 encoded.
        Parameters:
        isClasspathPath - if true, the 'templatePath' is considered as a classpath's relative path. If false, it is considered as an absolute file system path.
      • sendTemplateHtml

        void sendTemplateHtml(String templatePath,
                              boolean isClasspathPath,
                              boolean flush)
        Finds the HTML template using the TemplatingEngine, evaluates it using the given parameters, then sends the result as text/html, UTF-8 encoded, and flushes, if specified. Note that once the response is flushed, no header can be added or changed anymore.
        Parameters:
        isClasspathPath - if true, the 'templatePath' is considered as a classpath's relative path. If false, it is considered as an absolute file system path.
      • sendTemplate

        void sendTemplate(String templatePath,
                          String contentType)
        Finds the specified template using the TemplatingEngine, evaluates it using the given parameters, then sends the result using the given contentType, without flushing.
        Parameters:
        templatePath - must be a classpath's relative path.
      • sendTemplate

        void sendTemplate(String templatePath,
                          String contentType,
                          boolean flush)
        Finds the specified template using the TemplatingEngine, evaluates it using the given parameters, then sends the result using the given contentType, and flushes, if specified. Note that once the response is flushed, no header can be added or changed anymore.
        Parameters:
        templatePath - must be a classpath's relative path.
      • sendTemplate

        void sendTemplate(String templatePath,
                          boolean isClasspathPath,
                          String contentType)
        Finds the specified template using the TemplatingEngine, evaluates it using the given parameters, then sends the result using the given contentType, without flushing.
        Parameters:
        isClasspathPath - if true, the 'templatePath' is considered as a classpath's relative path. If false, it is considered as an absolute file system path.
      • sendTemplate

        void sendTemplate(String templatePath,
                          boolean isClasspathPath,
                          String contentType,
                          boolean flush)
        Finds the specified template using the TemplatingEngine, evaluates it using the given parameters, then sends the result using the given contentType, and flushes, if specified. Note that once the response is flushed, no header can be added or changed anymore.
        Parameters:
        isClasspathPath - if true, the 'templatePath' is considered as a classpath's relative path. If false, it is considered as an absolute file system path.
      • sendParseHtml

        void sendParseHtml(String html)
        Parses the given String using the TemplatingEngine and the given parameters, then sends the result as text/html, UTF-8 encoded.
      • sendParseHtml

        void sendParseHtml(String html,
                           boolean flush)
        Parses the given String using the TemplatingEngine and the given parameters, then sends the result as text/html, UTF-8 encoded, and flushes, if specified. Note that once the response is flushed, no header can be added or changed anymore.
      • flush

        void flush()
        Flushes the current response. If not already specified, a default status code and Content-Type will be added. Note that once the response is flushed, no header can be added or changed anymore.
      • flush

        void flush(boolean close)
        Flushes the current response. If not already specified on the response, a default status code and content-type will be added. Note that once the response is flushed, no header can be added or changed anymore.
        Parameters:
        close - If true, the response will be closed and no more data can be sent. This has the same effect than calling end().
      • setStatusCode

        ResponseRequestContextAddon<R> setStatusCode(int statusCode)
        Sets the response's status code to use. Uses 200 by default. Note that this status code can be changed automatically if an exception is thrown.
      • getStatusCode

        int getStatusCode()
        The current status code sent or to be send.
      • setContentType

        ResponseRequestContextAddon<R> setContentType(String responseContentType)
        The Content-Type header to use for the response. Most sendXXX() methods will set this automatically.
      • getContentType

        String getContentType()
        The current Content-Type sent or to be send.
      • redirect

        void redirect()
        Sets a temporarily redirection header (302) to the current page.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

      • redirect

        void redirect(FlashMessage flashMessage)
        Sets a temporarily redirection header (302) to the current page, with a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

      • redirect

        void redirect(FlashMessageLevel flashMessageType,
                      String flashMessageText)
        Sets a temporarily redirection header (302) to the current page, with a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

      • redirect

        void redirect(FlashMessageLevel flashMessageType,
                      String flashMessageText,
                      JsonObject flashMessageVariables)
        Sets a temporarily redirection header (302) to the current page, with a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

      • redirect

        void redirect(String newUrl)
        Sets a temporarily redirection header (302).

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

      • redirect

        void redirect(String newUrl,
                      FlashMessage flashMessage)
        Sets a temporarily redirection header (302), with a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

        Parameters:
        flashMessage - A Flash Message to pass to the target page.
      • redirect

        void redirect(String newUrl,
                      FlashMessageLevel flashMessageType,
                      String flashMessageText)
        Sets a temporarily redirection header (302), with a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

        Parameters:
        flashMessageType - The type of a Flash Message to pass to the target page.
        flashMessageText - The text of a Flash Message to pass to the target page.
      • redirect

        void redirect(String newUrl,
                      FlashMessageLevel flashMessageType,
                      String flashMessageText,
                      JsonObject flashMessageVariables)
        Sets a temporarily redirection header (302), with a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

        Parameters:
        flashMessageType - The type of a Flash Message to pass to the target page.
        flashMessageText - The text of a Flash Message to pass to the target page.
        flashMessageVariables - The variables of a Flash Message to pass to the target page.
      • redirect

        void redirect(String newUrl,
                      JsonObject flashMessageVariables)
        Sets a temporarily redirection header (302), with a Flash variables.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

        Parameters:
        flashMessageVariables - The variables of a Flash Message to pass to the target page.
      • redirect

        void redirect(String newUrl,
                      boolean permanently)
        Sets a redirection header.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

        Parameters:
        permanently - If true, a 301 header will be sent. If false, 302 will be sent.
      • redirect

        void redirect(String newUrl,
                      boolean permanently,
                      FlashMessage flashMessage)
        Sets a redirection header, with a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

        Parameters:
        permanently - If true, a 301 header will be sent. If false, 302 will be sent.
        flashMessage - A Flash Message to pass to the target page.
      • redirect

        void redirect(String newUrl,
                      boolean permanently,
                      FlashMessageLevel flashMessageType,
                      String flashMessageText)
        Sets a redirection header, with a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

        Parameters:
        permanently - If true, a 301 header will be sent. If false, 302 will be sent.
        flashMessageType - The type of a Flash Message to pass to the target page.
        flashMessageText - The text of a Flash Message to pass to the target page.
      • redirect

        void redirect(String newUrl,
                      boolean permanently,
                      FlashMessageLevel flashMessageType,
                      String flashMessageText,
                      JsonObject flashMessageVariables)
        Sets a redirection header, with a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

        Parameters:
        permanently - If true, a 301 header will be sent. If false, 302 will be sent.
        flashMessageType - The type of a Flash Message to pass to the target page.
        flashMessageText - The text of a Flash Message to pass to the target page.
        flashMessageVariables - The variables of a Flash Message to pass to the target page.
      • redirect

        void redirect(String newUrl,
                      int specific3xxCode)
        Sets the redirection headers with a specified 3xx status code.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

      • redirect

        void redirect(String newUrl,
                      int specific3xxCode,
                      FlashMessage flashMessage)
        Sets the redirection headers with a specified 3xx status code, and a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

        Parameters:
        flashMessage - A Flash Message to pass to the target page.
      • redirect

        void redirect(String newUrl,
                      int specific3xxCode,
                      FlashMessageLevel flashMessageType,
                      String flashMessageText)
        Sets the redirection headers with a specified 3xx status code, and a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

        Parameters:
        flashMessageType - The type of a Flash Message to pass to the target page.
        flashMessageText - The text of a Flash Message to pass to the target page.
      • redirect

        void redirect(String newUrl,
                      int specific3xxCode,
                      FlashMessageLevel flashMessageType,
                      String flashMessageText,
                      JsonObject flashMessageVariables)
        Sets the redirection headers with a specified 3xx status code, and a Flash message to display.

        This will NOT close the response and will NOT skip the remaining handlers! Throw a RedirectException instead if you want to redirect the user immediately.

        Parameters:
        flashMessageType - The type of a Flash Message to pass to the target page.
        flashMessageText - The text of a Flash Message to pass to the target page.
        flashMessageVariables - The variables of a Flash Message to pass to the target page.
      • addHeaderValue

        ResponseRequestContextAddon<R> addHeaderValue(String name,
                                                      String value)
        Adds a value to a response header. If the header already has values, the new one is added. If the value is null, it won't be added.
      • addHeaderValues

        ResponseRequestContextAddon<R> addHeaderValues(String name,
                                                       List<String> values)
        Adds a list of values to a response header. If the header already has values, the new ones are added. If the values are null, nothing will be added.
      • getHeaders

        Map<String,List<String>> getHeaders()
        The currently set response headers. The map is mutable! Also the returned implementation is a TreeMap with case insensitive keys.
      • getHeader

        List<String> getHeader(String name)
        The values of a specific response header. The list is mutable! The name is case insensitive. Returns an empty list if the header was not found.
      • getHeaderFirst

        String getHeaderFirst(String name)
        The first value of a specific header. The name is case insensitive. Returns null if the header is not found.
      • resetEverything

        ResponseRequestContextAddon<R> resetEverything()
        Clears the buffer (the unsent buffer, of course!), resets the cookies, the headers, the Content-Type and sets the status code back to 200.
      • resetEverything

        ResponseRequestContextAddon<R> resetEverything(boolean resetCookies)
        Clears the buffer (the unsent buffer, of course), the headers, the Content-Type and sets the status code back to 200.
        Parameters:
        resetCookies - if true, cookies that have been added on the current response will be reset too.
      • getUnsentBytes

        byte[] getUnsentBytes()
        Gets the current unsent bytes (AKA the buffer).
      • getUnsentCharacters

        String getUnsentCharacters()
        Gets the current unsent characters (AKA the buffer), using the UTF-8 encoding.
      • getUnsentCharacters

        String getUnsentCharacters(String encoding)
        Gets the current unsent characters (AKA the buffer), using the specified encoding.
      • setGzipOption

        ResponseRequestContextAddon<R> setGzipOption(GzipOption gzipOption)
        Enable or disable gzipping of the response. The default is GzipOption.DEFAULT which will gzip the response only for some Content-Types and only if a gzip 'Accept-Encoding' header has been received from the client.
      • getGzipOption

        GzipOption getGzipOption()
        The currently set gzip options.
      • setCacheSeconds

        ResponseRequestContextAddon<R> setCacheSeconds(int cacheSeconds)
        Adds caching headers.
        Parameters:
        seconds - the number of seconds this response should be cached.
      • setCacheSeconds

        ResponseRequestContextAddon<R> setCacheSeconds(int cacheSeconds,
                                                       boolean isPrivateCache)
        Adds caching headers for the specified number of seconds. Adds caching headers.
        Parameters:
        seconds - the number of seconds this response should be cached.
        isPrivateCache - if true, the cache will be flagged as "private".
      • addAlert

        void addAlert(AlertLevel level,
                      String message)
        Adds an Alert that is, in general, displayed at the top of the page to show the user an Error, a Warning or a confirmation message.

        Those alerts are available using the "spincast.alerts" templating variable. If any, a Flash Messages is also added to this variable.

      • createCookie

        Cookie createCookie(String name)
        Creates a cookie using the given name (null value).

        By default, the public host (SpincastConfig.getPublicServerHost()) is uses as the cookie's domain and the cookie is valid for the time of the session only.

        You have to add the cookie using the setCookie(Cookie) method after it is properly created.

      • setCookie

        void setCookie(Cookie cookie)
        Sets a cookie.
      • setCookieSession

        void setCookieSession(String name,
                              String value)
        Sets a cookie using the specified name and value.

        By default, the public host (SpincastConfig.getPublicServerHost()) is uses as the cookie's domain and the cookie is valid for the time of the session only.

      • setCookie

        void setCookie(String name,
                       String value,
                       int nbrSecondsToLive)
        Sets a cookie using the specified name, value and number of seconds to live.

        By default, the public host (SpincastConfig.getPublicServerHost()) is uses as the cookie's domain.

      • setCookie

        void setCookie(String name,
                       String value,
                       int nbrSecondsToLive,
                       boolean httpOnly)
        Sets a cookie using the specified name, value, number of seconds to live and if it's http only.

        By default, the public host (SpincastConfig.getPublicServerHost()) is uses as the cookie's domain.

      • setCookie10years

        void setCookie10years(String name,
                              String value)
        Sets a permanent cookie (10 years) using the specified name and value.

        By default, the public host (SpincastConfig.getPublicServerHost()) is uses as the cookie's domain.

      • setCookie

        void setCookie(String name,
                       String value,
                       String path,
                       String domain,
                       Date expires,
                       boolean secure,
                       boolean httpOnly,
                       CookieSameSite cookieSameSite,
                       boolean discard,
                       int version)
        Sets a cookie, using all available configurations.
      • deleteCookie

        void deleteCookie(String name)
        Deletes a cookie. In fact, this sets the cookie's expires date in the past so the user's browser will remove it. isExpired() will return true after you called this method.
      • deleteAllCookiesUserHas

        void deleteAllCookiesUserHas()
        Deletes all cookies! Not only the new cookies that have been added to the response, but also the cookies that have been received in the request!

        In fact, this method sets the expires date of the cookies in the past so the user's browser will remove them.

      • addForm

        void addForm(Form form)
        Adds a Form object to the response's model and links its validation messages to the default "validation" root element.

        In other words, adding a form will result in those elements to the response's model :

        • [formName] => the form itself
        • [validation] => validation messages for the form with keys such as "[formName].something" and "[formName].somethingElse".
      • addForm

        void addForm(Form form,
                     String validationElementName)
        Adds a Form object to the response's model and links its validation messages to the specified validation element.

        In other words, adding a form will result in those elements to the response's model :

        • [formName] => the form itself
        • [validationElementName] => validation messages for the form with keys such as "[formName].something" and "[formName].somethingElse".

Copyright © 2019. All rights reserved.





© 2015 - 2024 Weber Informatics LLC | Privacy Policy