public long Property <TProperty>(Expression <Func <TEntity, TProperty> > predicate, string columnName)
        {
            var visitor = new MapVisitor(_map);

            visitor.Visit(predicate);
            var key = visitor.ExposeMap().FullColumnKey;

            return(GetTs($"{key}{columnName}"));
        }
Ejemplo n.º 2
0
        public IDeleteCommand <TEntity> ExplicitColumn(Expression <Func <TEntity, object> > predicate)
        {
            var visitor = new MapVisitor(_map);

            visitor.Visit(predicate);
            //var maps = visitor.ExposeMap().Select(x => x.FullColumnKey);
            _descriptors.Add(visitor.ExposeMap().FullColumnKey);
            return(this);
        }
Ejemplo n.º 3
0
        public IScanCommand <TEntity> FetchColumns <T>(params Expression <Func <TEntity, T> >[] predicates)
        {
            foreach (var predicate in predicates)
            {
                var visitor = new MapVisitor(_map);
                visitor.Visit(predicate);

                _columns.Add(visitor.ExposeMap().FullColumnKey);
            }

            return(this);
        }
Ejemplo n.º 4
0
        public IGetCommand <TEntity> Column(Expression <Func <TEntity, object> > predicate)
        {
            var visitor = new MapVisitor(_map);

            visitor.Visit(predicate);

            //var maps = visitor.ExposeMap();
            //foreach (var map in maps) _columns.Add(map.FullColumnKey);
            _columns.Add(visitor.ExposeMap().FullColumnKey);

            return(this);
        }
Ejemplo n.º 5
0
        public IScanCommand <TEntity> FetchColumns <T>(Expression <Func <TEntity, IEnumerable <T> > > predicate,
                                                       params string[] columns)
        {
            var visitor = new MapVisitor(_map);

            visitor.Visit(predicate);

            var map = visitor.ExposeMap();

            _columns.AddRange(columns.Select(x => $"{map.ColumnFamily}:{x}"));

            return(this);
        }
        public QualifierFilter <TEntity> Column(Expression <Func <TEntity, object> > predicate)
        {
            var visitor = new MapVisitor(_map);

            visitor.Visit(predicate);

            var map = visitor.ExposeMap();

            //if (maps.Count > 1)
            //    throw new FilterException($"[ColumnPrefixFilter] Expected 1 column from predicate, got {maps.Count}");

            //var map = maps.FirstOrDefault();

            _columnName = map?.ColumnName;
            return(this);
        }
Ejemplo n.º 7
0
        public void ColumnName(Expression <Func <TEntity, object> > predicate)
        {
            //todo: rework this as the visitor will always expose 1 map associated to the property
            var visitor = new MapVisitor(_map);

            visitor.Visit(predicate);

            var map = visitor.ExposeMap();

            //if (maps.Count > 1)
            //    throw new FilterException($"[ColumnPrefixFilter] Expected 1 column from predicate, got {maps.Count}");

            //var map = maps.FirstOrDefault();

            _columnName = map?.ColumnName;
        }
        public SingleColumnValueFilter <TEntity> Column <TSub>(Expression <Func <TEntity, TSub> > predicate)
        {
            var visitor = new MapVisitor(_map);

            visitor.Visit(predicate);

            var map = visitor.ExposeMap();

            //if (maps.Count > 1)
            //    throw new FilterException($"[ColumnPrefixFilter] Expected 1 column from predicate, got {maps.Count}");

            //var map = maps.FirstOrDefault();

            _columnName   = map?.ColumnName;
            _columnFamily = map?.ColumnFamily;

            return(this);
        }