Class NativeHTTPDataLoader
java.lang.Object
eu.europa.esig.dss.spi.client.http.NativeHTTPDataLoader
- All Implemented Interfaces:
DataLoader,Serializable
Implementation of native java DataLoader using the java.net.URL class.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static enumAvailable HTTPMethodsNested classes/interfaces inherited from interface eu.europa.esig.dss.spi.client.http.DataLoader
DataLoader.DataAndUrl -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor instantiating object with null values -
Method Summary
Modifier and TypeMethodDescriptionprotected Callable<byte[]> createNativeDataLoaderCall(String url, NativeHTTPDataLoader.HttpMethod method, byte[] content, boolean refresh) This method creates a task call to be executed by NativeHTTPDataLoaderbyte[]Execute a HTTP GET operation.byte[]Executes a GET request to the provided URL, with a forced cacherefreshwhen definedExecute a HTTP GET operation.intGets the timeout value on connection establishment with a remote resourceintGets the maximum InputStream sizeintGets the timeout value on response reading from a remote resourcebyte[]Executes a HTTP POST operationprotected byte[]request(String url, NativeHTTPDataLoader.HttpMethod method, byte[] content, boolean refresh) Execute the requestvoidsetConnectTimeout(int connectTimeout) Sets the timeout to establish a connection with a remote resource (in milliseconds).voidsetContentType(String contentType) This allows to set the content type.voidsetMaxInputSize(int maxInputSize) Sets the maximum InputStream sizevoidsetReadTimeout(int readTimeout) Sets the timeout to read a response from a remote resource (in milliseconds).
-
Constructor Details
-
NativeHTTPDataLoader
public NativeHTTPDataLoader()Default constructor instantiating object with null values
-
-
Method Details
-
setContentType
Description copied from interface:DataLoaderThis allows to set the content type. Example: Content-Type "application/ocsp-request"- Specified by:
setContentTypein interfaceDataLoader- Parameters:
contentType- to set the Content-Type
-
getMaxInputSize
public int getMaxInputSize()Gets the maximum InputStream size- Returns:
- maximum InputStream size
-
setMaxInputSize
public void setMaxInputSize(int maxInputSize) Sets the maximum InputStream size- Parameters:
maxInputSize- maximum InputStream size
-
getConnectTimeout
public int getConnectTimeout()Gets the timeout value on connection establishment with a remote resource- Returns:
- connection timeout value
-
setConnectTimeout
public void setConnectTimeout(int connectTimeout) Sets the timeout to establish a connection with a remote resource (in milliseconds). Zero (0) value is used for no timeout. Default: 0 (no timeout)- Parameters:
connectTimeout- connection timeout value (in milliseconds)
-
getReadTimeout
public int getReadTimeout()Gets the timeout value on response reading from a remote resource- Returns:
- read timeout value
-
setReadTimeout
public void setReadTimeout(int readTimeout) Sets the timeout to read a response from a remote resource (in milliseconds). Zero (0) value is used for no timeout. Default: 0 (no timeout)- Parameters:
readTimeout- read timeout value (in milliseconds)
-
request
protected byte[] request(String url, NativeHTTPDataLoader.HttpMethod method, byte[] content, boolean refresh) Execute the request- Parameters:
url-Stringmethod-NativeHTTPDataLoader.HttpMethodcontent- request contentrefresh- if enforce the refresh- Returns:
- response binaries
-
createNativeDataLoaderCall
protected Callable<byte[]> createNativeDataLoaderCall(String url, NativeHTTPDataLoader.HttpMethod method, byte[] content, boolean refresh) This method creates a task call to be executed by NativeHTTPDataLoader- Parameters:
url-StringURL to callmethod-NativeHTTPDataLoader.HttpMethodof the requestcontent- byte array containing a body of the request, when requiredrefresh- defined if the cache should be used- Returns:
Callabletask
-
get
Description copied from interface:DataLoaderExecute a HTTP GET operation. This method is used when many URls are available to access the same resource. The operation stops after the first successful download.- Specified by:
getin interfaceDataLoader- Parameters:
urlStrings-ListofStrings representing the URLs to be used in sequential way to obtain the data.- Returns:
DataAndUrlrepresenting the array of obtained data and used url, or null
-
get
Description copied from interface:DataLoaderExecute a HTTP GET operation.- Specified by:
getin interfaceDataLoader- Parameters:
url- the url to access- Returns:
bytearray of obtained data or null
-
get
Executes a GET request to the provided URL, with a forced cacherefreshwhen defined- Parameters:
url- to accessrefresh- if true indicates that the data should be refreshed- Returns:
- binaries of the extracted data object
-
post
Description copied from interface:DataLoaderExecutes a HTTP POST operation- Specified by:
postin interfaceDataLoader- Parameters:
url- to accesscontent- the content to post- Returns:
bytearray of obtained data
-