org.apache.camel.component.leveldb
Class LevelDBAggregationRepository

java.lang.Object
  extended by org.apache.camel.support.ServiceSupport
      extended by org.apache.camel.component.leveldb.LevelDBAggregationRepository
All Implemented Interfaces:
org.apache.camel.Service, org.apache.camel.ShutdownableService, org.apache.camel.spi.AggregationRepository, org.apache.camel.spi.RecoverableAggregationRepository, org.apache.camel.StatefulService, org.apache.camel.SuspendableService

public class LevelDBAggregationRepository
extends org.apache.camel.support.ServiceSupport
implements org.apache.camel.spi.RecoverableAggregationRepository

An instance of AggregationRepository which is backed by a LevelDBFile.


Field Summary
 
Fields inherited from class org.apache.camel.support.ServiceSupport
shutdown, shuttingdown, started, starting, stopped, stopping, suspended, suspending
 
Constructor Summary
LevelDBAggregationRepository()
          Creates an aggregation repository
LevelDBAggregationRepository(String repositoryName)
          Creates an aggregation repository
LevelDBAggregationRepository(String repositoryName, LevelDBFile levelDBFile)
          Creates an aggregation repository using the provided LevelDBFile.
LevelDBAggregationRepository(String repositoryName, String persistentFileName)
          Creates an aggregation repository using a new LevelDBFile that persists using the provided file.
 
Method Summary
 org.apache.camel.Exchange add(org.apache.camel.CamelContext camelContext, String key, org.apache.camel.Exchange exchange)
           
 void confirm(org.apache.camel.CamelContext camelContext, String exchangeId)
           
protected  void doStart()
           
protected  void doStop()
           
 org.apache.camel.Exchange get(org.apache.camel.CamelContext camelContext, String key)
           
 String getDeadLetterUri()
           
 Set<String> getKeys()
           
 LevelDBFile getLevelDBFile()
           
 int getMaximumRedeliveries()
           
 String getPersistentFileName()
           
 long getRecoveryIntervalInMillis()
           
 String getRepositoryName()
           
 boolean isReturnOldExchange()
           
 boolean isUseRecovery()
           
static byte[] keyBuilder(String repo, String key)
           
 org.apache.camel.Exchange recover(org.apache.camel.CamelContext camelContext, String exchangeId)
           
 void remove(org.apache.camel.CamelContext camelContext, String key, org.apache.camel.Exchange exchange)
           
 Set<String> scan(org.apache.camel.CamelContext camelContext)
           
 void setDeadLetterUri(String deadLetterUri)
           
 void setLevelDBFile(LevelDBFile levelDBFile)
           
 void setMaximumRedeliveries(int maximumRedeliveries)
           
 void setPersistentFileName(String persistentFileName)
           
 void setRecoveryInterval(long interval)
           
 void setRecoveryInterval(long interval, TimeUnit timeUnit)
           
 void setRepositoryName(String repositoryName)
           
 void setReturnOldExchange(boolean returnOldExchange)
           
 void setUseRecovery(boolean useRecovery)
           
 
Methods inherited from class org.apache.camel.support.ServiceSupport
doResume, doShutdown, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspended, isSuspending, resume, shutdown, start, stop, suspend
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LevelDBAggregationRepository

public LevelDBAggregationRepository()
Creates an aggregation repository


LevelDBAggregationRepository

public LevelDBAggregationRepository(String repositoryName)
Creates an aggregation repository

Parameters:
repositoryName - the repository name

LevelDBAggregationRepository

public LevelDBAggregationRepository(String repositoryName,
                                    String persistentFileName)
Creates an aggregation repository using a new LevelDBFile that persists using the provided file.

Parameters:
repositoryName - the repository name
persistentFileName - the persistent store filename

LevelDBAggregationRepository

public LevelDBAggregationRepository(String repositoryName,
                                    LevelDBFile levelDBFile)
Creates an aggregation repository using the provided LevelDBFile.

