コード例 #1
0
 public MultiRandomAccessDocIdSet(MultiValueORFacetFilter parent)
 {
     this.parent = parent;
 }
コード例 #2
0
        public override RandomAccessFilter BuildRandomAccessOrFilter(string[] vals, Properties prop, bool isNot)
        {
            RandomAccessFilter filter = null;

            int[] indexes = FacetDataCache.Convert(_dataCache, vals);
            if (indexes.Length > 1)
            {
                filter = new MultiValueORFacetFilter(_dataCache, indexes);
            }
            else if (indexes.Length == 1)
            {
                filter = new MultiValueFacetFilter(_dataCache, indexes[0]);
            }
            else
            {
                filter = EmptyFilter.GetInstance();
            }

            if (isNot)
            {
                filter = new RandomAccessNotFilter(filter);
            }
            return filter;
        }