System\Activities\Activity.cs (4)
787RuntimeArgument argument = new RuntimeArgument(name, argumentType, direction);
1476RuntimeArgument argument = new RuntimeArgument(propertyDescriptor.Name, argumentType, direction, isRequired, overloadGroupNames, propertyDescriptor, activity);
1761RuntimeArgument runtimeArgument = new RuntimeArgument(key, value.ArgumentType, value.Direction, false, null, value);
1968this.ResultRuntimeArgument = new RuntimeArgument("Result", typeof(TResult), ArgumentDirection.Out);
System\Activities\Statements\Assign.cs (4)
46RuntimeArgument valueArgument = new RuntimeArgument("Value", valueType, ArgumentDirection.In, true);
56RuntimeArgument toArgument = new RuntimeArgument("To", toType, ArgumentDirection.Out, true);
109RuntimeArgument valueArgument = new RuntimeArgument("Value", typeof(T), ArgumentDirection.In, true);
112RuntimeArgument toArgument = new RuntimeArgument("To", typeof(T), ArgumentDirection.Out, true);
System\Activities\Statements\CompensableActivity.cs (7)
563RuntimeArgument assertFlagArgument = new RuntimeArgument("AssertFlag", typeof(bool), ArgumentDirection.In);
570RuntimeArgument indexArgument = new RuntimeArgument("Index", typeof(int), ArgumentDirection.In);
577RuntimeArgument elementsArgument = new RuntimeArgument("Elements", typeof(IEnumerable<Activity>), ArgumentDirection.In);
584RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(bool), ArgumentDirection.Out);
626RuntimeArgument elementsArgument = new RuntimeArgument("Elements", typeof(IEnumerable<Activity>), ArgumentDirection.In);
633RuntimeArgument indexArgument = new RuntimeArgument("Index", typeof(int), ArgumentDirection.In);
640RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(bool), ArgumentDirection.Out);
System\Activities\Statements\TransactionScope.cs (11)
130RuntimeArgument timeoutArgument = new RuntimeArgument("Timeout", typeof(TimeSpan), ArgumentDirection.In, false);
429RuntimeArgument inputArgument = new RuntimeArgument("Input", typeof(Activity), ArgumentDirection.In);
436RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(Type), ArgumentDirection.Out);
467RuntimeArgument scopeArgument = new RuntimeArgument("Scope", typeof(TransactionScope), ArgumentDirection.In);
474RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(IsolationLevel), ArgumentDirection.Out);
511RuntimeArgument parentActivityArgument = new RuntimeArgument("ParentActivity", typeof(Activity), ArgumentDirection.In);
518RuntimeArgument isoLevelArgument = new RuntimeArgument("CurrentIsolationLevel", typeof(IsolationLevel), ArgumentDirection.In);
525RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(bool), ArgumentDirection.Out);
582RuntimeArgument parentActivityArgument = new RuntimeArgument("ParentActivity", typeof(Activity), ArgumentDirection.In);
589RuntimeArgument txScopeArgument = new RuntimeArgument("TransactionScope", typeof(TransactionScope), ArgumentDirection.In);
596RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(bool), ArgumentDirection.Out);
System\Activities\Validation\AssertValidation.cs (4)
49RuntimeArgument assertionArgument = new RuntimeArgument("Assertion", typeof(bool), ArgumentDirection.In);
53RuntimeArgument messageArgument = new RuntimeArgument("Message", typeof(string), ArgumentDirection.In);
57RuntimeArgument isWarningArgument = new RuntimeArgument("IsWarning", typeof(bool), ArgumentDirection.In, false);
61RuntimeArgument propertyNameArgument = new RuntimeArgument("PropertyName", typeof(string), ArgumentDirection.In, false);
System\Activities\Activity.cs (38)
34static readonly IList<RuntimeArgument> emptyArguments = new List<RuntimeArgument>(0);
44IList<RuntimeArgument> arguments;
58IList<RuntimeArgument> tempAutoGeneratedArguments;
351internal IList<RuntimeArgument> RuntimeArguments
433internal Dictionary<string, List<RuntimeArgument>> OverloadGroups
447internal List<RuntimeArgument> RequiredArgumentsNotInOverloadGroups
559internal virtual bool IsResultArgument(RuntimeArgument argument)
713internal void SetArgumentsCollection(Collection<RuntimeArgument> arguments, bool createEmptyBindings)
722RuntimeArgument argument = this.arguments[i];
727this.arguments.QuickSort(RuntimeArgument.EvaluationOrderComparer);
731internal void AddArgument(RuntimeArgument argument, bool createEmptyBindings)
735this.arguments = new Collection<RuntimeArgument>();
740int insertionIndex = this.arguments.BinarySearch(argument, RuntimeArgument.EvaluationOrderComparer);
779internal RuntimeArgument AddTempAutoGeneratedArgument(Type argumentType, ArgumentDirection direction)
783this.tempAutoGeneratedArguments = new Collection<RuntimeArgument>();
787RuntimeArgument argument = new RuntimeArgument(name, argumentType, direction);
972internal bool InitializeRelationship(RuntimeArgument argument, ref IList<ValidationError> validationErrors)
1308public Dictionary<string, List<RuntimeArgument>> OverloadGroups
1314public List<RuntimeArgument> RequiredArgumentsNotInOverloadGroups
1441Collection<RuntimeArgument> arguments;
1476RuntimeArgument argument = new RuntimeArgument(propertyDescriptor.Name, argumentType, direction, isRequired, overloadGroupNames, propertyDescriptor, activity);
1477Add<RuntimeArgument>(ref this.arguments, argument);
1510IList<RuntimeArgument> runtimeArguments = DictionaryArgumentHelper.TryGetRuntimeArguments(property, propertyDescriptor.Name);
1554public static Collection<RuntimeArgument> GetArguments(Activity parent)
1556Collection<RuntimeArgument> arguments = null;
1565arguments = new Collection<RuntimeArgument>();
1622public Collection<RuntimeArgument> GetArguments()
1705public IList<RuntimeArgument> RuntimeArguments
1711public static IList<RuntimeArgument> TryGetRuntimeArguments(object propertyValue, string propertyName)
1742protected static IList<RuntimeArgument> GetRuntimeArguments<T>(IEnumerable<KeyValuePair<string, T>> argumentDictionary, string propertyName) where T : Argument
1744IList<RuntimeArgument> runtimeArguments = new List<RuntimeArgument>();
1761RuntimeArgument runtimeArgument = new RuntimeArgument(key, value.ArgumentType, value.Direction, false, null, value);
1914internal override bool IsResultArgument(RuntimeArgument argument)
1926IList<RuntimeArgument> runtimeArguments = this.RuntimeArguments;
1936RuntimeArgument argument = runtimeArguments[i];
1993bool IsBoundArgumentCorrect(RuntimeArgument argument, bool createEmptyBindings)
System\Activities\ActivityUtilities.cs (7)
42static Type runtimeArgumentType = typeof(RuntimeArgument);
459public static RuntimeArgument FindArgument(string argumentName, Activity argumentConsumer)
467RuntimeArgument argument = targetActivity.RuntimeArguments[i];
545static void ProcessArguments(Activity parent, IList<RuntimeArgument> arguments, bool addChildren, ref ActivityLocationReferenceEnvironment environment, ref int nextEnvironmentId, ref ChildActivity nextActivity, ref Stack<ChildActivity> activitiesRemaining, ref IList<ValidationError> validationErrors)
556RuntimeArgument argument = arguments[i];
956static void SetupForProcessing(IList<RuntimeArgument> arguments, ref ChildActivity nextActivity, ref Stack<ChildActivity> activitiesRemaining)
980static void SetupForProcessing(RuntimeArgument argument, ref ChildActivity nextActivity, ref Stack<ChildActivity> activitiesRemaining)
System\Activities\DynamicUpdate\DynamicUpdateMapBuilder.cs (7)
659internal void CreateArgumentEntries(DynamicUpdateMapEntry mapEntry, IList<RuntimeArgument> newArguments, IList<ArgumentInfo> oldArguments)
661RuntimeArgument newIdleArgument;
674internal static bool CreateArgumentEntries(DynamicUpdateMapEntry mapEntry, IList<RuntimeArgument> newArguments, IList<ArgumentInfo> oldArguments, Dictionary<Activity, Activity> expressionRootsThatCanInduceIdle, out RuntimeArgument newIdleArgument, out Activity idleActivity)
683RuntimeArgument newArgument = newArguments[i];
1259public void CreateArgumentEntries(DynamicUpdateMapEntry mapEntry, IList<RuntimeArgument> newArguments, IList<ArgumentInfo> oldArguments)
1261RuntimeArgument newIdleArgument;
System\Activities\Statements\Assign.cs (8)
37Collection<RuntimeArgument> arguments = new Collection<RuntimeArgument>();
46RuntimeArgument valueArgument = new RuntimeArgument("Value", valueType, ArgumentDirection.In, true);
56RuntimeArgument toArgument = new RuntimeArgument("To", toType, ArgumentDirection.Out, true);
107Collection<RuntimeArgument> arguments = new Collection<RuntimeArgument>();
109RuntimeArgument valueArgument = new RuntimeArgument("Value", typeof(T), ArgumentDirection.In, true);
112RuntimeArgument toArgument = new RuntimeArgument("To", typeof(T), ArgumentDirection.Out, true);
System\Activities\Statements\CompensableActivity.cs (9)
563RuntimeArgument assertFlagArgument = new RuntimeArgument("AssertFlag", typeof(bool), ArgumentDirection.In);
570RuntimeArgument indexArgument = new RuntimeArgument("Index", typeof(int), ArgumentDirection.In);
577RuntimeArgument elementsArgument = new RuntimeArgument("Elements", typeof(IEnumerable<Activity>), ArgumentDirection.In);
584RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(bool), ArgumentDirection.Out);
592new Collection<RuntimeArgument>
626RuntimeArgument elementsArgument = new RuntimeArgument("Elements", typeof(IEnumerable<Activity>), ArgumentDirection.In);
633RuntimeArgument indexArgument = new RuntimeArgument("Index", typeof(int), ArgumentDirection.In);
640RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(bool), ArgumentDirection.Out);
648new Collection<RuntimeArgument>
System\Activities\Statements\MethodResolver.cs (11)
40public RuntimeArgument Result { get; set; }
69public void RegisterParameters(IList<RuntimeArgument> arguments)
110RuntimeArgument argument = new RuntimeArgument(name, Parameters[i].ArgumentType, Parameters[i].Direction, true);
138RuntimeArgument argument = new RuntimeArgument(name, Parameters[index].ArgumentType, Parameters[index].Direction, true);
150RuntimeArgument argument = new RuntimeArgument(name, Parameters[i].ArgumentType, Parameters[i].Direction, true);
568RuntimeArgument returnObject,
579RuntimeArgument returnObject)
621Collection<Argument> parameters, RuntimeArgument returnObject,
634Collection<Argument> parameters, RuntimeArgument returnObject)
684RuntimeArgument returnObject,
696Collection<Argument> parameters, RuntimeArgument returnObject) :
System\Activities\Statements\TransactionScope.cs (16)
130RuntimeArgument timeoutArgument = new RuntimeArgument("Timeout", typeof(TimeSpan), ArgumentDirection.In, false);
132metadata.SetArgumentsCollection(new Collection<RuntimeArgument> { timeoutArgument });
429RuntimeArgument inputArgument = new RuntimeArgument("Input", typeof(Activity), ArgumentDirection.In);
436RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(Type), ArgumentDirection.Out);
444new Collection<RuntimeArgument>
467RuntimeArgument scopeArgument = new RuntimeArgument("Scope", typeof(TransactionScope), ArgumentDirection.In);
474RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(IsolationLevel), ArgumentDirection.Out);
482new Collection<RuntimeArgument>
511RuntimeArgument parentActivityArgument = new RuntimeArgument("ParentActivity", typeof(Activity), ArgumentDirection.In);
518RuntimeArgument isoLevelArgument = new RuntimeArgument("CurrentIsolationLevel", typeof(IsolationLevel), ArgumentDirection.In);
525RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(bool), ArgumentDirection.Out);
533new Collection<RuntimeArgument>
582RuntimeArgument parentActivityArgument = new RuntimeArgument("ParentActivity", typeof(Activity), ArgumentDirection.In);
589RuntimeArgument txScopeArgument = new RuntimeArgument("TransactionScope", typeof(TransactionScope), ArgumentDirection.In);
596RuntimeArgument resultArgument = new RuntimeArgument("Result", typeof(bool), ArgumentDirection.Out);
604new Collection<RuntimeArgument>
System\Activities\Validation\AssertValidation.cs (6)
47Collection<RuntimeArgument> arguments = new Collection<RuntimeArgument>();
49RuntimeArgument assertionArgument = new RuntimeArgument("Assertion", typeof(bool), ArgumentDirection.In);
53RuntimeArgument messageArgument = new RuntimeArgument("Message", typeof(string), ArgumentDirection.In);
57RuntimeArgument isWarningArgument = new RuntimeArgument("IsWarning", typeof(bool), ArgumentDirection.In, false);
61RuntimeArgument propertyNameArgument = new RuntimeArgument("PropertyName", typeof(string), ArgumentDirection.In, false);
System\Activities\Validation\ValidationHelper.cs (33)
17public static void ValidateArguments(Activity activity, OverloadGroupEquivalenceInfo equivalenceInfo, Dictionary<string, List<RuntimeArgument>> overloadGroups, List<RuntimeArgument> requiredArgumentsNotInOverloadGroups, IDictionary<string, object> inputs, ref IList<ValidationError> validationErrors)
22foreach (RuntimeArgument argument in requiredArgumentsNotInOverloadGroups)
42foreach (KeyValuePair<string, List<RuntimeArgument>> entry in overloadGroups)
46IEnumerable<RuntimeArgument> requiredArguments = entry.Value.Where((a) => a.IsRequired);
60IEnumerable<RuntimeArgument> optionalArguments = entry.Value.Where((a) => !a.IsRequired);
83HashSet<RuntimeArgument> configuredOverloadSet = new HashSet<RuntimeArgument>(overloadGroups[configuredGroupName]);
84Predicate<RuntimeArgument> checkIfArgumentIsBound = new Predicate<RuntimeArgument>(localArgument => CheckIfArgumentIsBound(localArgument, inputs));
105foreach (RuntimeArgument configuredArgument in overloadGroups[groupName].FindAll(checkIfArgumentIsBound))
114HashSet<RuntimeArgument> overloadGroupSet = new HashSet<RuntimeArgument>(overloadGroups[groupName]);
115IEnumerable<RuntimeArgument> intersectSet = overloadGroupSet.Intersect(configuredOverloadSet);
116List<RuntimeArgument> exceptList = overloadGroupSet.Except(intersectSet).ToList();
118foreach (RuntimeArgument configuredArgument in exceptList.FindAll(checkIfArgumentIsBound))
135public static bool GatherAndValidateOverloads(Activity activity, out Dictionary<string, List<RuntimeArgument>> overloadGroups, out List<RuntimeArgument> requiredArgumentsNotInOverloadGroups, out OverloadGroupEquivalenceInfo equivalenceInfo, ref IList<ValidationError> validationErrors)
139IEnumerable<RuntimeArgument> runtimeArguments = activity.RuntimeArguments;
141foreach (RuntimeArgument runtimeArgument in runtimeArguments)
149overloadGroups = new Dictionary<string, List<RuntimeArgument>>();
152List<RuntimeArgument> arguments = null;
155arguments = new List<RuntimeArgument>();
167requiredArgumentsNotInOverloadGroups = new List<RuntimeArgument>();
182static bool ValidateOverloadGroupDefinitions(Activity activity, OverloadGroupEquivalenceInfo equivalenceInfo, Dictionary<string, List<RuntimeArgument>> overloadGroups, ref IList<ValidationError> validationErrors)
222if (overloadGroups[subsetGroup].Any<RuntimeArgument>((a) => a.IsRequired))
240static OverloadGroupEquivalenceInfo GetOverloadGroupEquivalence(Dictionary<string, List<RuntimeArgument>> groupDefinitions)
252HashSet<RuntimeArgument> group1Args = new HashSet<RuntimeArgument>(groupDefinitions[group1]);
256HashSet<RuntimeArgument> group2Args = new HashSet<RuntimeArgument>(groupDefinitions[group2]);
285static bool CheckIfArgumentIsNotBound(RuntimeArgument argument, IDictionary<string, object> inputs)
308static bool CheckIfArgumentIsBound(RuntimeArgument argument, IDictionary<string, object> inputs)