예제 #1
0
        public override short readxmlcollection(GXXMLReader oReader,
                                                String sName,
                                                String itemName)
        {
            short  currError;
            String sTagName;
            String itemName1;

            currError = 1;
            itemName1 = (String)(GetContainedName());
            if (!String.IsNullOrEmpty(StringUtil.RTrim(itemName)))
            {
                itemName1 = itemName;
            }
            if ((StringUtil.StrCmp(oReader.LocalName, itemName1) != 0) || (StringUtil.StrCmp(sName, itemName1) == 0))
            {
                currError = oReader.Read();
            }
            sTagName = oReader.Name;
            if (!String.IsNullOrEmpty(StringUtil.RTrim(sName)))
            {
                this.ClearCollection();
            }
            while ((StringUtil.StrCmp(oReader.Name, sTagName) == 0) && (oReader.NodeType == 1) && (currError > 0))
            {
                if (IsSimpleCollection() || (oReader.IsSimple == 0) || (oReader.AttributeCount > 0))
                {
                    currError = (short)(AddObjectInstance(oReader));
                }
                oReader.Read();
            }
            return(currError);
        }
예제 #2
0
        public override short readxml(GXXMLReader oReader,
                                      String sName)
        {
            short GXSoapError = 1;

            sTagName = oReader.Name;
            if (oReader.IsSimple == 0)
            {
                GXSoapError   = oReader.Read();
                nOutParmCount = 0;
                while (((StringUtil.StrCmp(oReader.Name, sTagName) != 0) || (oReader.NodeType == 1)) && (GXSoapError > 0))
                {
                    readOk = 0;
                    if (StringUtil.StrCmp2(oReader.LocalName, "Value"))
                    {
                        gxTv_SdtGridState_FilterValue_Value = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    nOutParmCount = (short)(nOutParmCount + 1);
                    if (readOk == 0)
                    {
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Error reading " + sTagName + StringUtil.NewLine( );
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Message: " + oReader.ReadRawXML();
                        GXSoapError         = (short)(nOutParmCount * -1);
                    }
                }
            }
            return(GXSoapError);
        }
예제 #3
0
        public override short readxml(GXXMLReader oReader,
                                      String sName)
        {
            short GXSoapError = 1;

            sTagName = oReader.Name;
            if (oReader.IsSimple == 0)
            {
                GXSoapError   = oReader.Read();
                nOutParmCount = 0;
                while (((StringUtil.StrCmp(oReader.Name, sTagName) != 0) || (oReader.NodeType == 1)) && (GXSoapError > 0))
                {
                    readOk = 0;
                    if (StringUtil.StrCmp2(oReader.LocalName, "SdtResultadoPanamax"))
                    {
                        gxTv_SdtSdtResultado_Sdtresultadopanamax = NumberUtil.Val(oReader.Value, ".");
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "SdtResultadoNeoPanamax"))
                    {
                        gxTv_SdtSdtResultado_Sdtresultadoneopanamax = NumberUtil.Val(oReader.Value, ".");
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "SdtResultadoLastre"))
                    {
                        gxTv_SdtSdtResultado_Sdtresultadolastre = NumberUtil.Val(oReader.Value, ".");
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "SdtLastreRoundtrip"))
                    {
                        gxTv_SdtSdtResultado_Sdtlastreroundtrip = NumberUtil.Val(oReader.Value, ".");
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    nOutParmCount = (short)(nOutParmCount + 1);
                    if (readOk == 0)
                    {
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Error reading " + sTagName + StringUtil.NewLine( );
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Message: " + oReader.ReadRawXML();
                        GXSoapError         = (short)(nOutParmCount * -1);
                    }
                }
            }
            return(GXSoapError);
        }
