/// <summary>
        ///		Obtiene las conexiones de un contexto
        /// </summary>
        private NormalizedDictionary <Models.CloudConnection> GetConnections(JobContextModel context)
        {
            NormalizedDictionary <Models.CloudConnection> connections = new NormalizedDictionary <Models.CloudConnection>();

            // Obtiene las conexiones del árbol
            foreach (LibDataStructures.Trees.TreeNodeModel node in context.Tree.Nodes)
            {
                if (node.Id.EqualsIgnoreCase("Cloud"))
                {
                    Models.CloudConnection configuration = GetConnection(node);

                    connections.Add(configuration.Key, configuration);
                }
            }
            // Devuelve la lista de conexiones
            return(connections);
        }
Exemple #2
0
        /// <summary>
        ///		Carga los datos de un contexto
        /// </summary>
        internal JobContextModel LoadContext(MLNode rootML, string processorKey)
        {
            JobContextModel context = new JobContextModel();

            // Carga los datos del contexto
            context.ProcessorKey = processorKey;
            // Carga los parámetros y los nodos
            foreach (MLNode nodeML in rootML.Nodes)
            {
                switch (nodeML.Name)
                {
                case JobParameterRepository.TagParameter:
                    JobParameterModel parameter = new JobParameterRepository().LoadParameter(nodeML);

                    context.Parameters.Add(parameter.Key, parameter);
                    break;

                case TagPath:
                    if (string.IsNullOrWhiteSpace(nodeML.Attributes[TagValue].Value))
                    {
                        context.Paths.Add(nodeML.Attributes[TagKey].Value.TrimIgnoreNull(), nodeML.Value.TrimIgnoreNull());
                    }
                    else
                    {
                        context.Paths.Add(nodeML.Attributes[TagKey].Value.TrimIgnoreNull(),
                                          nodeML.Attributes[TagValue].Value.TrimIgnoreNull());
                    }
                    break;

                default:
                    context.Tree.Nodes.Add(LoadTreeNode(nodeML));
                    break;
                }
            }
            // Devuelve el contexto
            return(context);
        }
Exemple #3
0
        /// <summary>
        ///		Obtiene los nodos de una serie de <see cref="JobContextModel"/>
        /// </summary>
        internal MLNode GetContextNode(string tag, string processorKey, JobContextModel context)
        {
            MLNode nodeML = new MLNode(tag);

            // Añade la clave del procesador
            if (string.IsNullOrEmpty(processorKey))
            {
                nodeML.Attributes.Add(TagProcessor, processorKey);
            }
            // Añade el árbol
            nodeML.Nodes.AddRange(GetContextTreeNodes(context.Tree.Nodes));
            // Añade los parámetros
            nodeML.Nodes.AddRange(new JobParameterRepository().GetParametersNodes(context.Parameters));
            // Añade los directorios
            foreach ((string key, string value) in context.Paths.Enumerate())
            {
                MLNode pathML = nodeML.Nodes.Add(TagPath);

                pathML.Attributes.Add(TagKey, key);
                pathML.Value = value;
            }
            // Devuelve el nodo
            return(nodeML);
        }
Exemple #4
0
 public JobManager(ILogger logger, IConsoleOutput consoleOutput)
 {
     Context = new JobContextModel(logger, consoleOutput);
 }
Exemple #5
0
        /// <summary>
        ///		Obtiene las conexiones de un contexto
        /// </summary>
        private NormalizedDictionary <DataBaseConnectionModel> GetConnections(JobProjectModel project, JobContextModel context)
        {
            NormalizedDictionary <DataBaseConnectionModel> connections = new NormalizedDictionary <DataBaseConnectionModel>();

            // Obtiene las conexiones del árbol
            foreach (LibDataStructures.Trees.TreeNodeModel node in context.Tree.Nodes)
            {
                if (node.Id.EqualsIgnoreCase("Connection"))
                {
                    DataBaseConnectionModel connection = GetConnection(project, node);

                    connections.Add(connection.GlobalId, connection);
                }
            }
            // Devuelve la lista de conexiones
            return(connections);
        }