Package org.sonar.api.server.ws
Class Request
- java.lang.Object
-
- org.sonar.api.server.ws.Request
-
public abstract class Request extends java.lang.Object
- Since:
- 4.2
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
Request.Param<T>
Represents a Request parameter, provides information whether is was specified or not (checkRequest.Param.isPresent()
) and utility method to nicely handles cases where the parameter is not present.static interface
Request.Part
static interface
Request.StringParam
ExtendsRequest.Param
with convenience methods specific to the typeString
.
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.String
MSG_PARAMETER_MISSING
-
Constructor Summary
Constructors Constructor Description Request()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description java.util.Map<java.lang.String,java.lang.String>
getHeaders()
abstract java.lang.String
getMediaType()
Returns the requested MIME type, or"application/octet-stream"
if not specified.Request.StringParam
getParam(java.lang.String key)
<T> Request.Param<T>
getParam(java.lang.String key, java.util.function.BiFunction<Request,java.lang.String,T> retrieveAndValidate)
Request.StringParam
getParam(java.lang.String key, java.util.function.Consumer<java.lang.String> validate)
abstract java.util.Map<java.lang.String,java.lang.String[]>
getParams()
abstract java.lang.String
getPath()
Return path of the requestjava.io.BufferedReader
getReader()
abstract boolean
hasParam(java.lang.String key)
Return true of the parameter is set in the request.abstract java.util.Optional<java.lang.String>
header(java.lang.String name)
Optional value of the HTTP header with specified name.abstract LocalConnector
localConnector()
Allows a web service to call another web service.java.util.List<java.lang.String>
mandatoryMultiParam(java.lang.String key)
java.lang.String
mandatoryParam(java.lang.String key)
Returns a non-null value.boolean
mandatoryParamAsBoolean(java.lang.String key)
Returns a boolean value.<E extends java.lang.Enum<E>>
EmandatoryParamAsEnum(java.lang.String key, java.lang.Class<E> enumClass)
int
mandatoryParamAsInt(java.lang.String key)
Returns an int value.long
mandatoryParamAsLong(java.lang.String key)
Returns a long value.Request.Part
mandatoryParamAsPart(java.lang.String key)
java.util.List<java.lang.String>
mandatoryParamAsStrings(java.lang.String key)
abstract java.lang.String
method()
Returns the name of the HTTP method with which this request was made.abstract java.util.List<java.lang.String>
multiParam(java.lang.String key)
abstract java.lang.String
param(java.lang.String key)
java.lang.Boolean
paramAsBoolean(java.lang.String key)
java.util.Date
paramAsDate(java.lang.String key)
java.util.Date
paramAsDateTime(java.lang.String key)
<E extends java.lang.Enum<E>>
EparamAsEnum(java.lang.String key, java.lang.Class<E> enumClass)
<E extends java.lang.Enum<E>>
java.util.List<E>paramAsEnums(java.lang.String key, java.lang.Class<E> enumClass)
abstract java.io.InputStream
paramAsInputStream(java.lang.String key)
java.lang.Integer
paramAsInt(java.lang.String key)
java.lang.Long
paramAsLong(java.lang.String key)
abstract Request.Part
paramAsPart(java.lang.String key)
abstract java.util.List<java.lang.String>
paramAsStrings(java.lang.String key)
-
-
-
Field Detail
-
MSG_PARAMETER_MISSING
protected static final java.lang.String MSG_PARAMETER_MISSING
- See Also:
- Constant Field Values
-
-
Method Detail
-
method
public abstract java.lang.String method()
Returns the name of the HTTP method with which this request was made. Possible values are GET and POST. Others are not supported.
-
getReader
public java.io.BufferedReader getReader()
-
getMediaType
public abstract java.lang.String getMediaType()
Returns the requested MIME type, or"application/octet-stream"
if not specified.
-
hasParam
public abstract boolean hasParam(java.lang.String key)
Return true of the parameter is set in the request. Does NOT take into account the deprecated key of a parameter.
-
mandatoryParam
public java.lang.String mandatoryParam(java.lang.String key)
Returns a non-null value. To be used when parameter is required or has a default value.- Throws:
java.lang.IllegalArgumentException
- is value is null or blank
-
mandatoryParamAsBoolean
public boolean mandatoryParamAsBoolean(java.lang.String key)
Returns a boolean value. To be used when parameter is required or has a default value.- Throws:
java.lang.IllegalArgumentException
- is value is null or blank
-
mandatoryParamAsInt
public int mandatoryParamAsInt(java.lang.String key)
Returns an int value. To be used when parameter is required or has a default value.- Throws:
java.lang.IllegalArgumentException
- is value is null or blank
-
mandatoryParamAsLong
public long mandatoryParamAsLong(java.lang.String key)
Returns a long value. To be used when parameter is required or has a default value.- Throws:
java.lang.IllegalArgumentException
- is value is null or blank
-
mandatoryParamAsEnum
public <E extends java.lang.Enum<E>> E mandatoryParamAsEnum(java.lang.String key, java.lang.Class<E> enumClass)
-
mandatoryParamAsStrings
public java.util.List<java.lang.String> mandatoryParamAsStrings(java.lang.String key)
-
mandatoryMultiParam
public java.util.List<java.lang.String> mandatoryMultiParam(java.lang.String key)
-
paramAsStrings
@CheckForNull public abstract java.util.List<java.lang.String> paramAsStrings(java.lang.String key)
-
getParams
public abstract java.util.Map<java.lang.String,java.lang.String[]> getParams()
-
param
@CheckForNull public abstract java.lang.String param(java.lang.String key)
-
multiParam
public abstract java.util.List<java.lang.String> multiParam(java.lang.String key)
-
paramAsInputStream
@CheckForNull public abstract java.io.InputStream paramAsInputStream(java.lang.String key)
-
paramAsPart
@CheckForNull public abstract Request.Part paramAsPart(java.lang.String key)
-
mandatoryParamAsPart
public Request.Part mandatoryParamAsPart(java.lang.String key)
-
paramAsBoolean
@CheckForNull public java.lang.Boolean paramAsBoolean(java.lang.String key)
-
paramAsInt
@CheckForNull public java.lang.Integer paramAsInt(java.lang.String key)
-
paramAsLong
@CheckForNull public java.lang.Long paramAsLong(java.lang.String key)
-
paramAsEnum
@CheckForNull public <E extends java.lang.Enum<E>> E paramAsEnum(java.lang.String key, java.lang.Class<E> enumClass)
-
paramAsEnums
@CheckForNull public <E extends java.lang.Enum<E>> java.util.List<E> paramAsEnums(java.lang.String key, java.lang.Class<E> enumClass)
-
paramAsDateTime
@CheckForNull public java.util.Date paramAsDateTime(java.lang.String key)
-
paramAsDate
@CheckForNull public java.util.Date paramAsDate(java.lang.String key)
-
getParam
public <T> Request.Param<T> getParam(java.lang.String key, java.util.function.BiFunction<Request,java.lang.String,T> retrieveAndValidate)
-
getParam
public Request.StringParam getParam(java.lang.String key, java.util.function.Consumer<java.lang.String> validate)
-
getParam
public Request.StringParam getParam(java.lang.String key)
-
header
public abstract java.util.Optional<java.lang.String> header(java.lang.String name)
Optional value of the HTTP header with specified name. If present, the result can have an empty string value (""
).- Since:
- 6.6
-
getHeaders
public java.util.Map<java.lang.String,java.lang.String> getHeaders()
-
localConnector
public abstract LocalConnector localConnector()
Allows a web service to call another web service.- Since:
- 5.5
- See Also:
LocalConnector
-
getPath
public abstract java.lang.String getPath()
Return path of the request- Since:
- 6.0
-
-