public CompositeCondition(PluginRepository plugins, params ICondition[] conditions) { this.conditionPlugins = plugins.CherryCommands["Get All Condition Checker Plugins"].Do(null) as ConditionCheckerPluginsRepository; foreach (var n in this.conditionPlugins.All) { this.allConditions[n.ConditionTypeName] = n.CreateCondition(); } foreach (var condition in conditions) { this.allConditions[condition.TypeName] = condition; } }