System.Runtime.Remoting.MetadataServices.SdlParser.ParseRRMethod C# (CSharp) Method

ParseRRMethod() private method

private ParseRRMethod ( URTComplexType parsingComplexType, URTInterface parsingInterface ) : void
parsingComplexType URTComplexType
parsingInterface URTInterface
return void
        private void ParseRRMethod(URTComplexType parsingComplexType, URTInterface parsingInterface)
        {
            Util.Log("SdlParser.ParseRRMethod ns "+_XMLReader.NamespaceURI);            
            String methodName = LookupAttribute(s_nameString, null, true);
            String soapAction = null;
            RRMethod parsingMethod = new RRMethod(methodName, soapAction);
            int curDepth = _XMLReader.Depth;
            ReadNextXmlElement();
            while(_XMLReader.Depth > curDepth)
            {
                String elmName = _XMLReader.LocalName;              
                if ((MatchingNamespace(s_soapNamespaceString)) && (MatchingStrings(elmName, s_operationString)))
                {
                    soapAction = LookupAttribute(s_soapActionString, null, false);
                    parsingMethod.SoapAction = soapAction;
                }
                else if (MatchingNamespace(s_sudsNamespaceString))
                {
                    if(MatchingStrings(elmName, s_requestString))
                    {
                        String refValue = LookupAttribute(s_refString, null, true);
                        String refNS = ParseQName(ref refValue);
                        parsingMethod.AddRequest(refValue, refNS);
                        ReadNextXmlElement();
                        continue;
                    }
                    else if(MatchingStrings(elmName, s_responseString))
                    {
                        String refValue = LookupAttribute(s_refString, null, true);
                        String refNS = ParseQName(ref refValue);
                        parsingMethod.AddResponse(refValue, refNS);
                        ReadNextXmlElement();
                        continue;
                    }
                }

                // Ignore others elements such as annotations
                SkipXmlElement();
            }
            if(parsingComplexType != null)
                parsingComplexType.AddMethod(parsingMethod);
            else
                parsingInterface.AddMethod(parsingMethod);

            return;
        }