예제 #4
0
        public short readEncodedArray(String arrayType,
                                      GXXMLReader oReader)
        {
            short currError;
            int   arrayLength;
            int   arraySizeStartPos;
            int   arraySizeLength;
            short gxi;

            arraySizeStartPos = (int)(StringUtil.StringSearch(arrayType, "[", 1) + 1);
            arraySizeLength   = (int)(StringUtil.Len(arrayType) - arraySizeStartPos);
            if ((arraySizeStartPos == 1) || (arraySizeLength == 0))
            {
                throw new Exception("GxObjectCollectionBase error: Could not read encoded array size\"+\"(\"+StringUtil.LTrim( StringUtil.NToC( (decimal)(0), 6, 0, \".\", \"\"))+\")");
            }
            arrayLength = (int)(NumberUtil.Val(StringUtil.Substring(arrayType, arraySizeStartPos, arraySizeLength), "."));
            currError   = oReader.Read();
            gxi         = 0;
            while ((gxi < arrayLength) && (currError > 0))
            {
                currError = (short)(AddObjectInstance(oReader));
                oReader.Read();
                gxi = (short)(gxi + 1);
            }
            return(currError);
        }
예제 #5
0
        public override short readxml(GXXMLReader oReader,
                                      String sName)
        {
            short GXSoapError = 1;

            sTagName = oReader.Name;
            if (oReader.IsSimple == 0)
            {
                GXSoapError   = oReader.Read();
                nOutParmCount = 0;
                while (((StringUtil.StrCmp(oReader.Name, sTagName) != 0) || (oReader.NodeType == 1)) && (GXSoapError > 0))
                {
                    readOk = 0;
                    if (StringUtil.StrCmp2(oReader.LocalName, "IP"))
                    {
                        gxTv_SdtOperTugSchedule_GetOperTugScheduleResult_MATE1_Ip = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "LName"))
                    {
                        gxTv_SdtOperTugSchedule_GetOperTugScheduleResult_MATE1_Lname = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "FName"))
                    {
                        gxTv_SdtOperTugSchedule_GetOperTugScheduleResult_MATE1_Fname = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "NAME"))
                    {
                        gxTv_SdtOperTugSchedule_GetOperTugScheduleResult_MATE1_Name = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    nOutParmCount = (short)(nOutParmCount + 1);
                    if (readOk == 0)
                    {
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Error reading " + sTagName + StringUtil.NewLine( );
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Message: " + oReader.ReadRawXML();
                        GXSoapError         = (short)(nOutParmCount * -1);
                    }
                }
            }
            return(GXSoapError);
        }
예제 #6
0
        public override short readxml(GXXMLReader oReader,
                                      String sName)
        {
            short GXSoapError = 1;

            sTagName = oReader.Name;
            if (oReader.IsSimple == 0)
            {
                GXSoapError   = oReader.Read();
                nOutParmCount = 0;
                while (((StringUtil.StrCmp(oReader.Name, sTagName) != 0) || (oReader.NodeType == 1)) && (GXSoapError > 0))
                {
                    readOk = 0;
                    if (StringUtil.StrCmp2(oReader.LocalName, "Code"))
                    {
                        gxTv_SdtTabOptions_TabOptionsItem_Code = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "Description"))
                    {
                        gxTv_SdtTabOptions_TabOptionsItem_Description = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "Link"))
                    {
                        gxTv_SdtTabOptions_TabOptionsItem_Link = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "WebComponent"))
                    {
                        gxTv_SdtTabOptions_TabOptionsItem_Webcomponent = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    nOutParmCount = (short)(nOutParmCount + 1);
                    if (readOk == 0)
                    {
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Error reading " + sTagName + StringUtil.NewLine( );
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Message: " + oReader.ReadRawXML();
                        GXSoapError         = (short)(nOutParmCount * -1);
                    }
                }
            }
            return(GXSoapError);
        }
예제 #7
0
        public override short readxml(GXXMLReader oReader,
                                      String sName)
        {
            short GXSoapError = 1;

            sTagName = oReader.Name;
            if (oReader.IsSimple == 0)
            {
                GXSoapError   = oReader.Read();
                nOutParmCount = 0;
                while (((StringUtil.StrCmp(oReader.Name, sTagName) != 0) || (oReader.NodeType == 1)) && (GXSoapError > 0))
                {
                    readOk = 0;
                    if (StringUtil.StrCmp2(oReader.LocalName, "User"))
                    {
                        gxTv_SdtContext_User = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "CompanyCode"))
                    {
                        gxTv_SdtContext_Companycode = (short)(NumberUtil.Val(oReader.Value, "."));
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "Profile"))
                    {
                        gxTv_SdtContext_Profile = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    nOutParmCount = (short)(nOutParmCount + 1);
                    if (readOk == 0)
                    {
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Error reading " + sTagName + StringUtil.NewLine( );
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Message: " + oReader.ReadRawXML();
                        GXSoapError         = (short)(nOutParmCount * -1);
                    }
                }
            }
            return(GXSoapError);
        }
 public virtual short readxmlcollection(GXXMLReader oReader, string sName, string itemName)
 {
     if (string.IsNullOrEmpty(sName))
     {
         return(readxmlcollectionUnwrapped(oReader, "", itemName));
     }
     else
     {
         try
         {
             if (oReader.LocalName == sName)
             {
                 ClearCollection();
                 oReader.Read();
                 readxmlcollectionUnwrapped(oReader, "", itemName);
             }
             return(1);
         }
         catch (Exception ex)
         {
             GXLogging.Error(log, "readxmlcollection error", ex);
             return(-1);
         }
     }
 }
