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

ResolveTypeNames() private method

private ResolveTypeNames ( String &typeNS, String &typeName, bool &bEmbedded, bool &bPrimitive ) : void
typeNS String
typeName String
bEmbedded bool
bPrimitive bool
return void
        private void ResolveTypeNames(ref String typeNS, ref String typeName,
                                      out bool bEmbedded, out bool bPrimitive)
        {
            Util.Log("SdlParser.ResolveTypeNames typeNS "+typeNS+" typeName "+typeName);            
            // Check for reference and array types
            bEmbedded = true;
            bool bArrayType = false;
            if (MatchingStrings(typeNS, s_soapNamespaceString))
            {
                if(MatchingStrings(typeName, s_referenceString))
                    bEmbedded = false;
                else if(MatchingStrings(typeName, s_arrayString))
                    bArrayType = true;
            }

            Util.Log("SdlParser.ResolveTypeNames typeNS 1 bEmbedded "+bEmbedded+" bArrayType "+bArrayType);
            // Resolve to the actual type in the case of reference and array types
            if((bEmbedded == false) || (bArrayType == true))
            {
                Util.Log("SdlParser.ResolveTypeNames typeNS 2 ");
                typeName = LookupAttribute(s_refTypeString, s_sudsNamespaceString, true);
                Util.Log("SdlParser.ResolveTypeNames typeNS 3  typeName "+typeName);                                                        
                typeNS = ParseQName(ref typeName);
            }

            // Primitive types do not need the [Embedded] attribute;
            bPrimitive = IsPrimitiveType(typeNS, typeName);
            if(bPrimitive)
            {
                typeName = MapSchemaTypesToCSharpTypes(typeName);
                bEmbedded = false;
            }
            else if(MatchingStrings(typeName, s_urTypeString) &&
                    MatchingStrings(typeNS, s_schemaNamespaceString))
            {
                typeName = s_objectString;
            }

            return;
        }