@ManagedResource(description="File based state repository") public class FileStateRepository extends org.apache.camel.support.service.ServiceSupport implements org.apache.camel.spi.StateRepository<String,String>
FileStateRepository class is a file-based implementation of a StateRepository.| Constructor and Description | 
|---|
| FileStateRepository() | 
| FileStateRepository(File fileStore,
                   Map<String,String> cache) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | doStart() | 
| protected void | doStop() | 
| static FileStateRepository | fileStateRepository(File fileStore)Creates a new file based repository using as 1st level cache | 
| static FileStateRepository | fileStateRepository(File fileStore,
                   long maxFileStoreSize)Creates a new file based repository using a  HashMapas 1st level cache. | 
| static FileStateRepository | fileStateRepository(File store,
                   Map<String,String> cache)Creates a new file based repository using the given  Mapas 1st level cache. | 
| Map<String,String> | getCache() | 
| String | getFilePath() | 
| File | getFileStore() | 
| long | getMaxFileStoreSize() | 
| String | getState(String key) | 
| protected void | loadStore()Loads the given file store into the 1st level cache | 
| void | reset()Resets and clears the store to force it to reload from file | 
| void | setCache(Map<String,String> cache) | 
| void | setFileStore(File fileStore) | 
| void | setMaxFileStoreSize(long maxFileStoreSize)Sets the maximum file size for the file store in bytes. | 
| void | setState(String key,
        String value) | 
| protected void | trunkStore()Trunks the file store when the max store size is hit by rewriting the 1st level cache to the file store. | 
build, doBuild, doFail, doInit, doLifecycleChange, doResume, doShutdown, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspendclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitpublic static FileStateRepository fileStateRepository(File fileStore)
fileStore - the file storepublic static FileStateRepository fileStateRepository(File fileStore, long maxFileStoreSize)
HashMap as 1st level cache.fileStore - the file storemaxFileStoreSize - the max size in bytes for the fileStore filepublic static FileStateRepository fileStateRepository(File store, Map<String,String> cache)
Map as 1st level cache.
 
 Care should be taken to use a suitable underlying Map to avoid this class being a memory leak.store - the file storecache - the cache to use as 1st level cache@ManagedOperation(description="Adds the value of the given key to the store") public void setState(String key, String value)
@ManagedOperation(description="Gets the value of the given key from store") public String getState(String key)
@ManagedOperation(description="Reset and reloads the file store")
public void reset()
                                                                             throws IOException
IOExceptionprotected void trunkStore()
protected void loadStore()
                  throws IOException
IOExceptionprotected void doStart()
                throws Exception
doStart in class org.apache.camel.support.service.BaseServiceExceptionprotected void doStop()
               throws Exception
doStop in class org.apache.camel.support.service.BaseServiceExceptionpublic File getFileStore()
public void setFileStore(File fileStore)
@ManagedAttribute(description="The file path for the store") public String getFilePath()
@ManagedAttribute(description="The maximum file size for the file store in bytes") public long getMaxFileStoreSize()
@ManagedAttribute(description="The maximum file size for the file store in bytes") public void setMaxFileStoreSize(long maxFileStoreSize)
Apache Camel