Ejemplo n.º 1
0
        protected internal override void UnRegister(object o, Int64 address)
        {
            var indexName = RecordIndex.GetIndexName <TObj>(this.Collection.Name, this.PropertyName, typeof(TAttribute));
            var keys      = this.GetKeys(o, address);

            foreach (var key in keys)
            {
                UnRegisterKey(key, address, this.Session, this.RecordManager, indexName);
            }
        }
Ejemplo n.º 2
0
        BuildEnumerator(IEnumerable <BTreeWalkerRange <ValueWithAddressIndexKey <TAttribute> > > ranges,
                        bool IsDescending = false)
        {
            var indexName = RecordIndex.GetIndexName <TObj>(this.Collection.Name, this.PropertyName, typeof(TAttribute));

            var enumerator = new CollectionEnumerator <TObj, ValueWithAddressIndexKey <TAttribute> >(
                this.Collection, Session, RecordManager, Serializer, indexName, IsDescending);

            enumerator.SetRanges(ranges);

            return(enumerator);
        }
Ejemplo n.º 3
0
        protected internal override void EnsureIndex()
        {
            var indexName = RecordIndex.GetIndexName <TObj> (this.Collection.Name, this.PropertyName, typeof(TAttribute));
            var index     = new RecordIndex <TAttribute> (
                this.Session,
                this.RecordManager,
                indexName,
                this.Session.SerializerResolver.SerializerFor <Node <TAttribute> > ()
                );

            //Creating a walker makes sure the index is ready
            index.GetWalker();
        }