X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mcs%2Fclass%2FSystem%2FSystem.Net.Mail%2FAlternateView.cs;h=2a84e67de361acc803f459bb1f975057bce62f72;hb=f48ceb9860676c342f4c91fbc2e34ea600d839c6;hp=1dff08e1d0a2ff29e3e2fd819bf2cdd456752e02;hpb=496dfbf9ec0fd3143e5dd560a863d916e56a52b8;p=mono.git diff --git a/mcs/class/System/System.Net.Mail/AlternateView.cs b/mcs/class/System/System.Net.Mail/AlternateView.cs index 1dff08e1d0a..2a84e67de36 100644 --- a/mcs/class/System/System.Net.Mail/AlternateView.cs +++ b/mcs/class/System/System.Net.Mail/AlternateView.cs @@ -28,8 +28,6 @@ // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // -#if NET_2_0 - using System.IO; using System.Net.Mime; using System.Text; @@ -45,46 +43,34 @@ namespace System.Net.Mail { #region Constructors - [MonoTODO] public AlternateView (string fileName) : base (fileName) { if (fileName == null) throw new ArgumentNullException (); } - [MonoTODO] public AlternateView (string fileName, ContentType contentType) : base (fileName, contentType) { if (fileName == null) throw new ArgumentNullException (); } - [MonoTODO] public AlternateView (string fileName, string mediaType) : base (fileName, mediaType) { if (fileName == null) throw new ArgumentNullException (); } - [MonoTODO] public AlternateView (Stream contentStream) : base (contentStream) { - if (contentStream == null) - throw new ArgumentNullException (); } - [MonoTODO] public AlternateView (Stream contentStream, string mediaType) : base (contentStream, mediaType) { - if (contentStream == null) - throw new ArgumentNullException (); } - [MonoTODO] public AlternateView (Stream contentStream, ContentType contentType) : base (contentStream, contentType) { - if (contentStream == null) - throw new ArgumentNullException (); } #endregion // Constructors @@ -104,41 +90,50 @@ namespace System.Net.Mail { #region Methods - [MonoTODO] public static AlternateView CreateAlternateViewFromString (string content) { if (content == null) throw new ArgumentNullException (); MemoryStream ms = new MemoryStream (Encoding.UTF8.GetBytes (content)); - return new AlternateView (ms); + AlternateView av = new AlternateView (ms); + av.TransferEncoding = TransferEncoding.QuotedPrintable; + return av; } - [MonoTODO] public static AlternateView CreateAlternateViewFromString (string content, ContentType contentType) { if (content == null) - throw new ArgumentNullException (); - MemoryStream ms = new MemoryStream (Encoding.UTF8.GetBytes (content)); - return new AlternateView (ms, contentType); + throw new ArgumentNullException ("content"); + Encoding enc = contentType.CharSet != null ? Encoding.GetEncoding (contentType.CharSet) : Encoding.UTF8; + MemoryStream ms = new MemoryStream (enc.GetBytes (content)); + AlternateView av = new AlternateView (ms, contentType); + av.TransferEncoding = TransferEncoding.QuotedPrintable; + return av; } - [MonoTODO] public static AlternateView CreateAlternateViewFromString (string content, Encoding encoding, string mediaType) { if (content == null) - throw new ArgumentNullException (); + throw new ArgumentNullException ("content"); + if (encoding == null) + encoding = Encoding.UTF8; MemoryStream ms = new MemoryStream (encoding.GetBytes (content)); - return new AlternateView (ms, mediaType); + ContentType ct = new ContentType (); + ct.MediaType = mediaType; + ct.CharSet = encoding.HeaderName; + AlternateView av = new AlternateView (ms, ct); + av.TransferEncoding = TransferEncoding.QuotedPrintable; + return av; } - [MonoTODO] protected override void Dispose (bool disposing) { + if (disposing) + foreach (LinkedResource lr in linkedResources) + lr.Dispose (); base.Dispose (disposing); } #endregion // Methods } } - -#endif // NET_2_0