public void AddRung(DelegatePredicate <ISubject> predicates, DelegateClosure <IExtendedSubject> executor) { try { _lockRung.AcquireWriterLock(-1); _rungs.Add(new Rung(predicates, executor)); } finally { _lockRung.ReleaseLock(); } }
public void AssignExecutor(DelegateClosure <IExtendedSubject> executor) { try { _lockExecutor.AcquireWriterLock(-1); _clientExecutor = executor; } finally { _lockExecutor.ReleaseLock(); } }
public ClosureRemoveProxy(IList <type> parent, DelegateClosure <type> closure) : base(parent) { _closure = closure; }
public Rung(DelegatePredicate <ISubject> predicate, DelegateClosure <IExtendedSubject> executor) { _predicates = predicate; _executor = executor; }