Class FileCachingHttpClientBuilder.StorageManagingHttpClient
- java.lang.Object
-
- org.apache.http.impl.client.CloseableHttpClient
-
- net.shibboleth.utilities.java.support.httpclient.FileCachingHttpClientBuilder.StorageManagingHttpClient
-
- All Implemented Interfaces:
Closeable,AutoCloseable,Component,DestructableComponent,InitializableComponent,org.apache.http.client.HttpClient
- Enclosing class:
- FileCachingHttpClientBuilder
private static class FileCachingHttpClientBuilder.StorageManagingHttpClient extends org.apache.http.impl.client.CloseableHttpClient implements InitializableComponent, DestructableComponent
Class which wraps a caching instance ofCloseableHttpClientand its associatedManagedHttpCacheStorage, and manages the scheduled maintenance and lifecycle of the latter.
-
-
Field Summary
Fields Modifier and Type Field Description private booleandestroyedDestroyed flag.private org.apache.http.impl.client.CloseableHttpClienthttpClientThe wrapped HttpClient instance.private booleaninitializedInitialized flag.private org.slf4j.LoggerlogLogger.private TimerTaskmaintenanceTaskThe scheduled storage maintenance task.private longmaintenanceTaskIntervalInterval of the scheduled maintenance task.private org.apache.http.impl.client.cache.ManagedHttpCacheStoragestorageThe cache storage instance to manage.private TimertimerScheduled task timer.
-
Constructor Summary
Constructors Constructor Description StorageManagingHttpClient(org.apache.http.impl.client.CloseableHttpClient wrappedClient, org.apache.http.impl.client.cache.ManagedHttpCacheStorage managedStorage, long taskInterval)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidclose()voiddestroy()Destroys the component.protected org.apache.http.client.methods.CloseableHttpResponsedoExecute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.protocol.HttpContext context)org.apache.http.conn.ClientConnectionManagergetConnectionManager()Deprecated.org.apache.http.params.HttpParamsgetParams()Deprecated.voidinitialize()Initializes the component.booleanisDestroyed()Gets whether this component has been destroyed.booleanisInitialized()Gets whether this component is initialized.
-
-
-
Field Detail
-
log
private org.slf4j.Logger log
Logger.
-
httpClient
private org.apache.http.impl.client.CloseableHttpClient httpClient
The wrapped HttpClient instance.
-
storage
private org.apache.http.impl.client.cache.ManagedHttpCacheStorage storage
The cache storage instance to manage.
-
maintenanceTaskInterval
private long maintenanceTaskInterval
Interval of the scheduled maintenance task.
-
initialized
private boolean initialized
Initialized flag.
-
destroyed
private boolean destroyed
Destroyed flag.
-
timer
private Timer timer
Scheduled task timer.
-
maintenanceTask
private TimerTask maintenanceTask
The scheduled storage maintenance task.
-
-
Constructor Detail
-
StorageManagingHttpClient
public StorageManagingHttpClient(@Nonnull org.apache.http.impl.client.CloseableHttpClient wrappedClient, @Nonnull org.apache.http.impl.client.cache.ManagedHttpCacheStorage managedStorage, long taskInterval)Constructor.- Parameters:
wrappedClient- the wrapped HttpClient instancemanagedStorage- the managed cache storage instancetaskInterval- the interval at which storage maintenance should run
-
-
Method Detail
-
doExecute
protected org.apache.http.client.methods.CloseableHttpResponse doExecute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.protocol.HttpContext context) throws IOException, org.apache.http.client.ClientProtocolException- Specified by:
doExecutein classorg.apache.http.impl.client.CloseableHttpClient- Throws:
IOExceptionorg.apache.http.client.ClientProtocolException
-
getParams
@Deprecated public org.apache.http.params.HttpParams getParams()
Deprecated.- Specified by:
getParamsin interfaceorg.apache.http.client.HttpClient
-
getConnectionManager
@Deprecated public org.apache.http.conn.ClientConnectionManager getConnectionManager()
Deprecated.- Specified by:
getConnectionManagerin interfaceorg.apache.http.client.HttpClient
-
close
public void close() throws IOException- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-
isInitialized
public boolean isInitialized()
Gets whether this component is initialized.- Specified by:
isInitializedin interfaceInitializableComponent- Returns:
- true iff this component is initialized
-
isDestroyed
public boolean isDestroyed()
Gets whether this component has been destroyed. Normally, once a component has been destroyed it cannot be used.- Specified by:
isDestroyedin interfaceDestructableComponent- Returns:
- true iff the component has been destroyed
-
initialize
public void initialize() throws ComponentInitializationExceptionInitializes the component.- Specified by:
initializein interfaceInitializableComponent- Throws:
ComponentInitializationException- thrown if there is a problem initializing the component
-
destroy
public void destroy()
Destroys the component.- Specified by:
destroyin interfaceDestructableComponent
-
-