Package org.rundeck.app.web
Interface WebUtilService
-
public interface WebUtilService
Utility methods provided for web requests
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.String
extractResponseFormat(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.util.List<java.lang.String> allowed)
Determine appropriate response format based on allowed formats or request format.java.lang.String
extractResponseFormat(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.util.List<java.lang.String> allowed, java.lang.String defformat)
Determine appropriate response format based on allowed formats or request format.java.lang.Integer
getRequestApiVersion(javax.servlet.http.HttpServletRequest request)
boolean
isApiRequest(javax.servlet.http.HttpServletRequest request)
boolean
parseJsonXmlWith(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.util.Map<java.lang.String,java.util.function.Consumer<java.lang.Object>> handlers)
Parse XML or JSON input formatted data, and handle with appropriate closure.void
renderErrorFormat(javax.servlet.http.HttpServletResponse response, java.util.Map<java.lang.String,java.lang.Object> error)
Render error in either JSON or XML format, depending on expected responsevoid
renderErrorJson(javax.servlet.http.HttpServletResponse response, java.util.Map<java.lang.String,java.lang.Object> error)
void
renderErrorXml(javax.servlet.http.HttpServletResponse response, java.util.Map<java.lang.String,java.lang.Object> error)
boolean
requireApi(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
Require API requestboolean
requireApi(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, int min)
Require API request with a minimum API versionboolean
requireRequestFormat(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.util.List<java.lang.String> allowed)
Require request to be a certain format, returns false if not valid and error response is already sentboolean
requireRequestFormat(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.util.List<java.lang.String> allowed, java.lang.String responseFormat)
Require request to be a certain format, returns false if not valid and error response is already sentboolean
requireVersion(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, int min)
Require API version minimumvoid
respondError(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.lang.String code, int status, java.util.List<?> args)
Return an error responsevoid
respondOutput(javax.servlet.http.HttpServletResponse response, java.lang.String contentType, java.lang.String output)
Output response content
-
-
-
Method Detail
-
renderErrorFormat
void renderErrorFormat(javax.servlet.http.HttpServletResponse response, java.util.Map<java.lang.String,java.lang.Object> error)
Render error in either JSON or XML format, depending on expected response- Parameters:
response
-error
-
-
renderErrorJson
void renderErrorJson(javax.servlet.http.HttpServletResponse response, java.util.Map<java.lang.String,java.lang.Object> error)
-
renderErrorXml
void renderErrorXml(javax.servlet.http.HttpServletResponse response, java.util.Map<java.lang.String,java.lang.Object> error)
-
requireApi
boolean requireApi(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, int min)
Require API request with a minimum API version- Parameters:
request
-response
-min
-
-
requireApi
boolean requireApi(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
Require API request- Parameters:
request
-response
-
-
requireVersion
boolean requireVersion(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, int min)
Require API version minimum- Parameters:
request
-response
-min
-
-
parseJsonXmlWith
boolean parseJsonXmlWith(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.util.Map<java.lang.String,java.util.function.Consumer<java.lang.Object>> handlers)
Parse XML or JSON input formatted data, and handle with appropriate closure. If the input format is not supported, or there is an error parsing the input, an error response is sent, and false is returned.- Parameters:
request
- requestresponse
- responsehandlers
- handler map, using keys 'xml' or 'json'.- Returns:
- true if parsing was successful, false if an error occurred and a response has already been sent
-
requireRequestFormat
boolean requireRequestFormat(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.util.List<java.lang.String> allowed, java.lang.String responseFormat)
Require request to be a certain format, returns false if not valid and error response is already sent- Parameters:
request
- requestresponse
- responseallowed
- allowed formats or mime-typesresponseFormat
- response format to send ('xml' or 'json') if request is not valid, or null to use default- Returns:
- true if valid, false otherwise
-
requireRequestFormat
boolean requireRequestFormat(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.util.List<java.lang.String> allowed)
Require request to be a certain format, returns false if not valid and error response is already sent- Parameters:
request
- requestresponse
- responseallowed
- allowed formats or mime-types- Returns:
- true if valid, false otherwise
-
getRequestApiVersion
java.lang.Integer getRequestApiVersion(javax.servlet.http.HttpServletRequest request)
- Parameters:
request
- request- Returns:
- api version or null if not an API request
-
isApiRequest
boolean isApiRequest(javax.servlet.http.HttpServletRequest request)
- Parameters:
request
-- Returns:
- true if request is API request
-
respondError
void respondError(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.lang.String code, int status, java.util.List<?> args)
Return an error response- Parameters:
request
-response
-code
-status
-args
-
-
extractResponseFormat
java.lang.String extractResponseFormat(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.util.List<java.lang.String> allowed, java.lang.String defformat)
Determine appropriate response format based on allowed formats or request format. If the requested response type is in the allowed formats it is returned, otherwise if a default format is specified it is used. If the response format is not in the allowed formats and no default is specified, the request content type format is returned.- Parameters:
request
- requestresponse
- responseallowed
- list of allowed formatsdefformat
- default format, or null to use the request format- Returns:
- format name
-
extractResponseFormat
java.lang.String extractResponseFormat(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.util.List<java.lang.String> allowed)
Determine appropriate response format based on allowed formats or request format. If the requested response type is in the allowed formats it is returned, otherwise if a default format is specified it is used. If the response format is not in the allowed formats and no default is specified, the request content type format is returned.- Parameters:
request
- requestresponse
- responseallowed
- list of allowed formats- Returns:
- format name
-
respondOutput
void respondOutput(javax.servlet.http.HttpServletResponse response, java.lang.String contentType, java.lang.String output)
Output response content- Parameters:
response
-contentType
-output
-
-
-