public string UpdateColumnFamily(Server server, CfDef definition) { _cachedKeyspaceDescription = null; using (var session = new CassandraSession(new ConnectionBuilder(KeyspaceName, server.Host, server.Port))) return(session.GetClient().system_update_column_family(definition)); }
public string UpdateColumnFamily(CfDef definition) { Keyspace.ClearCachedKeyspaceSchema(); return(ExecuteOperation(new SimpleOperation <string>(ctx => { return ctx.Session.GetClient().system_update_column_family(definition); }))); }
public static CfDef ToCfDefFromColumnFamily(ColumnFamily cf) { CfDef cfdef = new CfDef(); cfdef.Name = cf.Name; cfdef.Keyspace = cf.Keyspace; return(cfdef); }
public static ColumnFamily ToColumnFamilyFromCfDef(CfDef cfdef) { ColumnFamily cf = new ColumnFamily(); cf.Name = cfdef.Name; cf.Keyspace = cfdef.Keyspace; return(cf); }
public static CfDef ToCassandraCfDef(this ColumnFamily columnFamily, string keyspace) { if (columnFamily == null) { return(null); } var result = new CfDef { Id = columnFamily.Id, Name = columnFamily.Name, Keyspace = keyspace, Column_type = "Standard", Comparator_type = columnFamily.ComparatorType.ToString(), Caching = columnFamily.ToCassandraCachingValue() }; if (columnFamily.Compression != null) { result.Compression_options = columnFamily.Compression.ToCassandraCompressionDef(); } if (columnFamily.GCGraceSeconds.HasValue) { result.Gc_grace_seconds = columnFamily.GCGraceSeconds.Value; } if (columnFamily.ReadRepairChance != null) { result.Read_repair_chance = columnFamily.ReadRepairChance.Value; } var compactionStrategy = columnFamily.CompactionStrategy; if (compactionStrategy != null) { result.Compaction_strategy = compactionStrategy.CompactionStrategyType.ToStringValue(); result.Compaction_strategy_options = compactionStrategy.CompactionStrategyOptions.ToCassandraCompactionStrategyOptions(); } if (columnFamily.BloomFilterFpChance.HasValue) { result.Bloom_filter_fp_chance = columnFamily.BloomFilterFpChance.Value; } if (columnFamily.DefaultTtl.HasValue) { result.Default_time_to_live = columnFamily.DefaultTtl.Value; } return(result); }
public static ColumnFamily FromCassandraCfDef(this CfDef cfDef) { if (cfDef == null) { return(null); } var result = new ColumnFamily { Name = cfDef.Name, Id = cfDef.Id, ComparatorType = new ColumnComparatorType(cfDef.Comparator_type) }; if (cfDef.__isset.gc_grace_seconds) { result.GCGraceSeconds = cfDef.Gc_grace_seconds; } if (cfDef.__isset.caching) { result.Caching = cfDef.Caching.ToColumnFamilyCaching(); } if (cfDef.__isset.read_repair_chance) { result.ReadRepairChance = cfDef.Read_repair_chance; } if (cfDef.Compression_options != null) { result.Compression = cfDef.Compression_options.FromCassandraCompressionOptions(); } var compactionStrategyType = cfDef.Compaction_strategy.FromStringValue <CompactionStrategyType>(); var compactionStrategyOptions = cfDef.Compaction_strategy_options.FromCassandraCompactionStrategyOptions(); result.CompactionStrategy = new CompactionStrategy(compactionStrategyType, compactionStrategyOptions); if (cfDef.__isset.bloom_filter_fp_chance) { result.BloomFilterFpChance = cfDef.Bloom_filter_fp_chance; } if (cfDef.__isset.default_time_to_live) { result.DefaultTtl = cfDef.Default_time_to_live; } return(result); }
public CassandraColumnFamilySchema(CfDef def) { _def = def; KeyspaceName = def.Keyspace; var familyType = ColumnType.Standard; Enum.TryParse <ColumnType>(def.Column_type, out familyType); var defaultKeyValueType = CassandraType.GetCassandraType(def.Key_validation_class); var defaultColumnValueType = CassandraType.GetCassandraType(def.Default_validation_class); CassandraType columnNameType, superColumnNameType; if (familyType == ColumnType.Super) { superColumnNameType = CassandraType.GetCassandraType(def.Comparator_type); columnNameType = CassandraType.GetCassandraType(def.Subcomparator_type); } else { superColumnNameType = null; columnNameType = CassandraType.GetCassandraType(def.Comparator_type); } FamilyType = familyType; FamilyName = def.Name; FamilyDescription = def.Comment; KeyName = CassandraObject.GetCassandraObjectFromDatabaseByteArray(def.Key_alias, DefaultKeyNameType); KeyValueType = defaultKeyValueType; SuperColumnNameType = superColumnNameType; ColumnNameType = columnNameType; DefaultColumnValueType = defaultColumnValueType; Columns = def.Column_metadata.Select(col => new CassandraColumnSchema(col, columnNameType)).ToList(); }