public static CassandraSlicePredicate SetSchemaForSlicePredicate(CassandraSlicePredicate predicate, CassandraColumnFamilySchema schema, bool forSuperColumn = false) { CassandraType columnType = forSuperColumn ? schema.SuperColumnNameType : schema.ColumnNameType; if (predicate is CassandraRangeSlicePredicate) { var x = (CassandraRangeSlicePredicate)predicate; var start = CassandraObject.GetCassandraObjectFromObject(x.Start, columnType); var finish = CassandraObject.GetCassandraObjectFromObject(x.Finish, columnType); return(new CassandraRangeSlicePredicate(start, finish, x.Reversed, x.Count)); } else if (predicate is CassandraColumnSlicePredicate) { var x = (CassandraColumnSlicePredicate)predicate; var cols = x.Columns.ToList(); for (int i = 0; i < cols.Count; i++) { cols[i] = CassandraObject.GetCassandraObjectFromObject(cols[i], columnType); } return(new CassandraColumnSlicePredicate(cols)); } return(null); }
public static CassandraSlicePredicate SetSchemaForSlicePredicate(CassandraSlicePredicate predicate, CassandraColumnFamilySchema schema, bool forSuperColumn = false) { CassandraType columnType = forSuperColumn ? schema.SuperColumnNameType : schema.ColumnNameType; if (predicate is CassandraRangeSlicePredicate) { var x = (CassandraRangeSlicePredicate)predicate; var start = CassandraObject.GetCassandraObjectFromObject(x.Start, columnType); var finish = CassandraObject.GetCassandraObjectFromObject(x.Finish, columnType); return new CassandraRangeSlicePredicate(start, finish, x.Reversed, x.Count); } else if (predicate is CassandraColumnSlicePredicate) { var x = (CassandraColumnSlicePredicate)predicate; var cols = x.Columns.ToList(); for (int i = 0; i < cols.Count; i++) cols[i] = CassandraObject.GetCassandraObjectFromObject(cols[i], columnType); return new CassandraColumnSlicePredicate(cols); } return null; }
public override IDictionary <CassandraObject, int> Execute() { var schema = ColumnFamily.GetSchema(); var parent = new CassandraColumnParent { ColumnFamily = ColumnFamily.FamilyName }; if (SuperColumnName != null) { parent.SuperColumn = SuperColumnName; } SlicePredicate = Helper.SetSchemaForSlicePredicate(SlicePredicate, schema, SuperColumnName == null); var output = Session.GetClient().multiget_count( Keys, parent, SlicePredicate, Session.ReadConsistency ); var results = new Dictionary <CassandraObject, int>(); foreach (var result in output) { results.Add(result.Key, result.Value); } return(results); }
private IEnumerable <FluentColumn> GetColumns(BaseCassandraColumnFamily columnFamily) { var schema = ColumnFamily.GetSchema(); var list = new List <FluentColumn>(); var parent = new CassandraColumnParent { ColumnFamily = columnFamily.FamilyName, SuperColumn = SuperColumnName }; SlicePredicate = Helper.SetSchemaForSlicePredicate(SlicePredicate, schema, SuperColumnName == null); var output = Session.GetClient().get_slice( Key, parent, SlicePredicate, Session.ReadConsistency ); foreach (var result in output) { var r = Helper.ConvertColumnToFluentColumn(result.Column, schema); list.Add(r); } return(list); }
private IEnumerable <FluentSuperColumn> GetColumns(BaseCassandraColumnFamily columnFamily) { var schema = ColumnFamily.GetSchema(); var parent = new CassandraColumnParent { ColumnFamily = columnFamily.FamilyName }; SlicePredicate = Helper.SetSchemaForSlicePredicate(SlicePredicate, schema); var output = Session.GetClient().get_slice( Key, parent, SlicePredicate, Session.ReadConsistency ); foreach (var result in output) { var r = Helper.ConvertSuperColumnToFluentSuperColumn(result.Super_column, schema); columnFamily.Context.Attach(r); r.MutationTracker.Clear(); yield return(r); } }
public Dictionary<byte[], int> multiget_count(List<CassandraObject> keys, CassandraColumnParent column_parent, CassandraSlicePredicate predicate, Apache.Cassandra.ConsistencyLevel consistency_level) { return _client.multiget_count( Helper.ToByteArrayList(keys), Helper.CreateColumnParent(column_parent), Helper.CreateSlicePredicate(predicate), consistency_level); }
public List<Apache.Cassandra.KeySlice> get_indexed_slices(CassandraColumnParent column_parent, CassandraIndexClause index_clause, CassandraSlicePredicate column_predicate, Apache.Cassandra.ConsistencyLevel consistency_level) { return _client.get_indexed_slices( Helper.CreateColumnParent(column_parent), Helper.CreateIndexClause(index_clause), Helper.CreateSlicePredicate(column_predicate), consistency_level); }
public List<Apache.Cassandra.KeySlice> get_range_slices(CassandraColumnParent column_parent, CassandraSlicePredicate predicate, CassandraKeyRange range, Apache.Cassandra.ConsistencyLevel consistency_level) { return _client.get_range_slices( Helper.CreateColumnParent(column_parent), Helper.CreateSlicePredicate(predicate), Helper.CreateKeyRange(range), consistency_level); }
public int get_count(CassandraObject key, CassandraColumnParent column_parent, CassandraSlicePredicate predicate, Apache.Cassandra.ConsistencyLevel consistency_level) { return _client.get_count( key.TryToBigEndian(), Helper.CreateColumnParent(column_parent), Helper.CreateSlicePredicate(predicate), consistency_level); }
private static object BuildOperation <TResult>(CassandraQuerySetup setup, CassandraSlicePredicate predicate, IDictionary <string, object> calls) { if (calls.ContainsKey("CountColumnsByKey")) { return(new MultiGetColumnCount(setup.Keys, setup.SuperColumnName, predicate)); } if (calls.ContainsKey("CountColumns")) { return(new ColumnCount(setup.Keys.First(), setup.SuperColumnName, predicate)); } var forSuperColumn = typeof(TResult) == typeof(FluentSuperColumnFamily); if (!forSuperColumn && setup.SuperColumnName != null) { throw new CassandraException("'ForSuperColumn' can only be used on a super column family."); } if (forSuperColumn) { if (setup.IndexClause != null) { var indexClause = new CassandraIndexClause(setup.StartKey, setup.ColumnCount, setup.IndexClause); return(new GetSuperColumnFamilyIndexedSlices(indexClause, predicate)); } else if (setup.Keys.Count() > 0) { return(new MultiGetSuperColumnFamilySlice(setup.Keys, setup.SuperColumnName, predicate)); } else { var keyRange = new CassandraKeyRange(setup.StartKey, setup.EndKey, setup.StartToken, setup.EndToken, setup.KeyCount); return(new GetSuperColumnFamilyRangeSlices(keyRange, setup.SuperColumnName, predicate)); } } else { if (setup.IndexClause != null) { var indexClause = new CassandraIndexClause(setup.StartKey, setup.KeyCount, setup.IndexClause); return(new GetColumnFamilyIndexedSlices(indexClause, predicate)); } else if (setup.Keys.Count() > 0) { return(new MultiGetColumnFamilySlice(setup.Keys, predicate)); } else { var keyRange = new CassandraKeyRange(setup.StartKey, setup.EndKey, setup.StartToken, setup.EndToken, setup.KeyCount); return(new GetColumnFamilyRangeSlices(keyRange, predicate)); } } }
public static SlicePredicate CreateSlicePredicate(CassandraSlicePredicate predicate) { if (predicate is CassandraRangeSlicePredicate) { var x = (CassandraRangeSlicePredicate)predicate; return new SlicePredicate { Slice_range = new SliceRange { Start = x.Start.TryToBigEndian() ?? new byte[0], Finish = x.Finish.TryToBigEndian() ?? new byte[0], Reversed = x.Reversed, Count = x.Count } }; } else if (predicate is CassandraColumnSlicePredicate) { var x = (CassandraColumnSlicePredicate)predicate; return new SlicePredicate { Column_names = x.Columns.Select(o => o.TryToBigEndian()).ToList() }; } return null; }
public static SlicePredicate CreateSlicePredicate(CassandraSlicePredicate predicate) { if (predicate is CassandraRangeSlicePredicate) { var x = (CassandraRangeSlicePredicate)predicate; return(new SlicePredicate { Slice_range = new SliceRange { Start = x.Start.TryToBigEndian() ?? new byte[0], Finish = x.Finish.TryToBigEndian() ?? new byte[0], Reversed = x.Reversed, Count = x.Count } }); } else if (predicate is CassandraColumnSlicePredicate) { var x = (CassandraColumnSlicePredicate)predicate; return(new SlicePredicate { Column_names = x.Columns.Select(o => o.TryToBigEndian()).ToList() }); } return(null); }
public MultiGetColumnFamilySlice(IEnumerable <BytesType> keys, CassandraSlicePredicate columnSlicePredicate) { Keys = keys.ToList(); SlicePredicate = columnSlicePredicate; }
public ColumnCount(CassandraObject key, CassandraSlicePredicate columnSlicePredicate) { Key = key; SlicePredicate = columnSlicePredicate; }
public List <Apache.Cassandra.KeySlice> get_indexed_slices(CassandraColumnParent column_parent, CassandraIndexClause index_clause, CassandraSlicePredicate column_predicate, Apache.Cassandra.ConsistencyLevel consistency_level) { return(_client.get_indexed_slices( Helper.CreateColumnParent(column_parent), Helper.CreateIndexClause(index_clause), Helper.CreateSlicePredicate(column_predicate), consistency_level)); }
public GetColumnFamilySlice(CassandraObject key, CassandraSlicePredicate columnSlicePredicate) { Key = key; SlicePredicate = columnSlicePredicate; }
public GetSuperColumnSlice(BytesType key, CassandraType superColumnName, CassandraSlicePredicate columnSlicePredicate) { Key = key; SuperColumnName = superColumnName; SlicePredicate = columnSlicePredicate; }
public List <Apache.Cassandra.KeySlice> get_range_slices(CassandraColumnParent column_parent, CassandraSlicePredicate predicate, CassandraKeyRange range, Apache.Cassandra.ConsistencyLevel consistency_level) { return(_client.get_range_slices( Helper.CreateColumnParent(column_parent), Helper.CreateSlicePredicate(predicate), Helper.CreateKeyRange(range), consistency_level)); }
public ColumnCount(BytesType key, CassandraSlicePredicate columnSlicePredicate) { Key = key; SlicePredicate = columnSlicePredicate; }
public MultiGetSuperColumnFamilySlice(IEnumerable <CassandraObject> keys, CassandraObject superColumnName, CassandraSlicePredicate columnSlicePredicate) { Keys = keys.ToList(); SuperColumnName = superColumnName; SlicePredicate = columnSlicePredicate; }
public GetSuperColumnRangeSlices(CassandraKeyRange keyRange, CassandraType superColumnName, CassandraSlicePredicate columnSlicePredicate) { KeyRange = keyRange; SuperColumnName = superColumnName; SlicePredicate = columnSlicePredicate; }
public MultiGetColumnCount(IEnumerable <CassandraObject> keys, CassandraSlicePredicate columnSlicePredicate) { Keys = keys.ToList(); SlicePredicate = columnSlicePredicate; }
public MultiGetSuperColumnSlice(IEnumerable <BytesType> keys, CassandraType superColumnName, CassandraSlicePredicate columnSlicePredicate) { Keys = keys.ToList(); SuperColumnName = superColumnName; SlicePredicate = columnSlicePredicate; }
public GetColumnFamilyRangeSlices(CassandraKeyRange keyRange, CassandraSlicePredicate columnSlicePredicate) { KeyRange = keyRange; SlicePredicate = columnSlicePredicate; }
public GetSuperColumnIndexedSlices(CassandraIndexClause indexClause, CassandraType superColumnName, CassandraSlicePredicate columnSlicePredicate) { IndexClause = indexClause; SuperColumnName = superColumnName; SlicePredicate = columnSlicePredicate; }
public GetSuperColumnSlice(CassandraObject key, CassandraObject superColumnName, CassandraSlicePredicate columnSlicePredicate) { Key = key; SuperColumnName = superColumnName; SlicePredicate = columnSlicePredicate; }
public int get_count(CassandraObject key, CassandraColumnParent column_parent, CassandraSlicePredicate predicate, Apache.Cassandra.ConsistencyLevel consistency_level) { return(_client.get_count( key.TryToBigEndian(), Helper.CreateColumnParent(column_parent), Helper.CreateSlicePredicate(predicate), consistency_level)); }
public GetColumnFamilySlice(BytesType key, CassandraSlicePredicate columnSlicePredicate) { Key = key; SlicePredicate = columnSlicePredicate; }
public Dictionary <byte[], int> multiget_count(List <CassandraObject> keys, CassandraColumnParent column_parent, CassandraSlicePredicate predicate, Apache.Cassandra.ConsistencyLevel consistency_level) { return(_client.multiget_count( Helper.ToByteArrayList(keys), Helper.CreateColumnParent(column_parent), Helper.CreateSlicePredicate(predicate), consistency_level)); }
public GetSuperColumnFamilyRangeSlices(CassandraKeyRange keyRange, CassandraObject superColumnName, CassandraSlicePredicate columnSlicePredicate) { KeyRange = keyRange; SuperColumnName = superColumnName; SlicePredicate = columnSlicePredicate; }
public GetColumnFamilyIndexedSlices(CassandraIndexClause indexClause, CassandraSlicePredicate columnSlicePredicate) { IndexClause = indexClause; SlicePredicate = columnSlicePredicate; }