Package fr.gouv.vitam.common.model
Class RequestResponse<T>
- java.lang.Object
-
- fr.gouv.vitam.common.model.RequestResponse<T>
-
- Direct Known Subclasses:
RequestResponseOK
,VitamError
public abstract class RequestResponse<T> extends java.lang.Object
Abstract RequestResponse for all request response in Vitam
-
-
Constructor Summary
Constructors Constructor Description RequestResponse()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description RequestResponse<T>
addHeader(java.lang.String key, java.lang.String value)
java.lang.String
getHeaderString(java.lang.String key)
int
getHttpCode()
int
getStatus()
java.util.Map<java.lang.String,java.lang.String>
getVitamHeaders()
boolean
isOk()
static boolean
isRequestResponseOk(com.fasterxml.jackson.databind.JsonNode requestResponseAsJsonNode)
Check if the JsonNode is a RequestResponse and OKstatic RequestResponse<com.fasterxml.jackson.databind.JsonNode>
parseFromResponse(javax.ws.rs.core.Response response)
Parser the response for a RequestResponse object.
Might return an empty VitamError in case response is empty with only the HttpCode set and the Code set to empty String.static <T> RequestResponse<T>
parseFromResponse(javax.ws.rs.core.Response response, java.lang.Class<T> clazz)
Parser the response for a RequestResponse object.
Might return an empty VitamError in case response is empty with only the HttpCode set and the Code set to empty String.RequestResponse<T>
parseHeadersFromResponse(javax.ws.rs.core.Response response)
static RequestResponseOK<com.fasterxml.jackson.databind.JsonNode>
parseRequestResponseOk(javax.ws.rs.core.Response response)
static <T> RequestResponseOK<T>
parseRequestResponseOk(javax.ws.rs.core.Response response, java.lang.Class<T> clasz)
static VitamError<com.fasterxml.jackson.databind.JsonNode>
parseVitamError(javax.ws.rs.core.Response response)
static <T> VitamError<T>
parseVitamError(javax.ws.rs.core.Response response, java.lang.Class<T> clasz)
RequestResponse<T>
setHttpCode(int httpCode)
com.fasterxml.jackson.databind.JsonNode
toJsonNode()
abstract javax.ws.rs.core.Response
toResponse()
transform a RequestResponse to a standard responsejava.lang.String
toString()
void
unSetVitamHeaders()
-
-
-
Method Detail
-
getHttpCode
public int getHttpCode()
- Returns:
- the httpCode
-
setHttpCode
public RequestResponse<T> setHttpCode(int httpCode)
- Parameters:
httpCode
- the httpCode to set- Returns:
- this
-
getStatus
public int getStatus()
-
isOk
public boolean isOk()
- Returns:
- True if this RequestResponse is an Ok response
-
addHeader
public RequestResponse<T> addHeader(java.lang.String key, java.lang.String value)
-
getHeaderString
public java.lang.String getHeaderString(java.lang.String key)
-
getVitamHeaders
public java.util.Map<java.lang.String,java.lang.String> getVitamHeaders()
-
unSetVitamHeaders
public void unSetVitamHeaders()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
toJsonNode
public com.fasterxml.jackson.databind.JsonNode toJsonNode()
- Returns:
- the Json representation
- Throws:
java.lang.IllegalStateException
- if JsonNode parse exception occurred
-
parseHeadersFromResponse
public RequestResponse<T> parseHeadersFromResponse(javax.ws.rs.core.Response response)
-
parseFromResponse
public static RequestResponse<com.fasterxml.jackson.databind.JsonNode> parseFromResponse(javax.ws.rs.core.Response response) throws java.lang.IllegalStateException
Parser the response for a RequestResponse object.
Might return an empty VitamError in case response is empty with only the HttpCode set and the Code set to empty String.- Parameters:
response
- to parse in RequestResponse- Returns:
- The associate RequestResponseOk or VitamError
- Throws:
java.lang.IllegalStateException
- if the response cannot be parsed to one of the two model
-
parseFromResponse
public static <T> RequestResponse<T> parseFromResponse(javax.ws.rs.core.Response response, java.lang.Class<T> clazz) throws java.lang.IllegalStateException
Parser the response for a RequestResponse object.
Might return an empty VitamError in case response is empty with only the HttpCode set and the Code set to empty String.- Parameters:
response
- to parse in RequestResponse- Returns:
- The associate RequestResponseOk or VitamError
- Throws:
java.lang.IllegalStateException
- if the response cannot be parsed to one of the two model
-
parseRequestResponseOk
public static <T> RequestResponseOK<T> parseRequestResponseOk(javax.ws.rs.core.Response response, java.lang.Class<T> clasz) throws InvalidParseOperationException
- Parameters:
response
- to parse in RequestResponse- Returns:
- the RequestResponseOk
- Throws:
InvalidParseOperationException
- if JsonNode parse exception occurred
-
parseRequestResponseOk
public static RequestResponseOK<com.fasterxml.jackson.databind.JsonNode> parseRequestResponseOk(javax.ws.rs.core.Response response) throws InvalidParseOperationException
- Parameters:
response
- to parse in RequestResponse- Returns:
- the RequestResponseOk
- Throws:
InvalidParseOperationException
- if JsonNode parse exception occurred
-
parseVitamError
public static <T> VitamError<T> parseVitamError(javax.ws.rs.core.Response response, java.lang.Class<T> clasz) throws InvalidParseOperationException
- Parameters:
response
- to parse in RequestResponse- Returns:
- the VitamError
- Throws:
InvalidParseOperationException
- if JsonNode parse exception occurred
-
parseVitamError
public static VitamError<com.fasterxml.jackson.databind.JsonNode> parseVitamError(javax.ws.rs.core.Response response) throws InvalidParseOperationException
- Parameters:
response
- to parse in RequestResponse- Returns:
- the VitamError
- Throws:
InvalidParseOperationException
- if JsonNode parse exception occurred
-
isRequestResponseOk
public static boolean isRequestResponseOk(com.fasterxml.jackson.databind.JsonNode requestResponseAsJsonNode) throws java.lang.IllegalStateException
Check if the JsonNode is a RequestResponse and OK- Parameters:
requestResponseAsJsonNode
- as request response as a JsonNode- Returns:
- true if JsonNode contains httpCode as 2xx or 3xx, false if httpCode as 4xx or 5xx
- Throws:
java.lang.IllegalStateException
- if JsonNode is not a valid instance of requestResponse
-
toResponse
public abstract javax.ws.rs.core.Response toResponse()
transform a RequestResponse to a standard response- Returns:
- Response
-
-