Class CassandraIdempotentRepository
java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.processor.idempotent.cassandra.CassandraIdempotentRepository
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.spi.IdempotentRepository,org.apache.camel.StatefulService,org.apache.camel.SuspendableService
- Direct Known Subclasses:
NamedCassandraIdempotentRepository
public class CassandraIdempotentRepository
extends org.apache.camel.support.service.ServiceSupport
implements org.apache.camel.spi.IdempotentRepository
Implementation of
IdempotentRepository using Cassandra table to store message ids. Advice: use
LeveledCompaction for this table and tune read/write consistency levels. Warning: Cassandra is not the best tool for
queuing use cases See http://www.datastax.com/dev/blog/cassandra-anti-patterns-queues-and-queue-like-datasets-
Field Summary
Fields inherited from class org.apache.camel.support.service.BaseService
BUILT, FAILED, INITIALIZED, INITIALIZING, lock, NEW, SHUTDOWN, SHUTTING_DOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDING -
Constructor Summary
ConstructorsConstructorDescriptionCassandraIdempotentRepository(com.datastax.oss.driver.api.core.CqlSession session) -
Method Summary
Modifier and TypeMethodDescriptionbooleanvoidclear()booleanbooleanprotected voiddoStart()protected voiddoStop()String[]protected Object[]getPKValues(String key) String[]com.datastax.oss.driver.api.core.ConsistencyLevelcom.datastax.oss.driver.api.core.CqlSessiongetTable()getTtl()com.datastax.oss.driver.api.core.ConsistencyLevelprotected voidprotected voidprotected voidprotected voidprotected final booleanisApplied(com.datastax.oss.driver.api.core.cql.ResultSet resultSet) booleanvoidsetPKColumns(String... pkColumns) voidsetPrefixPKValues(String[] prefixPKValues) voidsetReadConsistencyLevel(com.datastax.oss.driver.api.core.ConsistencyLevel readConsistencyLevel) voidsetSession(com.datastax.oss.driver.api.core.CqlSession session) voidvoidvoidsetWriteConsistencyLevel(com.datastax.oss.driver.api.core.ConsistencyLevel writeConsistencyLevel) Methods inherited from class org.apache.camel.support.service.BaseService
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, suspendMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.camel.spi.IdempotentRepository
add, confirm, contains, removeMethods inherited from interface org.apache.camel.Service
build, close, init, start, stopMethods inherited from interface org.apache.camel.ShutdownableService
shutdownMethods inherited from interface org.apache.camel.StatefulService
getStatus, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspendingMethods inherited from interface org.apache.camel.SuspendableService
isSuspended, resume, suspend
-
Constructor Details
-
CassandraIdempotentRepository
public CassandraIdempotentRepository() -
CassandraIdempotentRepository
public CassandraIdempotentRepository(com.datastax.oss.driver.api.core.CqlSession session)
-
-
Method Details
-
isApplied
protected final boolean isApplied(com.datastax.oss.driver.api.core.cql.ResultSet resultSet) -
getPKValues
-
doStart
- Overrides:
doStartin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-
doStop
- Overrides:
doStopin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-
initInsertStatement
protected void initInsertStatement() -
add
- Specified by:
addin interfaceorg.apache.camel.spi.IdempotentRepository
-
initSelectStatement
protected void initSelectStatement() -
contains
- Specified by:
containsin interfaceorg.apache.camel.spi.IdempotentRepository
-
confirm
- Specified by:
confirmin interfaceorg.apache.camel.spi.IdempotentRepository
-
initDeleteStatement
protected void initDeleteStatement() -
remove
- Specified by:
removein interfaceorg.apache.camel.spi.IdempotentRepository
-
initClearStatement
protected void initClearStatement() -
clear
public void clear()- Specified by:
clearin interfaceorg.apache.camel.spi.IdempotentRepository
-
getSession
public com.datastax.oss.driver.api.core.CqlSession getSession() -
setSession
public void setSession(com.datastax.oss.driver.api.core.CqlSession session) -
getTable
-
setTable
-
getPKColumns
-
setPKColumns
-
getTtl
-
setTtl
-
getWriteConsistencyLevel
public com.datastax.oss.driver.api.core.ConsistencyLevel getWriteConsistencyLevel() -
setWriteConsistencyLevel
public void setWriteConsistencyLevel(com.datastax.oss.driver.api.core.ConsistencyLevel writeConsistencyLevel) -
getReadConsistencyLevel
public com.datastax.oss.driver.api.core.ConsistencyLevel getReadConsistencyLevel() -
setReadConsistencyLevel
public void setReadConsistencyLevel(com.datastax.oss.driver.api.core.ConsistencyLevel readConsistencyLevel) -
getPrefixPKValues
-
setPrefixPKValues
-