public InstantiationStack(IList <PvmActivity> activities, PvmActivity targetActivity, PvmTransition targetTransition) { EnsureUtil.ensureOnlyOneNotNull("target must be either a transition or an activity", targetActivity, targetTransition); this.activities = activities; // TODO: make this a subclass that contains targetActivity and targetTransition?! this.targetActivity = targetActivity; this.targetTransition = targetTransition; }