Interface ActionRequest
-
-
Field Summary
Fields Modifier and Type Field Description static String
ACTION_ID_CREATE
The name of the action which is reserved for performing "create" operations.static String
FIELD_ACTION
The name of the field which contains the action ID in the JSON representation.static String
FIELD_CONTENT
The name of the field which contains the action content in the JSON representation.-
Fields inherited from interface org.forgerock.json.resource.Request
FIELD_ADDITIONAL_PARAMETERS, FIELD_FIELDS, FIELD_RESOURCE_PATH, FIELD_VALUE_ALL
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <R,P>
Raccept(RequestVisitor<R,P> v, P p)
Applies aRequestVisitor
to thisRequest
.ActionRequest
addField(String... fields)
Adds one or more fields which should be included with each JSON resource returned by this request.ActionRequest
addField(JsonPointer... fields)
Adds one or more fields which should be included with each JSON resource returned by this request.String
getAction()
Returns the ID of the action to be performed by this action request.<T extends Enum<T>>
TgetActionAsEnum(Class<T> type)
Returns the ID of the action to be performed by this action request as a enum constant of the specified enum type.String
getAdditionalParameter(String name)
Returns the additional parameter which should be used to control the behavior of this action request.Map<String,String>
getAdditionalParameters()
Returns the additional parameters which should be used to control the behavior of this action request.JsonValue
getContent()
Returns the content of this action request.List<JsonPointer>
getFields()
Returns the list of fields which should be included with each JSON resource returned by this request.PreferredLocales
getPreferredLocales()
Get the locale preference for the request.RequestType
getRequestType()
Returns the type of this request.String
getResourcePath()
Returns the non-null
path of the JSON resource to which this request should be targeted.ResourcePath
getResourcePathObject()
Returns the non-null
path of the JSON resource to which this request should be targeted.Version
getResourceVersion()
Gets the requested API version of the resource.ActionRequest
setAction(String id)
Sets the ID of the action to be performed by this action request.ActionRequest
setAdditionalParameter(String name, String value)
Sets an additional parameter which should be used to control the behavior of this action request.ActionRequest
setContent(JsonValue content)
Sets the content of this action request.ActionRequest
setPreferredLocales(PreferredLocales preferredLocales)
Set the locale preference for the request.ActionRequest
setResourcePath(String path)
Sets the non-null
path of the JSON resource to which this request should be targeted.ActionRequest
setResourcePath(ResourcePath path)
Sets the non-null
path of the JSON resource to which this request should be targeted.ActionRequest
setResourceVersion(Version resourceVersion)
Sets the requested API version of the resource.JsonValue
toJsonValue()
Return a JsonValue representation of this request.
-
-
-
Field Detail
-
ACTION_ID_CREATE
static final String ACTION_ID_CREATE
The name of the action which is reserved for performing "create" operations.- See Also:
- Constant Field Values
-
FIELD_ACTION
static final String FIELD_ACTION
The name of the field which contains the action ID in the JSON representation.- See Also:
- Constant Field Values
-
FIELD_CONTENT
static final String FIELD_CONTENT
The name of the field which contains the action content in the JSON representation.- See Also:
- Constant Field Values
-
-
Method Detail
-
accept
<R,P> R accept(RequestVisitor<R,P> v, P p)
Description copied from interface:Request
Applies aRequestVisitor
to thisRequest
.
-
addField
ActionRequest addField(JsonPointer... fields)
Description copied from interface:Request
Adds one or more fields which should be included with each JSON resource returned by this request.
-
addField
ActionRequest addField(String... fields)
Description copied from interface:Request
Adds one or more fields which should be included with each JSON resource returned by this request.
-
getAction
String getAction()
Returns the ID of the action to be performed by this action request.- Returns:
- The ID of the action to be performed by this action request.
-
getActionAsEnum
<T extends Enum<T>> T getActionAsEnum(Class<T> type)
Returns the ID of the action to be performed by this action request as a enum constant of the specified enum type. The action ID string and enum constants are compared, ignoring case considerations.- Type Parameters:
T
- the enum type sub-class.- Parameters:
type
- the enum type to match constants with the value.- Returns:
- the enum constant represented by the Id of the action to be performed by this action request.
- Throws:
IllegalArgumentException
- iftype
does not represent an enum type, or if the ID does not match any of the enum's constants.NullPointerException
- iftype
isnull
.
-
getAdditionalParameter
String getAdditionalParameter(String name)
Description copied from interface:Request
Returns the additional parameter which should be used to control the behavior of this action request.- Specified by:
getAdditionalParameter
in interfaceRequest
- Parameters:
name
- The name of the additional parameter.- Returns:
- The additional parameter which should be used to control the behavior of this action request
-
getAdditionalParameters
Map<String,String> getAdditionalParameters()
Description copied from interface:Request
Returns the additional parameters which should be used to control the behavior of this action request. The returned map may be modified if permitted by this action request.- Specified by:
getAdditionalParameters
in interfaceRequest
- Returns:
- The additional parameters which should be used to control the behavior of this action request (never
null
).
-
getContent
JsonValue getContent()
Returns the content of this action request. The structure of the content is defined by the action.- Returns:
- The content of this action request.
-
getFields
List<JsonPointer> getFields()
Description copied from interface:Request
Returns the list of fields which should be included with each JSON resource returned by this request. The returned list may be modified if permitted by this query request. An empty list indicates that all fields should be included.NOTE: field filtering alters the structure of a JSON resource and MUST only be performed once while processing a request. It is therefore the responsibility of front-end implementations (e.g. HTTP listeners, Servlets, etc) to perform field filtering. Request handler and resource provider implementations SHOULD NOT filter fields, but MAY choose to optimise their processing in order to return a resource containing only the fields targeted by the field filters.
-
getPreferredLocales
PreferredLocales getPreferredLocales()
Description copied from interface:Request
Get the locale preference for the request.- Specified by:
getPreferredLocales
in interfaceRequest
- Returns:
- The
PreferredLocales
instance for the request.
-
getRequestType
RequestType getRequestType()
Description copied from interface:Request
Returns the type of this request.- Specified by:
getRequestType
in interfaceRequest
- Returns:
- The type of this request.
-
getResourcePath
String getResourcePath()
Description copied from interface:Request
Returns the non-null
path of the JSON resource to which this request should be targeted. The resource path is relative and never begins or ends with a forward slash, but may be empty.NOTE: for resource provider implementations the resource path is relative to the current resource being accessed. See the description of
UriRouterContext
for more information.- Specified by:
getResourcePath
in interfaceRequest
- Returns:
- The non-
null
path of the JSON resource to which this request should be targeted, which may be the empty string.
-
getResourcePathObject
ResourcePath getResourcePathObject()
Description copied from interface:Request
Returns the non-null
path of the JSON resource to which this request should be targeted. The resource path is relative and never begins or ends with a forward slash, but may be empty.NOTE: for resource provider implementations the resource path is relative to the current resource being accessed. See the description of
UriRouterContext
for more information.- Specified by:
getResourcePathObject
in interfaceRequest
- Returns:
- The non-
null
path of the JSON resource to which this request should be targeted, which may be the empty string.
-
getResourceVersion
Version getResourceVersion()
Description copied from interface:Request
Gets the requested API version of the resource.- Specified by:
getResourceVersion
in interfaceRequest
- Returns:
- The requested API version of the resource.
-
setAction
ActionRequest setAction(String id)
Sets the ID of the action to be performed by this action request.- Parameters:
id
- The ID of the action to be performed by this action request.- Returns:
- This action request.
- Throws:
UnsupportedOperationException
- If this action request does not permit changes to the action ID.
-
setAdditionalParameter
ActionRequest setAdditionalParameter(String name, String value) throws BadRequestException
Description copied from interface:Request
Sets an additional parameter which should be used to control the behavior of this action request.- Specified by:
setAdditionalParameter
in interfaceRequest
- Parameters:
name
- The name of the additional parameter.value
- The additional parameter's value.- Returns:
- This request.
- Throws:
BadRequestException
- If this request does not permit the additional parameter to be set.
-
setContent
ActionRequest setContent(JsonValue content)
Sets the content of this action request. The structure of the content is defined by the action.- Parameters:
content
- The content of this action request.- Returns:
- This action request.
- Throws:
UnsupportedOperationException
- If this action request does not permit changes to the content.
-
setPreferredLocales
ActionRequest setPreferredLocales(PreferredLocales preferredLocales)
Description copied from interface:Request
Set the locale preference for the request.- Specified by:
setPreferredLocales
in interfaceRequest
- Parameters:
preferredLocales
- ThePreferredLocales
instance for the request.- Returns:
- This request.
-
setResourcePath
ActionRequest setResourcePath(ResourcePath path)
Description copied from interface:Request
Sets the non-null
path of the JSON resource to which this request should be targeted. The resource path is relative and never begins or ends with a forward slash, but may be empty.NOTE: for resource provider implementations the resource path is relative to the current resource being accessed. See the description of
UriRouterContext
for more information.- Specified by:
setResourcePath
in interfaceRequest
- Parameters:
path
- The non-null
path of the JSON resource to which this request should be targeted, which may be the empty string.- Returns:
- This request.
-
setResourcePath
ActionRequest setResourcePath(String path)
Description copied from interface:Request
Sets the non-null
path of the JSON resource to which this request should be targeted. The resource path is relative and never begins or ends with a forward slash, but may be empty.NOTE: for resource provider implementations the resource path is relative to the current resource being accessed. See the description of
UriRouterContext
for more information.- Specified by:
setResourcePath
in interfaceRequest
- Parameters:
path
- The non-null
path of the JSON resource to which this request should be targeted, which may be the empty string. The path should be URL-encoded.- Returns:
- This request.
-
setResourceVersion
ActionRequest setResourceVersion(Version resourceVersion)
Description copied from interface:Request
Sets the requested API version of the resource.- Specified by:
setResourceVersion
in interfaceRequest
- Parameters:
resourceVersion
- The requested API version of the resource.- Returns:
- This request.
-
toJsonValue
JsonValue toJsonValue()
Description copied from interface:Request
Return a JsonValue representation of this request.- Specified by:
toJsonValue
in interfaceRequest
- Returns:
- this request as a JsonValue
-
-