internal NearRestrictionData(StoreSession storeSession, NearFilter nearFilter) { if (nearFilter == null || nearFilter.Filter == null) { MrsTracer.Common.Error("Null near filter in near restriction data constructor", new object[0]); throw new CorruptRestrictionDataException(); } this.Distance = (int)nearFilter.Distance; this.Ordered = nearFilter.Ordered; this.RestrictionData = new AndRestrictionData(storeSession, nearFilter.Filter); }
public static ICollection <QueryFilter> FlattenQueryFilter(QueryFilter filter) { List <QueryFilter> list = new List <QueryFilter>(); TextFilter textFilter = filter as TextFilter; if (textFilter != null) { list.Add(textFilter); } AndFilter andFilter = filter as AndFilter; if (andFilter != null) { list.Add(andFilter); } NotFilter notFilter = filter as NotFilter; if (notFilter != null) { list.Add(notFilter); } NearFilter nearFilter = filter as NearFilter; if (nearFilter != null) { list.Add(nearFilter); } OrFilter orFilter = filter as OrFilter; if (orFilter != null) { foreach (QueryFilter filter2 in orFilter.Filters) { list.AddRange(AqsParser.FlattenQueryFilter(filter2)); } } return(list); }