예제 #9
0
        public override short readxml(GXXMLReader oReader,
                                      String sName)
        {
            short GXSoapError = 1;

            sTagName = oReader.Name;
            if (oReader.IsSimple == 0)
            {
                GXSoapError   = oReader.Read();
                nOutParmCount = 0;
                while (((StringUtil.StrCmp(oReader.Name, sTagName) != 0) || (oReader.NodeType == 1)) && (GXSoapError > 0))
                {
                    readOk = 0;
                    if (StringUtil.StrCmp(oReader.LocalName, "Caption") == 0)
                    {
                        gxTv_SdtLinkList_LinkItem_Caption = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp(oReader.LocalName, "URL") == 0)
                    {
                        gxTv_SdtLinkList_LinkItem_Url = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    nOutParmCount = (short)(nOutParmCount + 1);
                    if (readOk == 0)
                    {
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Error reading " + sTagName + StringUtil.NewLine( );
                        GXSoapError         = (short)(nOutParmCount * -1);
                    }
                }
            }
            return(GXSoapError);
        }
예제 #10
0
        public override short readxml(GXXMLReader oReader,
                                      String sName)
        {
            short GXSoapError = 1;

            sTagName = oReader.Name;
            if (oReader.IsSimple == 0)
            {
                GXSoapError   = oReader.Read();
                nOutParmCount = 0;
                while (((StringUtil.StrCmp(oReader.Name, sTagName) != 0) || (oReader.NodeType == 1)) && (GXSoapError > 0))
                {
                    readOk = 0;
                    if (StringUtil.StrCmp2(oReader.LocalName, "GetOperTugScheduleResult"))
                    {
                        if (gxTv_SdtOperTugSchedule_Getopertugscheduleresult == null)
                        {
                            gxTv_SdtOperTugSchedule_Getopertugscheduleresult = new SdtOperTugSchedule_GetOperTugScheduleResult(context);
                        }
                        if ((oReader.IsSimple == 0) || (oReader.AttributeCount > 0))
                        {
                            GXSoapError = gxTv_SdtOperTugSchedule_Getopertugscheduleresult.readxml(oReader, "GetOperTugScheduleResult");
                        }
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    nOutParmCount = (short)(nOutParmCount + 1);
                    if (readOk == 0)
                    {
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Error reading " + sTagName + StringUtil.NewLine( );
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Message: " + oReader.ReadRawXML();
                        GXSoapError         = (short)(nOutParmCount * -1);
                    }
                }
            }
            return(GXSoapError);
        }
예제 #11
0
        private void ProcessService(GXXMLReader reader)
        {
            reader.ReadType(1, "Name");
            String name = reader.Value;

            reader.ReadType(1, "Type");
            String type = reader.Value;

            reader.ReadType(1, "ClassName");
            String className = reader.Value;

            String allowMultiple = string.Empty;

            reader.Read();
            if (reader.Name == "AllowMultiple")
            {
                allowMultiple = reader.Value;
                reader.Read();
            }

            GXProperties properties = ProcessProperties(type, name, reader);

            GXService service = new GXService();

            service.Name          = name;
            service.Type          = type;
            service.ClassName     = className;
            service.Properties    = properties;
            service.AllowMultiple = string.IsNullOrEmpty(allowMultiple) ? false : bool.Parse(allowMultiple);
            if (service.AllowMultiple)
            {
                services.Add($"{service.Type}:{service.Name}", service);
            }
            else
            {
                services.Add(type, service);
            }
        }
예제 #12
0
        public static void LoadFromFile(string fileName, ref GXServices services)
        {
            string filePath = ServicesFilePath(fileName);

            if (File.Exists(filePath))
            {
                try
                {
                    if (services == null)
                    {
                        services = new GXServices();
                    }
                    GXLogging.Debug(log, "Loading service:", filePath);
                    GXXMLReader reader = new GXXMLReader();
                    reader.Open(filePath);
                    reader.ReadType(1, "Services");
                    reader.Read();
                    if (reader.ErrCode == 0)
                    {
                        while (reader.Name != "Services")
                        {
                            services.ProcessService(reader);
                            reader.Read();
                            if (reader.Name == "Service" && reader.NodeType == 2)                             //</Service>
                            {
                                reader.Read();
                            }
                        }
                        reader.Close();
                    }
                }
                catch (Exception ex)
                {
                    GXLogging.Error(log, "Couldn't create service from:", filePath, ex);
                    throw ex;
                }
            }
        }
예제 #13
0
        private GXProperties ProcessProperties(string serviceType, string serviceName, GXXMLReader reader)
        {
            GXProperties properties = new GXProperties();

            reader.Read();
            while (reader.Name == "Property")
            {
                reader.ReadType(1, "Name");
                string name = reader.Value;
                reader.ReadType(1, "Value");
                string value = reader.Value;

                if (EnvVarReader.GetEnvironmentValue(serviceType, serviceName, name, out string envVarValue))
                {
                    value = envVarValue;
                }

                properties.Add(name, value);
                reader.Read();
                reader.Read();
            }
            return(properties);
        }
        public short readxmlcollectionUnwrapped(GXXMLReader oReader, string sName, string itemName)
        {
            short currError = 1;

            while (oReader.LocalName == itemName && currError > 0)
            {
                T currObject = new T();
                currObject.context = this.context;
                string xml = GxUserType.UpdateNodeDefaultNamespace(oReader.ReadRawXML(), null, false, this.GetPrefixesInContext());
                currObject.FromXml(xml, itemName, oReader.NamespaceURI);
                Add(currObject);
                oReader.Read();
            }
            return(currError);
        }
        public override short readxml(GXXMLReader oReader,
                                      String sName)
        {
            short GXSoapError = 1;

            sTagName = oReader.Name;
            if (oReader.IsSimple == 0)
            {
                GXSoapError   = oReader.Read();
                nOutParmCount = 0;
                while (((StringUtil.StrCmp(oReader.Name, sTagName) != 0) || (oReader.NodeType == 1)) && (GXSoapError > 0))
                {
                    readOk = 0;
                    if (StringUtil.StrCmp2(oReader.LocalName, "CallerObject"))
                    {
                        gxTv_SdtTransactionContext_Callerobject = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "CallerOnDelete"))
                    {
                        gxTv_SdtTransactionContext_Callerondelete = (bool)(Convert.ToBoolean(((StringUtil.StrCmp(oReader.Value, "true") == 0) || (StringUtil.StrCmp(oReader.Value, "1") == 0) ? 1 : 0)));
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "CallerURL"))
                    {
                        gxTv_SdtTransactionContext_Callerurl = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "TransactionName"))
                    {
                        gxTv_SdtTransactionContext_Transactionname = oReader.Value;
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "Attributes"))
                    {
                        if (gxTv_SdtTransactionContext_Attributes == null)
                        {
                            gxTv_SdtTransactionContext_Attributes = new GxObjectCollection(context, "TransactionContext.Attribute", "CalcularPeajes", "SdtTransactionContext_Attribute", "GeneXus.Programs");
                        }
                        if (oReader.IsSimple == 0)
                        {
                            GXSoapError = gxTv_SdtTransactionContext_Attributes.readxmlcollection(oReader, "Attributes", "Attribute");
                        }
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    nOutParmCount = (short)(nOutParmCount + 1);
                    if (readOk == 0)
                    {
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Error reading " + sTagName + StringUtil.NewLine( );
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Message: " + oReader.ReadRawXML();
                        GXSoapError         = (short)(nOutParmCount * -1);
                    }
                }
            }
            return(GXSoapError);
        }
