internal override IndexSearcher AsSearcher(TxDataHolder holder, QueryContext context) { if (context != null && context.TradeCorrectnessForSpeed) { return(null); } TxData fullTxData = ToFullTxData(); holder.Set(fullTxData); return(fullTxData.AsSearcher(holder, context)); }
internal override ICollection <EntityId> Query(TxDataHolder holder, Query query, QueryContext contextOrNull) { if (contextOrNull != null && contextOrNull.TradeCorrectnessForSpeed) { return(Collections.emptyList()); } TxData fullTxData = ToFullTxData(); holder.Set(fullTxData); return(fullTxData.Query(holder, query, contextOrNull)); }
internal override void Remove(TxDataHolder holder, EntityId entityId, string key, object value) { if (_data == null) { return; } if (string.ReferenceEquals(key, null) || value == null) { TxData fullData = ToFullTxData(); fullData.Remove(holder, entityId, key, value); holder.Set(fullData); } else { ICollection <EntityId> ids = IdCollection(key, value, false); if (ids != null) { ids.remove(entityId); } } }