Clients -
http :
HttpCachingClient
An HTTP caching client implementation which takes an HttpActions
instance and wraps it with an HTTP caching layer.
Constructor
__init
(string url, ClientConfiguration config, CacheConfig cacheConfig)
- url string
-
The URL of the HTTP endpoint to connect to
- config ClientConfiguration
-
The configurations for the client endpoint associated with the caching client
- cacheConfig CacheConfig
-
The configurations for the HTTP cache to be used with the caching client
Remote Methods
post | Responses returned for POST requests are not cacheable. Therefore, the requests are simply directed to the origin server. Responses received for POST requests invalidate the cached responses for the same resource. |
head | Responses for HEAD requests are cacheable and as such, will be routed through the HTTP cache. Only if a suitable response cannot be found will the request be directed to the origin server. |
put | Responses returned for PUT requests are not cacheable. Therefore, the requests are simply directed to the origin server. In addition, PUT requests invalidate the currently stored responses for the given path. |
execute | Invokes an HTTP call with the specified HTTP method. This is not a cacheable operation, unless the HTTP method used is GET or HEAD. |
patch | Responses returned for PATCH requests are not cacheable. Therefore, the requests are simply directed to the origin server. Responses received for PATCH requests invalidate the cached responses for the same resource. |
delete | Responses returned for DELETE requests are not cacheable. Therefore, the requests are simply directed to the origin server. Responses received for DELETE requests invalidate the cached responses for the same resource. |
get | Responses for GET requests are cacheable and as such, will be routed through the HTTP cache. Only if a suitable response cannot be found will the request be directed to the origin server. |
options | Responses returned for OPTIONS requests are not cacheable. Therefore, the requests are simply directed to the origin server. Responses received for OPTIONS requests invalidate the cached responses for the same resource. |
forward | Forward remote function can be used to invoke an HTTP call with inbound request's HTTP method. Only inbound requests of GET and HEAD HTTP method types are cacheable. |
submit | Submits an HTTP request to a service with the specified HTTP verb. |
getResponse | Retrieves the http:Response for a previously-submitted request.
|
hasPromise | Checks whether an http:PushPromise exists for a previously-submitted request.
|
getNextPromise | Retrieves the next available http:PushPromise for a previously-submitted request.
|
getPromisedResponse | Retrieves the promised server push http:Response message.
|
rejectPromise | Rejects an http:PushPromise . When an http:PushPromise is rejected, there is no chance of fetching a promised
response using the rejected promise.
|
Fields
- url string
-
The URL of the remote HTTP endpoint
- config ClientConfiguration (default {})
-
The configurations of the client endpoint associated with this
CachingActions
instance
- httpClient HttpClient
-
The underlying
HttpActions
instance which will be making the actual network calls
- cache HttpCache
-
The cache storage for the HTTP responses
- cacheConfig CacheConfig (default {})
-
Configurations for the underlying cache storage and for controlling the HTTP caching behaviour
Parameters
- path string
-
Resource path
- message RequestMessage
-
HTTP request or any payload of type
string
,xml
,json
,byte[]
,io:ReadableByteChannel
ormime:Entity[]
-
Return Type
(Response | ClientError) The response for the request or an
http:ClientError
if failed to establish communication with the upstream server
Parameters
- path string
-
Resource path
- message RequestMessage (default <(ballerina/http:Request|string|xml|json|byte[]|ballerina/io:ReadableByteChannel|ballerina/mime:Entity[])> ())
-
An optional HTTP request or any payload of type
string
,xml
,json
,byte[]
,io:ReadableByteChannel
ormime:Entity[]
-
Return Type
(Response | ClientError) The response for the request or an
http:ClientError
if failed to establish communication with the upstream server
Parameters
- path string
-
Resource path
- message RequestMessage
-
An optional HTTP request or any payload of type
string
,xml
,json
,byte[]
,io:ReadableByteChannel
ormime:Entity[]
-
Return Type
(Response | ClientError) The response for the request or an
http:ClientError
if failed to establish communication with the upstream server
Parameters
- httpMethod string
-
HTTP method to be used for the request
- path string
-
Resource path
- message RequestMessage
-
An HTTP request or any payload of type
string
,xml
,json
,byte[]
,io:ReadableByteChannel
ormime:Entity[]
-
Return Type
(Response | ClientError) The response for the request or an
http:ClientError
if failed to establish communication with the upstream server
Parameters
- path string
-
Resource path
- message RequestMessage
-
An HTTP request or any payload of type
string
,xml
,json
,byte[]
,io:ReadableByteChannel
ormime:Entity[]
-
Return Type
(Response | ClientError) The response for the request or an
http:ClientError
if failed to establish communication with the upstream server
Parameters
- path string
-
Resource path
- message RequestMessage (default <(ballerina/http:Request|string|xml|json|byte[]|ballerina/io:ReadableByteChannel|ballerina/mime:Entity[])> ())
-
An HTTP request or any payload of type
string
,xml
,json
,byte[]
,io:ReadableByteChannel
ormime:Entity[]
-
Return Type
(Response | ClientError) The response for the request or an
http:ClientError
if failed to establish communication with the upstream server
Parameters
- path string
-
Request path
- message RequestMessage (default <(ballerina/http:Request|string|xml|json|byte[]|ballerina/io:ReadableByteChannel|ballerina/mime:Entity[])> ())
-
An optional HTTP request or any payload of type
string
,xml
,json
,byte[]
,io:ReadableByteChannel
ormime:Entity[]
-
Return Type
(Response | ClientError) The response for the request or an
http:ClientError
if failed to establish communication with the upstream server
Parameters
- path string
-
Request path
- message RequestMessage (default <(ballerina/http:Request|string|xml|json|byte[]|ballerina/io:ReadableByteChannel|ballerina/mime:Entity[])> ())
-
An optional HTTP request or any payload of type
string
,xml
,json
,byte[]
,io:ReadableByteChannel
ormime:Entity[]
-
Return Type
(Response | ClientError) The response for the request or an
http:ClientError
if failed to establish communication with the upstream server
-
Return Type
(Response | ClientError) The response for the request or an
http:ClientError
if failed to establish communication with the upstream server
Parameters
- httpVerb string
-
The HTTP verb value
- path string
-
The resource path
- message RequestMessage
-
An HTTP request or any payload of type
string
,xml
,json
,byte[]
,io:ReadableByteChannel
ormime:Entity[]
-
Return Type
(HttpFuture | ClientError) An
HttpFuture
that represents an asynchronous service invocation, or an error if the submission fails
http:Response
for a previously-submitted request.
Parameters
- httpFuture HttpFuture
-
The
http:HttpFuture
related to a previous asynchronous invocation
-
Return Type
(Response | ClientError) A
http:Response
message, or else anhttp:ClientError
if the invocation fails
http:PushPromise
exists for a previously-submitted request.
Parameters
- httpFuture HttpFuture
-
The
http:HttpFuture
relates to a previous asynchronous invocation
-
Return Type
(boolean) A
boolean
, which represents whether anhttp:PushPromise
exists
http:PushPromise
for a previously-submitted request.
Parameters
- httpFuture HttpFuture
-
The
http:HttpFuture
relates to a previous asynchronous invocation
-
Return Type
(PushPromise | ClientError) An
http:PushPromise
message or else anhttp:ClientError
if the invocation fails
http:Response
message.
Parameters
- promise PushPromise
-
The related
http:PushPromise
-
Return Type
(Response | ClientError) A promised HTTP
http:Response
message or else anhttp:ClientError
if the invocation fails
http:PushPromise
. When an http:PushPromise
is rejected, there is no chance of fetching a promised
response using the rejected promise.
Parameters
- promise PushPromise
-
The Push Promise to be rejected