예제 #16
0
        static public String read_section(IGxContext context,
                                          GXXMLReader oReader,
                                          GxLocation oLocation)
        {
            String sSection;

            sSection = "";
            if (oReader.NodeType == 1)
            {
                sSection = oReader.Name;
                oReader.Read();
                while (!((StringUtil.StrCmp(oReader.Name, sSection) == 0) && (oReader.NodeType == 2)))
                {
                    if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "host") == 0)
                    {
                        oLocation.Host = oReader.Value;
                    }
                    else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "port") == 0)
                    {
                        oLocation.Port = (int)(NumberUtil.Val(oReader.Value, "."));
                    }
                    else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "baseurl") == 0)
                    {
                        oLocation.BaseUrl = oReader.Value;
                    }
                    else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "resourcename") == 0)
                    {
                        oLocation.ResourceName = oReader.Value;
                    }
                    else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "secure") == 0)
                    {
                        oLocation.Secure = (short)(NumberUtil.Val(oReader.Value, "."));
                    }
                    else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "proxyserverhost") == 0)
                    {
                        oLocation.ProxyServerHost = oReader.Value;
                    }
                    else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "proxyserverport") == 0)
                    {
                        oLocation.ProxyServerPort = (int)(NumberUtil.Val(oReader.Value, "."));
                    }
                    else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "timeout") == 0)
                    {
                        oLocation.Timeout = (short)(NumberUtil.Val(oReader.Value, "."));
                    }
                    else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "cancelonerror") == 0)
                    {
                        oLocation.CancelOnError = (short)(NumberUtil.Val(oReader.Value, "."));
                    }
                    else if (StringUtil.StrCmp(oReader.Name, "Authentication") == 0)
                    {
                        oLocation.Authentication       = 1;
                        oLocation.AuthenticationMethod = (short)(NumberUtil.Val(StringUtil.Str((decimal)(0), 1, 0), "."));
                        oReader.Read();
                        while (!((StringUtil.StrCmp(oReader.Name, "Authentication") == 0) && (oReader.NodeType == 2)))
                        {
                            if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "authenticationmethod") == 0)
                            {
                                oLocation.AuthenticationMethod = (short)(NumberUtil.Val(oReader.Value, "."));
                            }
                            else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "authenticationuser") == 0)
                            {
                                oLocation.AuthenticationUser = oReader.Value;
                            }
                            else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "authenticationrealm") == 0)
                            {
                                oLocation.AuthenticationRealm = oReader.Value;
                            }
                            else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "authenticationpassword") == 0)
                            {
                                oLocation.AuthenticationPassword = oReader.Value;
                            }
                            oReader.Read();
                        }
                    }
                    else if (StringUtil.StrCmp(oReader.Name, "Proxyauthentication") == 0)
                    {
                        oLocation.ProxyAuthenticationMethod = (short)(NumberUtil.Val(StringUtil.Str((decimal)(0), 1, 0), "."));
                        oReader.Read();
                        while (!((StringUtil.StrCmp(oReader.Name, "Proxyauthentication") == 0) && (oReader.NodeType == 2)))
                        {
                            if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "proxyauthenticationmethod") == 0)
                            {
                                oLocation.ProxyAuthenticationMethod = (short)(NumberUtil.Val(oReader.Value, "."));
                            }
                            else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "proxyauthenticationuser") == 0)
                            {
                                oLocation.ProxyAuthenticationUser = oReader.Value;
                            }
                            else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "proxyauthenticationrealm") == 0)
                            {
                                oLocation.ProxyAuthenticationRealm = oReader.Value;
                            }
                            else if (StringUtil.StrCmp(StringUtil.Lower(oReader.Name), "proxyauthenticationpassword") == 0)
                            {
                                oLocation.ProxyAuthenticationPassword = oReader.Value;
                            }
                            oReader.Read();
                        }
                    }
                    oReader.Read();
                }
            }
            return(sSection);
        }
