コード例 #1
0
        /// <summary>
        ///		Obtiene una lista de parámetros
        /// </summary>
        internal BaseModelCollection <ParameterModel> GetParameters()
        {
            BaseModelCollection <ParameterModel> parameters = new BaseModelCollection <ParameterModel>();

            // Asigna los parámetros
            foreach (ControlItemViewModel item in Items)
            {
                if (item is ParameterViewModel parameterViewModel)
                {
                    parameters.Add(parameterViewModel.GetParameter());
                }
            }
            // Devuelve los parámetros
            return(parameters);
        }
コード例 #2
0
        /// <summary>
        ///		Carga los parámetros
        /// </summary>
        private void LoadParameters(MLNode rootML, BaseModelCollection <ParameterModel> parameters)
        {
            foreach (MLNode nodeML in rootML.Nodes)
            {
                if (nodeML.Name == TagParameter)
                {
                    ParameterModel parameter = new ParameterModel();

                    // Asigna las propiedades
                    parameter.GlobalId = nodeML.Attributes[TagId].Value;
                    parameter.Type     = nodeML.Attributes[TagType].Value.GetEnum(ParameterModel.ParameterType.String);
                    parameter.Value    = nodeML.Value;
                    // Añade el parámetro
                    parameters.Add(parameter);
                }
            }
        }
コード例 #3
0
        /// <summary>
        ///		Obtiene los nodos de scripts
        /// </summary>
        private MLNodesCollection GetMLScripts(BaseModelCollection <ScriptModel> scripts)
        {
            MLNodesCollection nodesML = new MLNodesCollection();

            // Añade los scripts
            foreach (ScriptModel script in scripts)
            {
                MLNode nodeML = nodesML.Add(TagScript);

                // Añade las propiedades
                nodeML.Attributes.Add(TagFile, script.RelativeFileName);
                // Añade los parámetros
                nodeML.Nodes.AddRange(GetMLParameters(script.Parameters));
            }
            // Devuelve los nodos
            return(nodesML);
        }
コード例 #4
0
        /// <summary>
        ///		Obtiene los nodos de parámetros
        /// </summary>
        private MLNodesCollection GetMLParameters(BaseModelCollection <ParameterModel> parameters)
        {
            MLNodesCollection nodesML = new MLNodesCollection();

            // Añade los parámetros
            foreach (ParameterModel parameter in parameters)
            {
                MLNode nodeML = nodesML.Add(TagParameter);

                // Añade las propiedades
                nodeML.Attributes.Add(TagId, parameter.GlobalId);
                nodeML.Attributes.Add(TagType, parameter.Type.ToString());
                nodeML.Value = parameter.Value;
            }
            // Devuelve la colección de parámetros
            return(nodesML);
        }
コード例 #5
0
        /// <summary>
        ///		Obtiene los parámetros
        /// </summary>
        private Dictionary <string, object> GetParameters(BaseModelCollection <ParameterModel> deploymentParameters, BaseModelCollection <ParameterModel> scriptParameters)
        {
            Dictionary <string, object> converted = new Dictionary <string, object>();

            // Asigna los parámetros del script (antes que los de la distribución)
            foreach (ParameterModel parameter in scriptParameters)
            {
                if (!converted.ContainsKey(parameter.GlobalId.ToUpper()))
                {
                    converted.Add(parameter.GlobalId, parameter.Value);
                }
            }
            // Asigna los parámetros de la distribución
            foreach (ParameterModel parameter in deploymentParameters)
            {
                if (!converted.ContainsKey(parameter.GlobalId.ToUpper()))
                {
                    converted.Add(parameter.GlobalId, parameter.Value);
                }
            }
            // Devuelve los parámetros convertidos
            return(converted);
        }