/// <summary>
        ///		Carga los datos de una instrucción
        /// </summary>
        private Instruction LoadInstruction(MLNode objMLNode)
        {
            Instruction objInstruction = new Instruction();

                // Obtiene los datos de la instrucción
                    objInstruction.Name = objMLNode.Nodes[cnstStrTagMessageName].Value;
                    objInstruction.Request.Method = (RequestMessage.MethodType) objMLNode.Nodes[cnstStrTagMessageMethod].GetValue((int) RequestMessage.MethodType.Post);
                    objInstruction.Request.URL = objMLNode.Nodes[cnstStrTagMessageURL].Value;
                    objInstruction.Request.ContentType = objMLNode.Nodes[cnstStrTagMessageContentType].Value;
                // Obtiene los parámetros y nombres de archivos
                    foreach (MLNode objMLChild in objMLNode.Nodes)
                        switch (objMLChild.Name)
                            { case cnstStrTagMessageQueryParameter:
                                        objInstruction.Request.QueryParameters.Add(objMLChild.Attributes[cnstStrTagMessageAttrName].Value,
                                                                                                                             objMLChild.Attributes[cnstStrTagMessageAttrValue].Value);
                                    break;
                                case cnstStrTagMessageHeader:
                                        objInstruction.Request.Headers.Add(objMLChild.Attributes[cnstStrTagMessageAttrName].Value,
                                                                                                             objMLChild.Attributes[cnstStrTagMessageAttrValue].Value);
                                    break;
                                case cnstStrTagMessageFileName:
                                        objInstruction.Request.Attachments.Add(objMLChild.Value);
                                    break;
                            }
                // Devuelve la instrucción
                    return objInstruction;
        }
Beispiel #2
0
 /// <summary>
 ///		Inicializa el formulario
 /// </summary>
 private void InitForm()
 {
     // Inicializa la instrucción si no estaba en la memoria
         if (Instruction == null)
             Instruction = new Instruction();
     // Inicializa el combo
         cboMethod.Items.Clear();
         cboMethod.AddItem((int) RequestMessage.MethodType.Get, "Get");
         cboMethod.AddItem((int) RequestMessage.MethodType.Post, "Post");
         cboMethod.AddItem((int) RequestMessage.MethodType.Put, "Put");
         cboMethod.AddItem((int) RequestMessage.MethodType.Delete, "Delete");
         cboMethod.AddItem((int) RequestMessage.MethodType.Head, "Head");
         cboMethod.AddItem((int) RequestMessage.MethodType.Options, "Options");
         cboMethod.SelectedIndex = 0;
     // Inicializa los controles
         udtHeaders.InitControl();
         udtParameters.InitControl();
         udtFiles.InitControl();
     // Carga los datos de la instrucción
         LoadInstruction();
 }
        /// <summary>
        ///		Añade los nodos de la instrucción
        /// </summary>
        private void AddNodesMessage(MLNode objMLNode, Instruction objInstruction)
        {
            MLNode objMLChild = objMLNode.Nodes.Add(cnstStrTagMessage);

                // Obtiene los datos de la instrucción
                    objMLChild.Nodes.Add(cnstStrTagMessageName, objInstruction.Name);
                    objMLChild.Nodes.Add(cnstStrTagMessageMethod, (int) objInstruction.Request.Method);
                    objMLChild.Nodes.Add(cnstStrTagMessageURL, objInstruction.Request.URL);
                    objMLChild.Nodes.Add(cnstStrTagMessageContentType, objInstruction.Request.ContentType);
                // Añade los parámetros, cabeceras y nombres de archivos
                    foreach (ParameterData objQueryParameter in objInstruction.Request.QueryParameters)
                        objMLChild.Nodes.Add(GetNodeKey(cnstStrTagMessageQueryParameter, objQueryParameter.Key, objQueryParameter.Value));
                    foreach (Header objHeader in objInstruction.Request.Headers)
                        objMLChild.Nodes.Add(GetNodeKey(cnstStrTagMessageHeader, objHeader.Key, objHeader.Value));
                    foreach (Attachment objAttachment in objInstruction.Request.Attachments)
                        objMLChild.Nodes.Add(cnstStrTagMessageFileName, objAttachment.FileName);
        }