예제 #17
0
        static public void initLocations(IGxContext context,
                                         GXXMLReader oReader)
        {
            String     sSection;
            String     sName;
            short      nFirstRead;
            GxLocation oLocation;

            context.nLocRead     = 1;
            context.colLocations = new GxLocationCollection();
            if (oReader.ErrCode == 0)
            {
                if (oReader.ReadType(1, "GXLocations") > 0)
                {
                    oReader.Read();
                    while (!((StringUtil.StrCmp(oReader.Name, "GXLocations") == 0) && (oReader.NodeType == 2)))
                    {
                        if ((StringUtil.StrCmp(oReader.Name, "GXLocation") == 0) && (oReader.NodeType == 1))
                        {
                            sName            = oReader.GetAttributeByName("name");
                            oLocation        = context.colLocations.GetItem(sName);
                            context.nSOAPErr = 0;
                            if (oLocation == null)
                            {
                                context.nSOAPErr = 1;
                            }
                            if (context.nSOAPErr != 0)
                            {
                                /* Error while reading XML. Code:  4 . Message:  Input error . */
                                oLocation                        = new GxLocation();
                                oLocation.Name                   = sName;
                                oLocation.Host                   = "localhost";
                                oLocation.Port                   = 80;
                                oLocation.BaseUrl                = "/";
                                oLocation.Secure                 = 0;
                                oLocation.ProxyServerHost        = "";
                                oLocation.ProxyServerPort        = 0;
                                oLocation.Timeout                = 0;
                                oLocation.CancelOnError          = 0;
                                oLocation.Authentication         = 0;
                                oLocation.AuthenticationMethod   = 0;
                                oLocation.AuthenticationRealm    = "";
                                oLocation.AuthenticationUser     = "";
                                oLocation.AuthenticationPassword = "";
                                oLocation.GroupLocation          = "";
                                context.colLocations.Add(oLocation, sName);
                            }
                            oLocation.GroupLocation = "";
                            nFirstRead = 1;
                            oReader.Read();
                            while (!((StringUtil.StrCmp(oReader.Name, "GXLocation") == 0) && (oReader.NodeType == 2)))
                            {
                                sSection = read_section(context, oReader, oLocation);
                                if (((StringUtil.StrCmp(sSection, "Common") == 0) && (nFirstRead == 1)) || (StringUtil.StrCmp(sSection, "HTTP") == 0))
                                {
                                    nFirstRead = 0;
                                }
                                oReader.Read();
                            }
                        }
                        oReader.Read();
                    }
                }
            }
        }
