1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254
|
namespace System.Web.Services.Description {
using System.Xml.Serialization;
using System.Collections;
using System.ComponentModel;
using System.Web.Services.Configuration;
using System.Globalization;
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeContentBinding"]/*' />
[XmlFormatExtension("content", MimeContentBinding.Namespace, typeof(MimePart), typeof(InputBinding), typeof(OutputBinding))]
[XmlFormatExtensionPrefix("mime", MimeContentBinding.Namespace)]
public sealed class MimeContentBinding : ServiceDescriptionFormatExtension {
string type;
string part;
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeContentBinding.Part"]/*' />
[XmlAttribute("part")]
public string Part {
get { return part; }
set { part = value; }
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeContentBinding.Type"]/*' />
[XmlAttribute("type")]
public string Type {
get { return type == null ? string.Empty : type; }
set { type = value; }
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeContentBinding.Namespace"]/*' />
public const string Namespace = "http://schemas.xmlsoap.org/wsdl/mime/";
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimePart"]/*' />
[XmlFormatExtensionPoint("Extensions")]
public sealed class MimePart : ServiceDescriptionFormatExtension {
ServiceDescriptionFormatExtensionCollection extensions;
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimePart.Extensions"]/*' />
[XmlIgnore]
public ServiceDescriptionFormatExtensionCollection Extensions {
get { if (extensions == null) extensions = new ServiceDescriptionFormatExtensionCollection(this); return extensions; }
}
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeMultipartRelatedBinding"]/*' />
[XmlFormatExtension("multipartRelated", MimeContentBinding.Namespace, typeof(InputBinding), typeof(OutputBinding))]
public sealed class MimeMultipartRelatedBinding : ServiceDescriptionFormatExtension {
MimePartCollection parts = new MimePartCollection();
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeMultipartRelatedBinding.Parts"]/*' />
[XmlElement("part")]
public MimePartCollection Parts {
get { return parts; }
}
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeXmlBinding"]/*' />
[XmlFormatExtension("mimeXml", MimeContentBinding.Namespace, typeof(MimePart), typeof(InputBinding), typeof(OutputBinding))]
public sealed class MimeXmlBinding : ServiceDescriptionFormatExtension {
string part;
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeXmlBinding.Part"]/*' />
[XmlAttribute("part")]
public string Part {
get { return part; }
set { part = value; }
}
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimePartCollection"]/*' />
public sealed class MimePartCollection : CollectionBase {
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimePartCollection.this"]/*' />
public MimePart this[int index] {
get { return (MimePart)List[index]; }
set { List[index] = value; }
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimePartCollection.Add"]/*' />
public int Add(MimePart mimePart) {
return List.Add(mimePart);
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimePartCollection.Insert"]/*' />
public void Insert(int index, MimePart mimePart) {
List.Insert(index, mimePart);
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimePartCollection.IndexOf"]/*' />
public int IndexOf(MimePart mimePart) {
return List.IndexOf(mimePart);
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimePartCollection.Contains"]/*' />
public bool Contains(MimePart mimePart) {
return List.Contains(mimePart);
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimePartCollection.Remove"]/*' />
public void Remove(MimePart mimePart) {
List.Remove(mimePart);
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimePartCollection.CopyTo"]/*' />
public void CopyTo(MimePart[] array, int index) {
List.CopyTo(array, index);
}
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextBinding"]/*' />
[XmlFormatExtension("text", MimeTextBinding.Namespace, typeof(InputBinding), typeof(OutputBinding), typeof(MimePart))]
[XmlFormatExtensionPrefix("tm", MimeTextBinding.Namespace)]
public sealed class MimeTextBinding : ServiceDescriptionFormatExtension {
MimeTextMatchCollection matches = new MimeTextMatchCollection();
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextBinding.Namespace"]/*' />
public const string Namespace = "http://microsoft.com/wsdl/mime/textMatching/";
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextBinding.Matches"]/*' />
[XmlElement("match", typeof(MimeTextMatch))]
public MimeTextMatchCollection Matches {
get { return matches; }
}
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatch"]/*' />
public sealed class MimeTextMatch {
string name;
string type;
int repeats = 1;
string pattern;
int group = 1;
int capture = 0;
bool ignoreCase = false;
MimeTextMatchCollection matches = new MimeTextMatchCollection();
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatch.Name"]/*' />
[XmlAttribute("name")]
public string Name {
get { return name == null ? string.Empty : name; }
set { name = value; }
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatch.Type"]/*' />
[XmlAttribute("type")]
public string Type {
get { return type == null ? string.Empty : type; }
set { type = value; }
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatch.Group"]/*' />
[XmlAttribute("group"), DefaultValue(1)]
public int Group {
get { return group; }
set {
if (value < 0) throw new ArgumentException(Res.GetString(Res.WebNegativeValue, "group"));
group = value;
}
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatch.Capture"]/*' />
[XmlAttribute("capture"), DefaultValue(0)]
public int Capture {
get { return capture; }
set {
if (value < 0) throw new ArgumentException(Res.GetString(Res.WebNegativeValue, "capture"));
capture = value;
}
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatch.Repeats"]/*' />
[XmlIgnore()]
public int Repeats {
get { return repeats; }
set {
if (value < 0) throw new ArgumentException(Res.GetString(Res.WebNegativeValue, "repeats"));
repeats = value;
}
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatch.RepeatsString"]/*' />
[XmlAttribute("repeats"), DefaultValue("1")]
public string RepeatsString {
get { return repeats == int.MaxValue ? "*" : repeats.ToString(CultureInfo.InvariantCulture); }
set {
if (value == "*")
repeats = int.MaxValue;
else
Repeats = int.Parse(value, CultureInfo.InvariantCulture); // pass through our setter for arg checking
}
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatch.Pattern"]/*' />
[XmlAttribute("pattern")]
public string Pattern {
get { return pattern == null ? string.Empty : pattern; }
set { this.pattern = value; }
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatch.IgnoreCase"]/*' />
[XmlAttribute("ignoreCase")]
public bool IgnoreCase {
get { return ignoreCase; }
set { ignoreCase = value; }
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatch.Matches"]/*' />
[XmlElement("match")]
public MimeTextMatchCollection Matches {
get { return matches; }
}
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatchCollection"]/*' />
public sealed class MimeTextMatchCollection : CollectionBase {
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatchCollection.this"]/*' />
public MimeTextMatch this[int index] {
get { return (MimeTextMatch)List[index]; }
set { List[index] = value; }
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatchCollection.Add"]/*' />
public int Add(MimeTextMatch match) {
return List.Add(match);
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatchCollection.Insert"]/*' />
public void Insert(int index, MimeTextMatch match) {
List.Insert(index, match);
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatchCollection.IndexOf"]/*' />
public int IndexOf(MimeTextMatch match) {
return List.IndexOf(match);
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatchCollection.Contains"]/*' />
public bool Contains(MimeTextMatch match) {
return List.Contains(match);
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatchCollection.Remove"]/*' />
public void Remove(MimeTextMatch match) {
List.Remove(match);
}
/// <include file='doc\MimeFormatExtensions.uex' path='docs/doc[@for="MimeTextMatchCollection.CopyTo"]/*' />
public void CopyTo(MimeTextMatch[] array, int index) {
List.CopyTo(array, index);
}
}
}
|