-// \r
-// System.Web.Services.Protocols.XmlReturnWriter.cs\r
-//\r
-// Author:\r
-// Tim Coleman (tim@timcoleman.com)\r
-//\r
-// Copyright (C) Tim Coleman, 2002\r
-//\r
+//
+// System.Web.Services.Protocols.XmlReturnWriter.cs
+//
+// Author:
+// Tim Coleman (tim@timcoleman.com)
+//
+// Copyright (C) Tim Coleman, 2002
+//
//
// Permission is hereby granted, free of charge, to any person obtaining
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-\r
-using System.IO;\r
-using System.Web;\r
-using System.Xml.Serialization;\r
-using System.Xml;\r
-using System.Text;\r
-\r
-namespace System.Web.Services.Protocols {\r
- internal class XmlReturnWriter : MimeReturnWriter {\r
-\r
- XmlSerializer serializer;\r
- \r
- #region Methods\r
-\r
- public override object GetInitializer (LogicalMethodInfo methodInfo)\r
- {\r
+
+using System.IO;
+using System.Web;
+using System.Xml.Serialization;
+using System.Xml;
+using System.Text;
+
+namespace System.Web.Services.Protocols {
+ internal class XmlReturnWriter : MimeReturnWriter {
+
+ XmlSerializer serializer;
+
+ #region Methods
+
+ public override object GetInitializer (LogicalMethodInfo methodInfo)
+ {
LogicalTypeInfo sti = TypeStubManager.GetLogicalTypeInfo (methodInfo.DeclaringType);
object[] ats = methodInfo.ReturnTypeCustomAttributeProvider.GetCustomAttributes (typeof(XmlRootAttribute), true);
- XmlRootAttribute root = ats.Length > 0 ? ats[0] as XmlRootAttribute : null; \r
- \r
- XmlReflectionImporter importer = new XmlReflectionImporter ();\r
- importer.IncludeTypes (methodInfo.CustomAttributeProvider);\r
+ XmlRootAttribute root = ats.Length > 0 ? ats[0] as XmlRootAttribute : null;
+
+ XmlReflectionImporter importer = new XmlReflectionImporter ();
+ importer.IncludeTypes (methodInfo.CustomAttributeProvider);
XmlTypeMapping map = importer.ImportTypeMapping (methodInfo.ReturnType, root, sti.GetWebServiceLiteralNamespace (sti.WebServiceNamespace));
- return new XmlSerializer (map);\r
- }\r
- \r
- public override object[] GetInitializers (LogicalMethodInfo[] methodInfos)\r
- {\r
- XmlReflectionImporter importer = new XmlReflectionImporter ();\r
- XmlMapping[] sers = new XmlMapping [methodInfos.Length];\r
- for (int n=0; n<sers.Length; n++)\r
- {\r
- LogicalMethodInfo metinfo = methodInfos[n];\r
- if (metinfo.IsVoid) \r
- sers[n] = null;\r
- else\r
- {\r
- importer.IncludeTypes (metinfo.CustomAttributeProvider);\r
- LogicalTypeInfo sti = TypeStubManager.GetLogicalTypeInfo (metinfo.DeclaringType);\r
+ return new XmlSerializer (map);
+ }
+
+ public override object[] GetInitializers (LogicalMethodInfo[] methodInfos)
+ {
+ XmlReflectionImporter importer = new XmlReflectionImporter ();
+ XmlMapping[] sers = new XmlMapping [methodInfos.Length];
+ for (int n=0; n<sers.Length; n++)
+ {
+ LogicalMethodInfo metinfo = methodInfos[n];
+ if (metinfo.IsVoid)
+ sers[n] = null;
+ else
+ {
+ importer.IncludeTypes (metinfo.CustomAttributeProvider);
+ LogicalTypeInfo sti = TypeStubManager.GetLogicalTypeInfo (metinfo.DeclaringType);
object[] ats = methodInfos[n].ReturnTypeCustomAttributeProvider.GetCustomAttributes (typeof(XmlRootAttribute), true);
XmlRootAttribute root = ats.Length > 0 ? ats[0] as XmlRootAttribute : null;
- sers[n] = importer.ImportTypeMapping (methodInfos[n].ReturnType, root, sti.GetWebServiceLiteralNamespace (sti.WebServiceNamespace));\r
- }\r
- }\r
- return XmlSerializer.FromMappings (sers);\r
- }\r
-\r
- public override void Initialize (object initializer) \r
- {\r
- serializer = (XmlSerializer) initializer;\r
- }\r
-\r
- public override void Write (HttpResponse response, Stream outputStream, object returnValue)\r
- {\r
- if (serializer != null)\r
- {\r
- response.ContentType = "text/xml; charset=utf-8";\r
- XmlTextWriter xtw = new XmlTextWriter (outputStream, new UTF8Encoding (false));\r
- xtw.Formatting = Formatting.Indented;\r
- serializer.Serialize (xtw, returnValue);\r
- }\r
- outputStream.Close ();\r
- }\r
-\r
- #endregion // Methods\r
- }\r
+ sers[n] = importer.ImportTypeMapping (methodInfos[n].ReturnType, root, sti.GetWebServiceLiteralNamespace (sti.WebServiceNamespace));
+ }
+ }
+ return XmlSerializer.FromMappings (sers);
+ }
+
+ public override void Initialize (object initializer)
+ {
+ serializer = (XmlSerializer) initializer;
+ }
+
+ public override void Write (HttpResponse response, Stream outputStream, object returnValue)
+ {
+ if (serializer != null)
+ {
+ response.ContentType = "text/xml; charset=utf-8";
+ XmlTextWriter xtw = new XmlTextWriter (outputStream, new UTF8Encoding (false));
+ xtw.Formatting = Formatting.Indented;
+ serializer.Serialize (xtw, returnValue);
+ }
+ outputStream.Close ();
+ }
+
+ #endregion // Methods
+ }
}