示例#1
0
        public override EventBean[] ProcessDelete(EPPreparedExecuteIUDSingleStreamExecDelete delete)
        {
            ExprTableEvalLockUtil.ObtainLockUnless(_instance.TableLevelRWLock.WriteLock, delete.Services.TableService.TableExprEvaluatorContext);

            if (delete.OptionalWhereClause == null)
            {
                _instance.ClearEvents();
            }

            var found = SnapshotAndApplyFilter(delete.Filter, delete.Annotations, delete.OptionalWhereClause, _instance.AgentInstanceContext);

            foreach (var @event in found)
            {
                _instance.DeleteEvent(@event);
            }
            return(CollectionUtil.EVENTBEANARRAY_EMPTY);
        }
示例#2
0
 public abstract EventBean[] ProcessDelete(EPPreparedExecuteIUDSingleStreamExecDelete delete);
 public override EventBean[] ProcessDelete(EPPreparedExecuteIUDSingleStreamExecDelete delete)
 {
     EPPreparedExecuteTableHelper.AssignTableAccessStrategies(delete.Services, delete.OptionalTableNodes, _processorInstance.TailViewInstance.AgentInstanceContext);
     return(_processorInstance.TailViewInstance.SnapshotDelete(delete.Filter, delete.OptionalWhereClause, delete.Annotations));
 }