Parameters:
repositoryName - the repository name
levelDBFile - the leveldb file to use as persistent store
Method Detail

add

public org.apache.camel.Exchange add(org.apache.camel.CamelContext camelContext,
                                     String key,
                                     org.apache.camel.Exchange exchange)
Specified by:
add in interface org.apache.camel.spi.AggregationRepository

get

public org.apache.camel.Exchange get(org.apache.camel.CamelContext camelContext,
                                     String key)
Specified by:
get in interface org.apache.camel.spi.AggregationRepository

remove

public void remove(org.apache.camel.CamelContext camelContext,
                   String key,
                   org.apache.camel.Exchange exchange)
Specified by:
remove in interface org.apache.camel.spi.AggregationRepository

confirm

public void confirm(org.apache.camel.CamelContext camelContext,
                    String exchangeId)
Specified by:
confirm in interface org.apache.camel.spi.AggregationRepository

getKeys

public Set<String> getKeys()
Specified by:
getKeys in interface org.apache.camel.spi.AggregationRepository

scan

public Set<String> scan(org.apache.camel.CamelContext camelContext)
Specified by:
scan in interface org.apache.camel.spi.RecoverableAggregationRepository

recover

public org.apache.camel.Exchange recover(org.apache.camel.CamelContext camelContext,
                                         String exchangeId)
Specified by:
recover in interface org.apache.camel.spi.RecoverableAggregationRepository

getLevelDBFile

public LevelDBFile getLevelDBFile()

setLevelDBFile

public void setLevelDBFile(LevelDBFile levelDBFile)

getRepositoryName

public String getRepositoryName()

setRepositoryName

public void setRepositoryName(String repositoryName)

isReturnOldExchange

public boolean isReturnOldExchange()

setReturnOldExchange

public void setReturnOldExchange(boolean returnOldExchange)

setRecoveryInterval

public void setRecoveryInterval(long interval,
                                TimeUnit timeUnit)
Specified by:
setRecoveryInterval in interface org.apache.camel.spi.RecoverableAggregationRepository

setRecoveryInterval

public void setRecoveryInterval(long interval)
Specified by:
setRecoveryInterval in interface org.apache.camel.spi.RecoverableAggregationRepository

getRecoveryIntervalInMillis

public long getRecoveryIntervalInMillis()
Specified by:
getRecoveryIntervalInMillis in interface org.apache.camel.spi.RecoverableAggregationRepository

isUseRecovery

public boolean isUseRecovery()
Specified by:
isUseRecovery in interface org.apache.camel.spi.RecoverableAggregationRepository

setUseRecovery

public void setUseRecovery(boolean useRecovery)
Specified by:
setUseRecovery in interface org.apache.camel.spi.RecoverableAggregationRepository

getMaximumRedeliveries

public int getMaximumRedeliveries()
Specified by:
getMaximumRedeliveries in interface org.apache.camel.spi.RecoverableAggregationRepository

setMaximumRedeliveries

public void setMaximumRedeliveries(int maximumRedeliveries)
Specified by:
setMaximumRedeliveries in interface org.apache.camel.spi.RecoverableAggregationRepository

getDeadLetterUri

public String getDeadLetterUri()
Specified by:
getDeadLetterUri in interface org.apache.camel.spi.RecoverableAggregationRepository

setDeadLetterUri

public void setDeadLetterUri(String deadLetterUri)
Specified by:
setDeadLetterUri in interface org.apache.camel.spi.RecoverableAggregationRepository

getPersistentFileName

public String getPersistentFileName()

setPersistentFileName

public void setPersistentFileName(String persistentFileName)

doStart

protected void doStart()
                throws Exception
Specified by:
doStart in class org.apache.camel.support.ServiceSupport
Throws:
Exception

doStop

protected void doStop()
               throws Exception
Specified by:
doStop in class org.apache.camel.support.ServiceSupport
Throws:
Exception

keyBuilder

public static byte[] keyBuilder(String repo,
                                String key)


Apache CAMEL