2 // HttpPostTypeStubInfo.cs: Information about a method and its mapping to a SOAP web service.
5 // Lluis Sanchez Gual (lluis@ximian.com)
7 // (C) 2003 Ximian, Inc.
10 namespace System.Web.Services.Protocols
12 internal class HttpPostMethodStubInfo : HttpSimpleMethodStubInfo
14 public HttpPostMethodStubInfo (TypeStubInfo parent, LogicalMethodInfo source): base (parent, source)
16 ParameterReaderType = new MimeFormatterInfo (typeof(HtmlFormParameterReader));
17 ReturnWriterType = new MimeFormatterInfo (typeof(XmlReturnWriter));
19 if (ParameterWriterType == null) ParameterWriterType = new MimeFormatterInfo (typeof(HtmlFormParameterWriter));
23 internal class HttpPostTypeStubInfo : HttpSimpleTypeStubInfo
25 public HttpPostTypeStubInfo (Type t): base (t)
29 public override string ProtocolName
31 get { return "HttpPost"; }
34 protected override MethodStubInfo CreateMethodStubInfo (TypeStubInfo typeInfo, LogicalMethodInfo methodInfo, bool isClientProxy)
36 if (isClientProxy && methodInfo.MethodInfo.GetCustomAttributes (typeof(HttpMethodAttribute),true).Length == 0) return null;
37 if (!ValueCollectionParameterReader.IsSupported (methodInfo)) return null;
38 return new HttpPostMethodStubInfo (typeInfo, methodInfo);