private static bool TryResolveParameters(FunctionSnapshot function, FunctionInstanceSnapshot snapshot, out IEnumerable <FunctionParameterViewModel> resolvedParameters)
        {
            List <FunctionParameterViewModel> parameters = new List <FunctionParameterViewModel>();

            foreach (KeyValuePair <string, ParameterSnapshot> parameter in function.Parameters)
            {
                if (!snapshot.Arguments.ContainsKey(parameter.Key))
                {
                    resolvedParameters = null;
                    return(false);
                }

                FunctionParameterViewModel parameterModel = new FunctionParameterViewModel
                {
                    Name        = parameter.Key,
                    Description = parameter.Value.Prompt,
                    Value       = snapshot.Arguments[parameter.Key].Value
                };

                parameters.Add(parameterModel);
            }

            resolvedParameters = parameters;
            return(true);
        }
Example #2
0
        public static List <FunctionParameters> ExtractPowerShellParameters(IChart powerShellChart)
        {
            List <FunctionParameters> extractedParams = new List <FunctionParameters>();

            if (powerShellChart.TypeOfChart.Equals(GmDashboardTypes.PowerShell))
            {
                var functionalParams = new FunctionParameterViewModel();
                foreach (var param in ((FunctionParamChart)powerShellChart).Parameters)
                {
                    functionalParams.FunctionParams.Add(new FunctionParameters()
                    {
                        Name = param.Name, Description = param.Description
                    });
                }

                if (functionalParams.FunctionParams.Count == 0)
                {
                    return(extractedParams);
                }

                PowerShellParamsView paramView = new PowerShellParamsView(functionalParams);
                paramView.ShowDialog();

                extractedParams = paramView.paramResults;
            }
            else
            {
                throw new System.Exception("WTF dat bad");
            }


            return(extractedParams);
        }
        private static IEnumerable <FunctionParameterViewModel> CreateParameters(FunctionSnapshot function)
        {
            List <FunctionParameterViewModel> parameters = new List <FunctionParameterViewModel>();

            foreach (KeyValuePair <string, ParameterSnapshot> parameter in function.Parameters)
            {
                FunctionParameterViewModel parameterModel = new FunctionParameterViewModel
                {
                    Name        = parameter.Key,
                    Description = parameter.Value.Prompt,
                    Value       = parameter.Value.DefaultValue
                };
                parameters.Add(parameterModel);
            }

            return(parameters);
        }