Package com.okta.sdk.ds
Interface RequestBuilder
-
public interface RequestBuilder
A RequestBuilder allows for makingResource
based request to any Okta endpoint. Not all Okta endpoints are implemented by this SDK currently, this interface allow to make requests with:- Any Resource as the request
body
- Setting query parameters
- GET, POST, PUT, and DELETE requests
// create a resource Resource userPasswordRequest = client.instantiate(ExtensibleResource) userPasswordRequest.put("credentials", client.instantiate(ExtensibleResource) .put("password", client.instantiate(ExtensibleResource) .put("value", "aPassword1!".toCharArray()))) // make a POST request to `/api/v1/users/{userId}` and return a User resource User result = client.getDataStore().http() .setBody(userPasswordRequest) .post("/api/v1/users/"+ userId, User.class)
- Since:
- 1.2.0
- Any Resource as the request
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description RequestBuilder
addHeaderParameter(java.lang.String key, java.lang.String value)
Adds a header parameter to the request builder.RequestBuilder
addHeaderParameter(java.lang.String key, java.util.List<java.lang.String> values)
Adds a header parameter to the request builder.RequestBuilder
addQueryParameter(java.lang.String key, java.lang.String value)
Adds a query parameter to the request builder.void
delete(java.lang.String href)
Executes aDELETE
request.<T extends Resource>
Tget(java.lang.String href, java.lang.Class<T> type)
Executes aGET
request and returns a Resource.java.io.InputStream
getRaw(java.lang.String href)
Executes aGET
request and returns a raw response.default void
post(java.lang.String href)
Executes aPOST
request.<T extends Resource>
Tpost(java.lang.String href, java.lang.Class<T> type)
Executes aPOST
request and returns a Resource.void
put(java.lang.String href)
Executes aPUT
request and updates the resource used as thebody
.RequestBuilder
setBody(Resource resource)
Sets the Resource body for the request.RequestBuilder
setHeaderParameters(java.util.Map<java.lang.String,java.util.List<java.lang.String>> headerParams)
Sets the header parameters to be used for the request.RequestBuilder
setQueryParameters(java.util.Map<java.lang.String,java.lang.String> queryParams)
Sets the query parameters to be used for the request.
-
-
-
Method Detail
-
setBody
RequestBuilder setBody(Resource resource)
Sets the Resource body for the request.- Parameters:
resource
- the request body- Returns:
- the RequestBuilder to allow for chaining methods.
-
addQueryParameter
RequestBuilder addQueryParameter(java.lang.String key, java.lang.String value)
Adds a query parameter to the request builder.- Parameters:
key
- the query parameter field namevalue
- the query parameter field value- Returns:
- the RequestBuilder to allow for chaining methods.
-
setQueryParameters
RequestBuilder setQueryParameters(java.util.Map<java.lang.String,java.lang.String> queryParams)
Sets the query parameters to be used for the request.- Parameters:
queryParams
- the query parameters to be used for the request- Returns:
- the RequestBuilder to allow for chaining methods.
-
addHeaderParameter
RequestBuilder addHeaderParameter(java.lang.String key, java.lang.String value)
Adds a header parameter to the request builder.- Parameters:
key
- the header parameter field namevalue
- the header parameter field value- Returns:
- the RequestBuilder to allow for chaining methods.
-
addHeaderParameter
RequestBuilder addHeaderParameter(java.lang.String key, java.util.List<java.lang.String> values)
Adds a header parameter to the request builder.- Parameters:
key
- the header parameter field namevalues
- the header parameter field values- Returns:
- the RequestBuilder to allow for chaining methods.
-
setHeaderParameters
RequestBuilder setHeaderParameters(java.util.Map<java.lang.String,java.util.List<java.lang.String>> headerParams)
Sets the header parameters to be used for the request.- Parameters:
headerParams
- the header parameters to be used for the request- Returns:
- the RequestBuilder to allow for chaining methods.
-
get
<T extends Resource> T get(java.lang.String href, java.lang.Class<T> type)
Executes aGET
request and returns a Resource.- Type Parameters:
T
- the Resource type to return- Parameters:
href
- an absolute or partial HREFtype
- the Resource type to return- Returns:
- The response payload unmarshalled into a Resource
-
getRaw
java.io.InputStream getRaw(java.lang.String href)
Executes aGET
request and returns a raw response.- Parameters:
href
- an absolute or partial HREF- Returns:
- The response payload as InputStream
-
put
void put(java.lang.String href)
Executes aPUT
request and updates the resource used as thebody
.- Parameters:
href
- an absolute or partial HREF
-
post
<T extends Resource> T post(java.lang.String href, java.lang.Class<T> type)
Executes aPOST
request and returns a Resource.- Type Parameters:
T
- the Resource type to return- Parameters:
href
- an absolute or partial HREFtype
- the Resource type to return- Returns:
- The response payload unmarshalled into a Resource
-
post
default void post(java.lang.String href)
Executes aPOST
request.- Parameters:
href
- an absolute or partial HREF
-
delete
void delete(java.lang.String href)
Executes aDELETE
request.- Parameters:
href
- an absolute or partial HREF
-
-