|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.netflix.astyanax.recipes.uniqueness.MultiRowUniquenessConstraint
public class MultiRowUniquenessConstraint
Check uniqueness for multiple rows. This test is done by 1. First writing a unique column to all rows, in a single batch. Include a TTL for some failure conditions. 2. Reading back the unique columns from each row (must be done in a separate call) and making sure there is only one such column 3. Committing the columns without a TTL
Constructor Summary | |
---|---|
MultiRowUniquenessConstraint(Keyspace keyspace)
|
Method Summary | |
---|---|
void |
acquire()
Acquire the row(s) for uniqueness. |
void |
acquireAndMutate(MutationBatch mutation)
Acquire the uniqueness constraint and apply the final mutation if the row if found to be unique |
String |
getLockColumn()
Return the lock column written to ALL rows |
void |
release()
Release the uniqueness lock for this row. |
MultiRowUniquenessConstraint |
withColumnPrefix(String prefix)
Specify the prefix that uniquely distinguishes the lock columns from data columns |
MultiRowUniquenessConstraint |
withConsistencyLevel(ConsistencyLevel consistencyLevel)
Consistency level used |
MultiRowUniquenessConstraint |
withLockId(String column)
Override the autogenerated lock column. |
MultiRowUniquenessConstraint |
withRow(ColumnFamily<String,String> columnFamily,
String rowKey)
Add a row to the set of rows being tested for uniqueness |
MultiRowUniquenessConstraint |
withTtl(Integer ttl)
TTL to use for the uniquness operation. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public MultiRowUniquenessConstraint(Keyspace keyspace)
Method Detail |
---|
public MultiRowUniquenessConstraint withTtl(Integer ttl)
ttl
-
public MultiRowUniquenessConstraint withColumnPrefix(String prefix)
prefix
-
public MultiRowUniquenessConstraint withLockId(String column)
column
-
public MultiRowUniquenessConstraint withConsistencyLevel(ConsistencyLevel consistencyLevel)
consistencyLevel
-
public MultiRowUniquenessConstraint withRow(ColumnFamily<String,String> columnFamily, String rowKey)
columnFamily
- rowKey
-
public String getLockColumn()
public void acquire() throws NotUniqueException, Exception
UniquenessConstraint
acquire
in interface UniquenessConstraint
NotUniqueException
Exception
public void acquireAndMutate(MutationBatch mutation) throws NotUniqueException, Exception
UniquenessConstraint
acquireAndMutate
in interface UniquenessConstraint
NotUniqueException
Exception
public void release() throws Exception
UniquenessConstraint
release
in interface UniquenessConstraint
Exception
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |