private ExecutionContext(ExecutionContext parent) { this.parent = parent; if (parent == null) { blockBroker.FailoverBroker = dynamicBlockBroker; } }
public static void ExitLevel() { if (current == null) throw new InvalidOperationException(); current = current.parent; }
public static void Reset() { if (current != null) { foreach (IBlockWeb bw in current.Export()) { bw.Dispose(); } } current = null; }
public static void EnterLevel() { current = new ExecutionContext(current); }