예제 #18
0
        public override short readxml(GXXMLReader oReader,
                                      String sName)
        {
            short GXSoapError = 1;

            sTagName = oReader.Name;
            if (oReader.IsSimple == 0)
            {
                GXSoapError   = oReader.Read();
                nOutParmCount = 0;
                while (((StringUtil.StrCmp(oReader.Name, sTagName) != 0) || (oReader.NodeType == 1)) && (GXSoapError > 0))
                {
                    readOk = 0;
                    if (StringUtil.StrCmp2(oReader.LocalName, "CurrentPage"))
                    {
                        gxTv_SdtGridState_Currentpage = (short)(NumberUtil.Val(oReader.Value, "."));
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "OrderedBy"))
                    {
                        gxTv_SdtGridState_Orderedby = (short)(NumberUtil.Val(oReader.Value, "."));
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "HidingSearch"))
                    {
                        gxTv_SdtGridState_Hidingsearch = (short)(NumberUtil.Val(oReader.Value, "."));
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    if (StringUtil.StrCmp2(oReader.LocalName, "FilterValues"))
                    {
                        if (gxTv_SdtGridState_Filtervalues == null)
                        {
                            gxTv_SdtGridState_Filtervalues = new GxObjectCollection(context, "GridState.FilterValue", "CalcularPeajes", "SdtGridState_FilterValue", "GeneXus.Programs");
                        }
                        if (oReader.IsSimple == 0)
                        {
                            GXSoapError = gxTv_SdtGridState_Filtervalues.readxmlcollection(oReader, "FilterValues", "FilterValue");
                        }
                        if (GXSoapError > 0)
                        {
                            readOk = 1;
                        }
                        GXSoapError = oReader.Read();
                    }
                    nOutParmCount = (short)(nOutParmCount + 1);
                    if (readOk == 0)
                    {
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Error reading " + sTagName + StringUtil.NewLine( );
                        context.sSOAPErrMsg = context.sSOAPErrMsg + "Message: " + oReader.ReadRawXML();
                        GXSoapError         = (short)(nOutParmCount * -1);
                    }
                }
            }
            return(GXSoapError);
        }