Skip to content
This repository has been archived by the owner on Feb 27, 2023. It is now read-only.

Commit

Permalink
Merge pull request hector-client#213 from michaelsembwever/master
Browse files Browse the repository at this point in the history
Add CfDef.key_validation_class support
  • Loading branch information
Nate McCall committed Jun 1, 2011
2 parents 85070fb + f3d23e3 commit c433ffd
Show file tree
Hide file tree
Showing 5 changed files with 45 additions and 26 deletions.
3 changes: 0 additions & 3 deletions core/pom.xml
Expand Up @@ -105,17 +105,14 @@
<dependency>
<groupId>org.apache.cassandra</groupId>
<artifactId>cassandra-all</artifactId>
<version>0.8.0-beta2</version>
</dependency>
<dependency>
<groupId>org.apache.cassandra</groupId>
<artifactId>cassandra-thrift</artifactId>
<version>0.8.0-beta2</version>
</dependency>
<dependency>
<groupId>org.apache.thrift</groupId>
<artifactId>libthrift</artifactId>
<version>0.6.1</version>
</dependency>
<dependency>
<groupId>org.yaml</groupId>
Expand Down
Expand Up @@ -25,6 +25,7 @@ public class BasicColumnFamilyDefinition implements ColumnFamilyDefinition {
private double readRepairChance;
private int gcGraceSeconds;
private String defaultValidationClass;
private String keyValidationClass;
private int id;
private int maxCompactionThreshold;
private int minCompactionThreshold;
Expand All @@ -40,7 +41,7 @@ public class BasicColumnFamilyDefinition implements ColumnFamilyDefinition {
public BasicColumnFamilyDefinition() {
this.columnDefinitions = new ArrayList<ColumnDefinition>();
}

/**
* Builds a {@link BasicColumnFamilyDefinition} based off the interface
*/
Expand All @@ -56,8 +57,8 @@ public BasicColumnFamilyDefinition(ColumnFamilyDefinition columnFamilyDefinition
keyCacheSize = columnFamilyDefinition.getKeyCacheSize();
keyCacheSavePeriodInSeconds = columnFamilyDefinition.getKeyCacheSavePeriodInSeconds();
readRepairChance = columnFamilyDefinition.getReadRepairChance();
columnDefinitions = columnFamilyDefinition.getColumnMetadata() != null
? new ArrayList<ColumnDefinition>(columnFamilyDefinition.getColumnMetadata())
columnDefinitions = columnFamilyDefinition.getColumnMetadata() != null
? new ArrayList<ColumnDefinition>(columnFamilyDefinition.getColumnMetadata())
: new ArrayList<ColumnDefinition>();
gcGraceSeconds = columnFamilyDefinition.getGcGraceSeconds();
defaultValidationClass = columnFamilyDefinition.getDefaultValidationClass();
Expand Down Expand Up @@ -123,7 +124,7 @@ public void setMaxCompactionThreshold(int maxCompactionThreshold) {

public void setMinCompactionThreshold(int minCompactionThreshold) {
this.minCompactionThreshold = minCompactionThreshold;
}
}

public void setRowCacheSavePeriodInSeconds(int rowCacheSavePeriodInSeconds) {
this.rowCacheSavePeriodInSeconds = rowCacheSavePeriodInSeconds;
Expand All @@ -143,12 +144,15 @@ public void setMemtableFlushAfterMins(int memtableFlushAfterMins) {

public void addColumnDefinition( ColumnDefinition columnDefinition){
this.columnDefinitions.add( columnDefinition );
}
}

public void setKeyCacheSavePeriodInSeconds(int keyCacheSavePeriodInSeconds) {
this.keyCacheSavePeriodInSeconds = keyCacheSavePeriodInSeconds;
}


public void setKeyValidationClass(String keyValidationClass){
this.keyValidationClass = keyValidationClass;
}

/**
* SHOULD THIS BE HERE? A COLUMN DEFINITION IS PART OF A KEYSPACE BY VIRTUE
Expand Down Expand Up @@ -253,5 +257,9 @@ public int getKeyCacheSavePeriodInSeconds() {
return keyCacheSavePeriodInSeconds;
}

@Override
public String getKeyValidationClass() {
return keyValidationClass;
}

}
Expand Up @@ -29,6 +29,7 @@ public class ThriftCfDef implements ColumnFamilyDefinition {
private double readRepairChance;
private List<ColumnDefinition> columnMetadata;
private int gcGraceSeconds;
private String keyValidationClass;
private String defaultValidationClass;
private int id;
private int maxCompactionThreshold;
Expand All @@ -50,24 +51,25 @@ public ThriftCfDef(CfDef d) {
rowCacheSavePeriodInSeconds = d.row_cache_save_period_in_seconds;
keyCacheSize = d.key_cache_size;
keyCacheSavePeriodInSeconds = d.key_cache_save_period_in_seconds;
keyValidationClass = d.key_validation_class;
readRepairChance = d.read_repair_chance;
columnMetadata = ThriftColumnDef.fromThriftList(d.column_metadata);
gcGraceSeconds = d.gc_grace_seconds;
defaultValidationClass = d.default_validation_class;
id = d.id;
minCompactionThreshold = d.min_compaction_threshold == 0 ?
minCompactionThreshold = d.min_compaction_threshold == 0 ?
CFMetaData.DEFAULT_MIN_COMPACTION_THRESHOLD : d.min_compaction_threshold;
maxCompactionThreshold = d.max_compaction_threshold == 0 ?
CFMetaData.DEFAULT_MAX_COMPACTION_THRESHOLD : d.max_compaction_threshold;
memtableOperationsInMillions = d.memtable_operations_in_millions == 0 ?
memtableOperationsInMillions = d.memtable_operations_in_millions == 0 ?
CFMetaData.DEFAULT_MEMTABLE_OPERATIONS_IN_MILLIONS : d.memtable_operations_in_millions;
memtableFlushAfterMins = d.memtable_flush_after_mins == 0 ?
memtableFlushAfterMins = d.memtable_flush_after_mins == 0 ?
CFMetaData.DEFAULT_MEMTABLE_LIFETIME_IN_MINS : d.memtable_flush_after_mins;
memtableThroughputInMb = d.memtable_throughput_in_mb == 0 ?
memtableThroughputInMb = d.memtable_throughput_in_mb == 0 ?
CFMetaData.DEFAULT_MEMTABLE_THROUGHPUT_IN_MB : d.memtable_throughput_in_mb;

}

public ThriftCfDef(ColumnFamilyDefinition columnFamilyDefinition) {
keyspace = columnFamilyDefinition.getKeyspaceName();
name = columnFamilyDefinition.getName();
Expand All @@ -79,20 +81,21 @@ public ThriftCfDef(ColumnFamilyDefinition columnFamilyDefinition) {
rowCacheSavePeriodInSeconds = columnFamilyDefinition.getRowCacheSavePeriodInSeconds();
keyCacheSize = columnFamilyDefinition.getKeyCacheSize();
keyCacheSavePeriodInSeconds = columnFamilyDefinition.getKeyCacheSavePeriodInSeconds();
keyValidationClass = columnFamilyDefinition.getKeyValidationClass();
readRepairChance = columnFamilyDefinition.getReadRepairChance();
columnMetadata = columnFamilyDefinition.getColumnMetadata();
gcGraceSeconds = columnFamilyDefinition.getGcGraceSeconds();
defaultValidationClass = columnFamilyDefinition.getDefaultValidationClass();
id = columnFamilyDefinition.getId();
minCompactionThreshold = columnFamilyDefinition.getMinCompactionThreshold() == 0 ?
CFMetaData.DEFAULT_MIN_COMPACTION_THRESHOLD : columnFamilyDefinition.getMinCompactionThreshold();
maxCompactionThreshold = columnFamilyDefinition.getMaxCompactionThreshold() == 0 ?
maxCompactionThreshold = columnFamilyDefinition.getMaxCompactionThreshold() == 0 ?
CFMetaData.DEFAULT_MAX_COMPACTION_THRESHOLD : columnFamilyDefinition.getMaxCompactionThreshold();
memtableFlushAfterMins = columnFamilyDefinition.getMemtableFlushAfterMins() == 0 ?
CFMetaData.DEFAULT_MEMTABLE_LIFETIME_IN_MINS : columnFamilyDefinition.getMemtableFlushAfterMins();
memtableThroughputInMb = columnFamilyDefinition.getMemtableThroughputInMb() == 0 ?
CFMetaData.DEFAULT_MEMTABLE_THROUGHPUT_IN_MB : columnFamilyDefinition.getMemtableThroughputInMb();
memtableOperationsInMillions = columnFamilyDefinition.getMemtableOperationsInMillions() == 0 ?
memtableFlushAfterMins = columnFamilyDefinition.getMemtableFlushAfterMins() == 0 ?
CFMetaData.DEFAULT_MEMTABLE_LIFETIME_IN_MINS : columnFamilyDefinition.getMemtableFlushAfterMins();
memtableThroughputInMb = columnFamilyDefinition.getMemtableThroughputInMb() == 0 ?
CFMetaData.DEFAULT_MEMTABLE_THROUGHPUT_IN_MB : columnFamilyDefinition.getMemtableThroughputInMb();
memtableOperationsInMillions = columnFamilyDefinition.getMemtableOperationsInMillions() == 0 ?
CFMetaData.DEFAULT_MEMTABLE_OPERATIONS_IN_MILLIONS : columnFamilyDefinition.getMemtableOperationsInMillions();
}

Expand All @@ -109,8 +112,8 @@ public ThriftCfDef(String keyspace, String columnFamilyName) {
gcGraceSeconds = CFMetaData.DEFAULT_GC_GRACE_SECONDS;
minCompactionThreshold = CFMetaData.DEFAULT_MIN_COMPACTION_THRESHOLD;
maxCompactionThreshold = CFMetaData.DEFAULT_MAX_COMPACTION_THRESHOLD;
memtableFlushAfterMins = CFMetaData.DEFAULT_MEMTABLE_LIFETIME_IN_MINS;
memtableThroughputInMb = CFMetaData.DEFAULT_MEMTABLE_THROUGHPUT_IN_MB;
memtableFlushAfterMins = CFMetaData.DEFAULT_MEMTABLE_LIFETIME_IN_MINS;
memtableThroughputInMb = CFMetaData.DEFAULT_MEMTABLE_THROUGHPUT_IN_MB;
memtableOperationsInMillions = CFMetaData.DEFAULT_MEMTABLE_OPERATIONS_IN_MILLIONS;
}

Expand Down Expand Up @@ -222,14 +225,15 @@ public CfDef toThrift() {
d.setId(id);
d.setKey_cache_size(keyCacheSize);
d.setKey_cache_save_period_in_seconds(keyCacheSavePeriodInSeconds);
d.setKey_validation_class(keyValidationClass);
d.setMax_compaction_threshold(maxCompactionThreshold);
d.setMin_compaction_threshold(minCompactionThreshold);
d.setRead_repair_chance(readRepairChance);
d.setRow_cache_size(rowCacheSize);
d.setMemtable_operations_in_millions(memtableOperationsInMillions);
d.setMemtable_throughput_in_mb(memtableThroughputInMb);
d.setMemtable_flush_after_mins(memtableFlushAfterMins);
d.setMemtable_flush_after_mins(memtableFlushAfterMins);

if (subComparatorType != null) {
d.setSubcomparator_type(subComparatorType.getClassName());
}
Expand All @@ -241,6 +245,11 @@ public String getDefaultValidationClass() {
return defaultValidationClass;
}

@Override
public String getKeyValidationClass(){
return keyValidationClass;
}

@Override
public int getId() {
return id;
Expand Down Expand Up @@ -300,6 +309,10 @@ public void setDefaultValidationClass(String defaultValidationClass) {
this.defaultValidationClass = defaultValidationClass;
}

public void setKeyValidationClass(String keyValidationClass){
this.keyValidationClass = keyValidationClass;
}

public void setId(int id) {
this.id = id;
}
Expand Down
Expand Up @@ -20,6 +20,7 @@ public interface ColumnFamilyDefinition {
int getRowCacheSavePeriodInSeconds();
int getKeyCacheSavePeriodInSeconds();
double getKeyCacheSize();
String getKeyValidationClass();
double getReadRepairChance();
List<ColumnDefinition> getColumnMetadata();
int getGcGraceSeconds();
Expand Down
4 changes: 2 additions & 2 deletions pom.xml
Expand Up @@ -88,12 +88,12 @@
<dependency>
<groupId>org.apache.cassandra</groupId>
<artifactId>cassandra-all</artifactId>
<version>0.8.0-beta2</version>
<version>0.8.0-rc1</version>
</dependency>
<dependency>
<groupId>org.apache.cassandra</groupId>
<artifactId>cassandra-thrift</artifactId>
<version>0.8.0-beta2</version>
<version>0.8.0-rc1</version>
</dependency>
<dependency>
<groupId>org.apache.cassandra</groupId>
Expand Down

0 comments on commit c433ffd

Please sign in to comment.