Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / ManagedLibraries / Remoting / MetaData / SudsCommon.cs / 1305376 / SudsCommon.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== //============================================================ // // File: SudsCommon.cs //// Author: Peter de Jong ([....]) // // Purpose: Classes common to the SudsWriter and SudsParser // // Date: November 18, 2000 // //=========================================================== namespace System.Runtime.Remoting.MetadataServices { using System; using System.Collections; using System.Text; using System.Reflection; using System.IO; using System.Runtime.Serialization.Formatters; using System.Runtime.Remoting; using System.Runtime.Remoting.Metadata.W3cXsd2001; using System.Globalization; [Serializable] public enum SdlType { Sdl = 0, Wsdl = 1 } [Serializable] internal enum UrtType { None = 0, Interop = 1, UrtSystem = 2, UrtUser = 3, Xsd = 4, } [Serializable] internal enum SUDSType { None = 0, ClientProxy = 1, MarshalByRef = 2, } [Serializable] internal enum XsdVersion { V1999 = 0, V2000 = 1, V2001 = 2, } internal static class SudsConverter { internal static String Xsd1999 = "http://www.w3.org/1999/XMLSchema"; internal static String Xsi1999 = "http://www.w3.org/1999/XMLSchema-instance"; internal static String Xsd2000 = "http://www.w3.org/2000/10/XMLSchema"; internal static String Xsi2000 = "http://www.w3.org/2000/10/XMLSchema-instance"; internal static String Xsd2001 = "http://www.w3.org/2001/XMLSchema"; internal static String Xsi2001 = "http://www.w3.org/2001/XMLSchema-instance"; internal static Type typeofByte = typeof(Byte); internal static Type typeofSByte = typeof(SByte); internal static Type typeofBoolean = typeof(Boolean); internal static Type typeofChar = typeof(Char); internal static Type typeofDouble = typeof(Double); internal static Type typeofSingle = typeof(Single); internal static Type typeofDecimal = typeof(Decimal); internal static Type typeofInt16 = typeof(Int16); internal static Type typeofInt32 = typeof(Int32); internal static Type typeofInt64 = typeof(Int64); internal static Type typeofUInt16 = typeof(UInt16); internal static Type typeofUInt32 = typeof(UInt32); internal static Type typeofUInt64 = typeof(UInt64); internal static Type typeofSoapTime = typeof(SoapTime); internal static Type typeofSoapDate = typeof(SoapDate); internal static Type typeofSoapYearMonth = typeof(SoapYearMonth); internal static Type typeofSoapYear = typeof(SoapYear); internal static Type typeofSoapMonthDay = typeof(SoapMonthDay); internal static Type typeofSoapDay = typeof(SoapDay); internal static Type typeofSoapMonth = typeof(SoapMonth); internal static Type typeofSoapHexBinary = typeof(SoapHexBinary); internal static Type typeofSoapBase64Binary = typeof(SoapBase64Binary); internal static Type typeofSoapInteger = typeof(SoapInteger); internal static Type typeofSoapPositiveInteger = typeof(SoapPositiveInteger); internal static Type typeofSoapNonPositiveInteger = typeof(SoapNonPositiveInteger); internal static Type typeofSoapNonNegativeInteger = typeof(SoapNonNegativeInteger); internal static Type typeofSoapNegativeInteger = typeof(SoapNegativeInteger); internal static Type typeofSoapAnyUri = typeof(SoapAnyUri); internal static Type typeofSoapQName = typeof(SoapQName); internal static Type typeofSoapNotation = typeof(SoapNotation); internal static Type typeofSoapNormalizedString = typeof(SoapNormalizedString); internal static Type typeofSoapToken = typeof(SoapToken); internal static Type typeofSoapLanguage = typeof(SoapLanguage); internal static Type typeofSoapName = typeof(SoapName); internal static Type typeofSoapIdrefs = typeof(SoapIdrefs); internal static Type typeofSoapEntities = typeof(SoapEntities); internal static Type typeofSoapNmtoken = typeof(SoapNmtoken); internal static Type typeofSoapNmtokens = typeof(SoapNmtokens); internal static Type typeofSoapNcName = typeof(SoapNcName); internal static Type typeofSoapId = typeof(SoapId); internal static Type typeofSoapIdref = typeof(SoapIdref); internal static Type typeofSoapEntity = typeof(SoapEntity); internal static Type typeofString = typeof(String); internal static Type typeofObject = typeof(Object); internal static Type typeofVoid = typeof(void); internal static Type typeofDateTime = typeof(DateTime); internal static Type typeofTimeSpan = typeof(TimeSpan); internal static Type typeofISoapXsd = typeof(ISoapXsd); internal static String GetXsdVersion(XsdVersion xsdVersion) { String version = null; if (xsdVersion == XsdVersion.V1999) version = Xsd1999; else if (xsdVersion == XsdVersion.V2000) version = Xsd2000; else version = Xsd2001; return version; } internal static String GetXsiVersion(XsdVersion xsdVersion) { String version = null; if (xsdVersion == XsdVersion.V1999) version = Xsi1999; else if (xsdVersion == XsdVersion.V2000) version = Xsi2000; else version = Xsi2001; return version; } internal static String MapClrTypeToXsdType(Type clrType) { String typeName = null; if (clrType == typeofChar) return null; if (clrType.IsPrimitive) { if (clrType == typeofByte) typeName = "xsd:unsignedByte"; else if (clrType == typeofSByte) typeName = "xsd:byte"; else if (clrType == typeofBoolean) typeName = "xsd:boolean"; else if (clrType == typeofChar) typeName = "xsd:char"; //Not an xsd type, but need a way to identify a char else if (clrType == typeofDouble) typeName = "xsd:double"; else if (clrType == typeofSingle) typeName = "xsd:float"; else if (clrType == typeofDecimal) typeName = "xsd:decimal"; else if (clrType == typeofDateTime) typeName = "xsd:dateTime"; else if (clrType == typeofInt16) typeName = "xsd:short"; else if (clrType == typeofInt32) typeName = "xsd:int"; else if (clrType == typeofInt64) typeName = "xsd:long"; else if (clrType == typeofUInt16) typeName = "xsd:unsignedShort"; else if (clrType == typeofUInt32) typeName = "xsd:unsignedInt"; else if (clrType == typeofUInt64) typeName = "xsd:unsignedLong"; else if (clrType == typeofTimeSpan) typeName = "xsd:duration"; } else if (typeofISoapXsd.IsAssignableFrom(clrType)) { if (clrType == typeofSoapTime) typeName = SoapTime.XsdType; else if (clrType == typeofSoapDate) typeName = SoapDate.XsdType; else if (clrType == typeofSoapYearMonth) typeName = SoapYearMonth.XsdType; else if (clrType == typeofSoapYear) typeName = SoapYear.XsdType; else if (clrType == typeofSoapMonthDay) typeName = SoapMonthDay.XsdType; else if (clrType == typeofSoapDay) typeName = SoapDay.XsdType; else if (clrType == typeofSoapMonth) typeName = SoapMonth.XsdType; else if (clrType == typeofSoapHexBinary) typeName = SoapHexBinary.XsdType; else if (clrType == typeofSoapBase64Binary) typeName = SoapBase64Binary.XsdType; else if (clrType == typeofSoapInteger) typeName = SoapInteger.XsdType; else if (clrType == typeofSoapPositiveInteger) typeName = SoapPositiveInteger.XsdType; else if (clrType == typeofSoapNonPositiveInteger) typeName = SoapNonPositiveInteger.XsdType; else if (clrType == typeofSoapNonNegativeInteger) typeName = SoapNonNegativeInteger.XsdType; else if (clrType == typeofSoapNegativeInteger) typeName = SoapNegativeInteger.XsdType; else if (clrType == typeofSoapAnyUri) typeName = SoapAnyUri.XsdType; else if (clrType == typeofSoapQName) typeName = SoapQName.XsdType; else if (clrType == typeofSoapNotation) typeName = SoapNotation.XsdType; else if (clrType == typeofSoapNormalizedString) typeName = SoapNormalizedString.XsdType; else if (clrType == typeofSoapToken) typeName = SoapToken.XsdType; else if (clrType == typeofSoapLanguage) typeName = SoapLanguage.XsdType; else if (clrType == typeofSoapName) typeName = SoapName.XsdType; else if (clrType == typeofSoapIdrefs) typeName = SoapIdrefs.XsdType; else if (clrType == typeofSoapEntities) typeName = SoapEntities.XsdType; else if (clrType == typeofSoapNmtoken) typeName = SoapNmtoken.XsdType; else if (clrType == typeofSoapNmtokens) typeName = SoapNmtokens.XsdType; else if (clrType == typeofSoapNcName) typeName = SoapNcName.XsdType; else if (clrType == typeofSoapId) typeName = SoapId.XsdType; else if (clrType == typeofSoapIdref) typeName = SoapIdref.XsdType; else if (clrType == typeofSoapEntity) typeName = SoapEntity.XsdType; typeName = "xsd:"+typeName; } else if (clrType == typeofString) typeName = "xsd:string"; else if (clrType == typeofDecimal) typeName = "xsd:decimal"; else if (clrType == typeofObject) typeName = "xsd:anyType"; else if (clrType == typeofVoid) typeName = "void"; else if (clrType == typeofDateTime) typeName = "xsd:dateTime"; else if (clrType == typeofTimeSpan) typeName = "xsd:duration"; return typeName; } internal static String MapXsdToClrTypes(String xsdType) { String lxsdType = xsdType.ToLower(CultureInfo.InvariantCulture); String clrType = null; if (xsdType == null || xsdType.Length == 0) return null; switch (lxsdType[0]) { case 'a': if (lxsdType == "anyuri") clrType = "SoapAnyUri"; else if (lxsdType == "anytype" || lxsdType == "ur-type") clrType = "Object"; break; case 'b': if (lxsdType == "boolean") clrType = "Boolean"; else if (lxsdType == "byte") clrType = "SByte"; else if (lxsdType == "base64binary") clrType = "SoapBase64Binary"; break; case 'c': if (lxsdType == "char") clrType = "Char"; break; case 'd': if (lxsdType == "double") clrType = "Double"; else if (lxsdType == "datetime") clrType = "DateTime"; else if (lxsdType == "decimal") clrType = "Decimal"; else if (lxsdType == "duration") clrType = "TimeSpan"; else if (lxsdType == "date") clrType = "SoapDate"; break; case 'e': if (lxsdType == "entities") clrType = "SoapEntities"; else if (lxsdType == "entity") clrType = "SoapEntity"; break; case 'f': if (lxsdType == "float") clrType = "Single"; break; case 'g': if (lxsdType == "gyearmonth") clrType = "SoapYearMonth"; else if (lxsdType == "gyear") clrType = "SoapYear"; else if (lxsdType == "gmonthday") clrType = "SoapMonthDay"; else if (lxsdType == "gday") clrType = "SoapDay"; else if (lxsdType == "gmonth") clrType = "SoapMonth"; break; case 'h': if (lxsdType == "hexbinary") clrType = "SoapHexBinary"; break; case 'i': if (lxsdType == "int") clrType = "Int32"; else if (lxsdType == "integer") clrType = "SoapInteger"; else if (lxsdType == "idrefs") clrType = "SoapIdrefs"; else if (lxsdType == "id") clrType = "SoapId"; else if (lxsdType == "idref") clrType = "SoapIdref"; break; case 'l': if (lxsdType == "long") clrType = "Int64"; else if (lxsdType == "language") clrType = "SoapLanguage"; break; case 'n': if (lxsdType == "number") clrType = "Decimal"; else if (lxsdType == "normalizedstring") clrType = "SoapNormalizedString"; else if (lxsdType == "nonpositiveinteger") clrType = "SoapNonPositiveInteger"; else if (lxsdType == "negativeinteger") clrType = "SoapNegativeInteger"; else if (lxsdType == "nonnegativeinteger") clrType = "SoapNonNegativeInteger"; else if (lxsdType == "notation") clrType = "SoapNotation"; else if (lxsdType == "nmtoken") clrType = "SoapNmtoken"; else if (lxsdType == "nmtokens") clrType = "SoapNmtokens"; else if (lxsdType == "name") clrType = "SoapName"; else if (lxsdType == "ncname") clrType = "SoapNcName"; break; case 'p': if (lxsdType == "positiveinteger") clrType = "SoapPositiveInteger"; break; case 'q': if (lxsdType == "qname") clrType = "SoapQName"; break; case 's': if (lxsdType == "string") clrType = "String"; else if (lxsdType == "short") clrType = "Int16"; break; case 't': if (lxsdType == "time") clrType = "SoapTime"; else if (lxsdType == "token") clrType = "SoapToken"; break; case 'u': if (lxsdType == "unsignedlong") clrType = "UInt64"; else if (lxsdType == "unsignedint") clrType = "UInt32"; else if (lxsdType == "unsignedshort") clrType = "UInt16"; else if (lxsdType == "unsignedbyte") clrType = "Byte"; break; default: break; } return clrType; } } internal static class Util { //internal static FileStream fout = null; // disable csharp compiler warning #0414: field assigned unused value #pragma warning disable 0414 internal static StreamWriter writer = null; #pragma warning restore 0414 [System.Diagnostics.Conditional("_LOGGING")] internal static void Log(String message) { //InternalRM.InfoSoap(message); //uncomment for traces /* if (fout == null) { fout = new FileStream("suds.log", FileMode.Create, FileAccess.Write, FileShare.ReadWrite); writer = new StreamWriter(fout); writer.AutoFlush = true; } writer.WriteLine(message); */ //System.Runtime.Serialization.Formatters.InternalST.InfoSoap(messages); } [System.Diagnostics.Conditional("_LOGGING")] internal static void LogInput(ref TextReader input) { //System.Runtime.Serialization.Formatters.InternalST.InfoSoap(messages); if (InternalRM.SoapCheckEnabled()) { String strbuffer = input.ReadToEnd(); InternalRM.InfoSoap("******************WSDL******************"); InternalRM.InfoSoap(strbuffer); InternalRM.InfoSoap("******************End WSDL******************"); input = (TextReader)new StringReader(strbuffer); } } [System.Diagnostics.Conditional("_LOGGING")] internal static void LogString(String strbuffer) { InternalRM.InfoSoap("******************WSDL******************"); InternalRM.InfoSoap(strbuffer); InternalRM.InfoSoap("******************End WSDL******************"); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== //============================================================ // // File: SudsCommon.cs //// Author: Peter de Jong ([....]) // // Purpose: Classes common to the SudsWriter and SudsParser // // Date: November 18, 2000 // //=========================================================== namespace System.Runtime.Remoting.MetadataServices { using System; using System.Collections; using System.Text; using System.Reflection; using System.IO; using System.Runtime.Serialization.Formatters; using System.Runtime.Remoting; using System.Runtime.Remoting.Metadata.W3cXsd2001; using System.Globalization; [Serializable] public enum SdlType { Sdl = 0, Wsdl = 1 } [Serializable] internal enum UrtType { None = 0, Interop = 1, UrtSystem = 2, UrtUser = 3, Xsd = 4, } [Serializable] internal enum SUDSType { None = 0, ClientProxy = 1, MarshalByRef = 2, } [Serializable] internal enum XsdVersion { V1999 = 0, V2000 = 1, V2001 = 2, } internal static class SudsConverter { internal static String Xsd1999 = "http://www.w3.org/1999/XMLSchema"; internal static String Xsi1999 = "http://www.w3.org/1999/XMLSchema-instance"; internal static String Xsd2000 = "http://www.w3.org/2000/10/XMLSchema"; internal static String Xsi2000 = "http://www.w3.org/2000/10/XMLSchema-instance"; internal static String Xsd2001 = "http://www.w3.org/2001/XMLSchema"; internal static String Xsi2001 = "http://www.w3.org/2001/XMLSchema-instance"; internal static Type typeofByte = typeof(Byte); internal static Type typeofSByte = typeof(SByte); internal static Type typeofBoolean = typeof(Boolean); internal static Type typeofChar = typeof(Char); internal static Type typeofDouble = typeof(Double); internal static Type typeofSingle = typeof(Single); internal static Type typeofDecimal = typeof(Decimal); internal static Type typeofInt16 = typeof(Int16); internal static Type typeofInt32 = typeof(Int32); internal static Type typeofInt64 = typeof(Int64); internal static Type typeofUInt16 = typeof(UInt16); internal static Type typeofUInt32 = typeof(UInt32); internal static Type typeofUInt64 = typeof(UInt64); internal static Type typeofSoapTime = typeof(SoapTime); internal static Type typeofSoapDate = typeof(SoapDate); internal static Type typeofSoapYearMonth = typeof(SoapYearMonth); internal static Type typeofSoapYear = typeof(SoapYear); internal static Type typeofSoapMonthDay = typeof(SoapMonthDay); internal static Type typeofSoapDay = typeof(SoapDay); internal static Type typeofSoapMonth = typeof(SoapMonth); internal static Type typeofSoapHexBinary = typeof(SoapHexBinary); internal static Type typeofSoapBase64Binary = typeof(SoapBase64Binary); internal static Type typeofSoapInteger = typeof(SoapInteger); internal static Type typeofSoapPositiveInteger = typeof(SoapPositiveInteger); internal static Type typeofSoapNonPositiveInteger = typeof(SoapNonPositiveInteger); internal static Type typeofSoapNonNegativeInteger = typeof(SoapNonNegativeInteger); internal static Type typeofSoapNegativeInteger = typeof(SoapNegativeInteger); internal static Type typeofSoapAnyUri = typeof(SoapAnyUri); internal static Type typeofSoapQName = typeof(SoapQName); internal static Type typeofSoapNotation = typeof(SoapNotation); internal static Type typeofSoapNormalizedString = typeof(SoapNormalizedString); internal static Type typeofSoapToken = typeof(SoapToken); internal static Type typeofSoapLanguage = typeof(SoapLanguage); internal static Type typeofSoapName = typeof(SoapName); internal static Type typeofSoapIdrefs = typeof(SoapIdrefs); internal static Type typeofSoapEntities = typeof(SoapEntities); internal static Type typeofSoapNmtoken = typeof(SoapNmtoken); internal static Type typeofSoapNmtokens = typeof(SoapNmtokens); internal static Type typeofSoapNcName = typeof(SoapNcName); internal static Type typeofSoapId = typeof(SoapId); internal static Type typeofSoapIdref = typeof(SoapIdref); internal static Type typeofSoapEntity = typeof(SoapEntity); internal static Type typeofString = typeof(String); internal static Type typeofObject = typeof(Object); internal static Type typeofVoid = typeof(void); internal static Type typeofDateTime = typeof(DateTime); internal static Type typeofTimeSpan = typeof(TimeSpan); internal static Type typeofISoapXsd = typeof(ISoapXsd); internal static String GetXsdVersion(XsdVersion xsdVersion) { String version = null; if (xsdVersion == XsdVersion.V1999) version = Xsd1999; else if (xsdVersion == XsdVersion.V2000) version = Xsd2000; else version = Xsd2001; return version; } internal static String GetXsiVersion(XsdVersion xsdVersion) { String version = null; if (xsdVersion == XsdVersion.V1999) version = Xsi1999; else if (xsdVersion == XsdVersion.V2000) version = Xsi2000; else version = Xsi2001; return version; } internal static String MapClrTypeToXsdType(Type clrType) { String typeName = null; if (clrType == typeofChar) return null; if (clrType.IsPrimitive) { if (clrType == typeofByte) typeName = "xsd:unsignedByte"; else if (clrType == typeofSByte) typeName = "xsd:byte"; else if (clrType == typeofBoolean) typeName = "xsd:boolean"; else if (clrType == typeofChar) typeName = "xsd:char"; //Not an xsd type, but need a way to identify a char else if (clrType == typeofDouble) typeName = "xsd:double"; else if (clrType == typeofSingle) typeName = "xsd:float"; else if (clrType == typeofDecimal) typeName = "xsd:decimal"; else if (clrType == typeofDateTime) typeName = "xsd:dateTime"; else if (clrType == typeofInt16) typeName = "xsd:short"; else if (clrType == typeofInt32) typeName = "xsd:int"; else if (clrType == typeofInt64) typeName = "xsd:long"; else if (clrType == typeofUInt16) typeName = "xsd:unsignedShort"; else if (clrType == typeofUInt32) typeName = "xsd:unsignedInt"; else if (clrType == typeofUInt64) typeName = "xsd:unsignedLong"; else if (clrType == typeofTimeSpan) typeName = "xsd:duration"; } else if (typeofISoapXsd.IsAssignableFrom(clrType)) { if (clrType == typeofSoapTime) typeName = SoapTime.XsdType; else if (clrType == typeofSoapDate) typeName = SoapDate.XsdType; else if (clrType == typeofSoapYearMonth) typeName = SoapYearMonth.XsdType; else if (clrType == typeofSoapYear) typeName = SoapYear.XsdType; else if (clrType == typeofSoapMonthDay) typeName = SoapMonthDay.XsdType; else if (clrType == typeofSoapDay) typeName = SoapDay.XsdType; else if (clrType == typeofSoapMonth) typeName = SoapMonth.XsdType; else if (clrType == typeofSoapHexBinary) typeName = SoapHexBinary.XsdType; else if (clrType == typeofSoapBase64Binary) typeName = SoapBase64Binary.XsdType; else if (clrType == typeofSoapInteger) typeName = SoapInteger.XsdType; else if (clrType == typeofSoapPositiveInteger) typeName = SoapPositiveInteger.XsdType; else if (clrType == typeofSoapNonPositiveInteger) typeName = SoapNonPositiveInteger.XsdType; else if (clrType == typeofSoapNonNegativeInteger) typeName = SoapNonNegativeInteger.XsdType; else if (clrType == typeofSoapNegativeInteger) typeName = SoapNegativeInteger.XsdType; else if (clrType == typeofSoapAnyUri) typeName = SoapAnyUri.XsdType; else if (clrType == typeofSoapQName) typeName = SoapQName.XsdType; else if (clrType == typeofSoapNotation) typeName = SoapNotation.XsdType; else if (clrType == typeofSoapNormalizedString) typeName = SoapNormalizedString.XsdType; else if (clrType == typeofSoapToken) typeName = SoapToken.XsdType; else if (clrType == typeofSoapLanguage) typeName = SoapLanguage.XsdType; else if (clrType == typeofSoapName) typeName = SoapName.XsdType; else if (clrType == typeofSoapIdrefs) typeName = SoapIdrefs.XsdType; else if (clrType == typeofSoapEntities) typeName = SoapEntities.XsdType; else if (clrType == typeofSoapNmtoken) typeName = SoapNmtoken.XsdType; else if (clrType == typeofSoapNmtokens) typeName = SoapNmtokens.XsdType; else if (clrType == typeofSoapNcName) typeName = SoapNcName.XsdType; else if (clrType == typeofSoapId) typeName = SoapId.XsdType; else if (clrType == typeofSoapIdref) typeName = SoapIdref.XsdType; else if (clrType == typeofSoapEntity) typeName = SoapEntity.XsdType; typeName = "xsd:"+typeName; } else if (clrType == typeofString) typeName = "xsd:string"; else if (clrType == typeofDecimal) typeName = "xsd:decimal"; else if (clrType == typeofObject) typeName = "xsd:anyType"; else if (clrType == typeofVoid) typeName = "void"; else if (clrType == typeofDateTime) typeName = "xsd:dateTime"; else if (clrType == typeofTimeSpan) typeName = "xsd:duration"; return typeName; } internal static String MapXsdToClrTypes(String xsdType) { String lxsdType = xsdType.ToLower(CultureInfo.InvariantCulture); String clrType = null; if (xsdType == null || xsdType.Length == 0) return null; switch (lxsdType[0]) { case 'a': if (lxsdType == "anyuri") clrType = "SoapAnyUri"; else if (lxsdType == "anytype" || lxsdType == "ur-type") clrType = "Object"; break; case 'b': if (lxsdType == "boolean") clrType = "Boolean"; else if (lxsdType == "byte") clrType = "SByte"; else if (lxsdType == "base64binary") clrType = "SoapBase64Binary"; break; case 'c': if (lxsdType == "char") clrType = "Char"; break; case 'd': if (lxsdType == "double") clrType = "Double"; else if (lxsdType == "datetime") clrType = "DateTime"; else if (lxsdType == "decimal") clrType = "Decimal"; else if (lxsdType == "duration") clrType = "TimeSpan"; else if (lxsdType == "date") clrType = "SoapDate"; break; case 'e': if (lxsdType == "entities") clrType = "SoapEntities"; else if (lxsdType == "entity") clrType = "SoapEntity"; break; case 'f': if (lxsdType == "float") clrType = "Single"; break; case 'g': if (lxsdType == "gyearmonth") clrType = "SoapYearMonth"; else if (lxsdType == "gyear") clrType = "SoapYear"; else if (lxsdType == "gmonthday") clrType = "SoapMonthDay"; else if (lxsdType == "gday") clrType = "SoapDay"; else if (lxsdType == "gmonth") clrType = "SoapMonth"; break; case 'h': if (lxsdType == "hexbinary") clrType = "SoapHexBinary"; break; case 'i': if (lxsdType == "int") clrType = "Int32"; else if (lxsdType == "integer") clrType = "SoapInteger"; else if (lxsdType == "idrefs") clrType = "SoapIdrefs"; else if (lxsdType == "id") clrType = "SoapId"; else if (lxsdType == "idref") clrType = "SoapIdref"; break; case 'l': if (lxsdType == "long") clrType = "Int64"; else if (lxsdType == "language") clrType = "SoapLanguage"; break; case 'n': if (lxsdType == "number") clrType = "Decimal"; else if (lxsdType == "normalizedstring") clrType = "SoapNormalizedString"; else if (lxsdType == "nonpositiveinteger") clrType = "SoapNonPositiveInteger"; else if (lxsdType == "negativeinteger") clrType = "SoapNegativeInteger"; else if (lxsdType == "nonnegativeinteger") clrType = "SoapNonNegativeInteger"; else if (lxsdType == "notation") clrType = "SoapNotation"; else if (lxsdType == "nmtoken") clrType = "SoapNmtoken"; else if (lxsdType == "nmtokens") clrType = "SoapNmtokens"; else if (lxsdType == "name") clrType = "SoapName"; else if (lxsdType == "ncname") clrType = "SoapNcName"; break; case 'p': if (lxsdType == "positiveinteger") clrType = "SoapPositiveInteger"; break; case 'q': if (lxsdType == "qname") clrType = "SoapQName"; break; case 's': if (lxsdType == "string") clrType = "String"; else if (lxsdType == "short") clrType = "Int16"; break; case 't': if (lxsdType == "time") clrType = "SoapTime"; else if (lxsdType == "token") clrType = "SoapToken"; break; case 'u': if (lxsdType == "unsignedlong") clrType = "UInt64"; else if (lxsdType == "unsignedint") clrType = "UInt32"; else if (lxsdType == "unsignedshort") clrType = "UInt16"; else if (lxsdType == "unsignedbyte") clrType = "Byte"; break; default: break; } return clrType; } } internal static class Util { //internal static FileStream fout = null; // disable csharp compiler warning #0414: field assigned unused value #pragma warning disable 0414 internal static StreamWriter writer = null; #pragma warning restore 0414 [System.Diagnostics.Conditional("_LOGGING")] internal static void Log(String message) { //InternalRM.InfoSoap(message); //uncomment for traces /* if (fout == null) { fout = new FileStream("suds.log", FileMode.Create, FileAccess.Write, FileShare.ReadWrite); writer = new StreamWriter(fout); writer.AutoFlush = true; } writer.WriteLine(message); */ //System.Runtime.Serialization.Formatters.InternalST.InfoSoap(messages); } [System.Diagnostics.Conditional("_LOGGING")] internal static void LogInput(ref TextReader input) { //System.Runtime.Serialization.Formatters.InternalST.InfoSoap(messages); if (InternalRM.SoapCheckEnabled()) { String strbuffer = input.ReadToEnd(); InternalRM.InfoSoap("******************WSDL******************"); InternalRM.InfoSoap(strbuffer); InternalRM.InfoSoap("******************End WSDL******************"); input = (TextReader)new StringReader(strbuffer); } } [System.Diagnostics.Conditional("_LOGGING")] internal static void LogString(String strbuffer) { InternalRM.InfoSoap("******************WSDL******************"); InternalRM.InfoSoap(strbuffer); InternalRM.InfoSoap("******************End WSDL******************"); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Win32PrintDialog.cs
- SoapMessage.cs
- DataException.cs
- Gdiplus.cs
- CreateCardRequest.cs
- TypeLoader.cs
- PropertyOverridesTypeEditor.cs
- SortKey.cs
- TextTreeUndoUnit.cs
- BitmapEffectOutputConnector.cs
- DataGridViewTextBoxCell.cs
- JapaneseLunisolarCalendar.cs
- BinaryFormatterWriter.cs
- CodeDelegateInvokeExpression.cs
- StoreItemCollection.cs
- FontSourceCollection.cs
- PasswordValidationException.cs
- DataColumnMappingCollection.cs
- ValidatingPropertiesEventArgs.cs
- XmlDictionaryReaderQuotas.cs
- CryptoProvider.cs
- WorkflowControlEndpoint.cs
- Vector3DKeyFrameCollection.cs
- cache.cs
- SystemIPGlobalProperties.cs
- CutCopyPasteHelper.cs
- ZipIOZip64EndOfCentralDirectoryLocatorBlock.cs
- LeaseManager.cs
- ManagedFilter.cs
- ScriptServiceAttribute.cs
- Barrier.cs
- PrinterResolution.cs
- QuaternionRotation3D.cs
- SByteConverter.cs
- GroupedContextMenuStrip.cs
- IImplicitResourceProvider.cs
- CodeTypeReferenceCollection.cs
- SelectionRange.cs
- DependencySource.cs
- DataGrid.cs
- TimeoutValidationAttribute.cs
- DBCommand.cs
- Ops.cs
- Win32SafeHandles.cs
- ChannelCacheSettings.cs
- FileDialog.cs
- SystemPens.cs
- FilteredDataSetHelper.cs
- RuntimeConfigurationRecord.cs
- DesignerTransaction.cs
- SqlProviderServices.cs
- CounterSampleCalculator.cs
- ToolStripLabel.cs
- HttpRequestBase.cs
- WindowsAltTab.cs
- SafeNativeMethods.cs
- ReadOnlyDataSource.cs
- AbstractSvcMapFileLoader.cs
- DoubleLinkList.cs
- DataGridViewIntLinkedList.cs
- ToolStripDropDownMenu.cs
- KeysConverter.cs
- ZipIOExtraFieldPaddingElement.cs
- SQLResource.cs
- StringAnimationBase.cs
- InputElement.cs
- ExpandCollapsePattern.cs
- OutputCacheModule.cs
- GroupQuery.cs
- DataSetMappper.cs
- HMACSHA512.cs
- ConfigurationStrings.cs
- SqlCacheDependency.cs
- DispatchOperation.cs
- AsyncSerializedWorker.cs
- XmlPreloadedResolver.cs
- DataObjectMethodAttribute.cs
- SHA512Managed.cs
- PropertyDescriptors.cs
- DataGridRelationshipRow.cs
- ObjectContext.cs
- XmlUrlResolver.cs
- MailAddressCollection.cs
- DataGridViewCellCollection.cs
- EnumDataContract.cs
- DataGridItem.cs
- SQLDoubleStorage.cs
- FacetChecker.cs
- CommandConverter.cs
- BaseTreeIterator.cs
- TableCellCollection.cs
- Accessible.cs
- XLinq.cs
- StaticTextPointer.cs
- SerializerWriterEventHandlers.cs
- Utils.cs
- BufferedStream.cs
- XmlStreamNodeWriter.cs
- ListParagraph.cs
- ToolStripDropTargetManager.cs