Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ PrepareHeaders()

void System.Net.Mail.Message.PrepareHeaders ( bool sendEnvelope,
bool allowUnicode )
inlinepackage

Definition at line 377 of file Message.cs.

378 {
379 if (_headersEncoding == null)
380 {
382 }
383 Headers.Remove(MailHeaderInfo.GetString(MailHeaderID.ContentType));
384 Headers[MailHeaderInfo.GetString(MailHeaderID.MimeVersion)] = "1.0";
385 string @string = MailHeaderInfo.GetString(MailHeaderID.Sender);
386 if (Sender != null)
387 {
388 Headers.InternalAdd(@string, Sender.Encode(@string.Length, allowUnicode));
389 }
390 else
391 {
392 Headers.Remove(@string);
393 }
394 @string = MailHeaderInfo.GetString(MailHeaderID.From);
395 Headers.InternalAdd(@string, From.Encode(@string.Length, allowUnicode));
396 @string = MailHeaderInfo.GetString(MailHeaderID.To);
397 if (To.Count > 0)
398 {
399 Headers.InternalAdd(@string, To.Encode(@string.Length, allowUnicode));
400 }
401 else
402 {
403 Headers.Remove(@string);
404 }
405 @string = MailHeaderInfo.GetString(MailHeaderID.Cc);
406 if (CC.Count > 0)
407 {
408 Headers.InternalAdd(@string, CC.Encode(@string.Length, allowUnicode));
409 }
410 else
411 {
412 Headers.Remove(@string);
413 }
414 @string = MailHeaderInfo.GetString(MailHeaderID.ReplyTo);
415 if (ReplyTo != null)
416 {
417 Headers.InternalAdd(@string, ReplyTo.Encode(@string.Length, allowUnicode));
418 }
419 else if (ReplyToList.Count > 0)
420 {
421 Headers.InternalAdd(@string, ReplyToList.Encode(@string.Length, allowUnicode));
422 }
423 else
424 {
425 Headers.Remove(@string);
426 }
427 Headers.Remove(MailHeaderInfo.GetString(MailHeaderID.Bcc));
428 if (_priority == MailPriority.High)
429 {
430 Headers[MailHeaderInfo.GetString(MailHeaderID.XPriority)] = "1";
431 Headers[MailHeaderInfo.GetString(MailHeaderID.Priority)] = "urgent";
432 Headers[MailHeaderInfo.GetString(MailHeaderID.Importance)] = "high";
433 }
434 else if (_priority == MailPriority.Low)
435 {
436 Headers[MailHeaderInfo.GetString(MailHeaderID.XPriority)] = "5";
437 Headers[MailHeaderInfo.GetString(MailHeaderID.Priority)] = "non-urgent";
438 Headers[MailHeaderInfo.GetString(MailHeaderID.Importance)] = "low";
439 }
440 else if (_priority != (MailPriority)(-1))
441 {
442 Headers.Remove(MailHeaderInfo.GetString(MailHeaderID.XPriority));
443 Headers.Remove(MailHeaderInfo.GetString(MailHeaderID.Priority));
444 Headers.Remove(MailHeaderInfo.GetString(MailHeaderID.Importance));
445 }
446 Headers.InternalAdd(MailHeaderInfo.GetString(MailHeaderID.Date), MailBnfHelper.GetDateTimeString(DateTime.Now, null));
447 @string = MailHeaderInfo.GetString(MailHeaderID.Subject);
448 if (!string.IsNullOrEmpty(_subject))
449 {
450 if (allowUnicode)
451 {
452 Headers.InternalAdd(@string, _subject);
453 }
454 else
455 {
457 }
458 }
459 else
460 {
461 Headers.Remove(@string);
462 }
463 EncodeHeaders(_headers, allowUnicode);
464 }
string Encode(int charsConsumed, bool allowUnicode)
string Encode(int charsConsumed, bool allowUnicode)
HeaderCollection _headers
Definition Message.cs:39
MailAddress Sender
Definition Message.cs:85
void EncodeHeaders(HeaderCollection headers, bool allowUnicode)
Definition Message.cs:466
MailAddressCollection ReplyToList
Definition Message.cs:108
MailAddress ReplyTo
Definition Message.cs:97
MailPriority _priority
Definition Message.cs:49
MailAddressCollection To
Definition Message.cs:110
Encoding _headersEncoding
Definition Message.cs:47
MailAddressCollection CC
Definition Message.cs:114
Encoding _subjectEncoding
Definition Message.cs:45
static string GetDateTimeString(DateTime value, StringBuilder builder)
static string EncodeHeaderValue(string value, Encoding encoding, bool base64Encoding)
static bool ShouldUseBase64Encoding(Encoding encoding)
static Encoding GetEncoding(int codepage)
Definition Encoding.cs:593

References System.Net.Mail.Message._headers, System.Net.Mail.Message._headersEncoding, System.Net.Mail.Message._priority, System.Net.Mail.Message._subject, System.Net.Mail.Message._subjectEncoding, System.Net.Mail.Message.CC, System.Collections.ObjectModel.Collection< T >.Count, System.Net.Mail.MailAddress.Encode(), System.Net.Mail.MailAddressCollection.Encode(), System.Net.Mail.Message.EncodeHeaders(), System.Net.Mime.MimeBasePart.EncodeHeaderValue(), System.Net.Mail.Message.From, System.Net.Mime.MailBnfHelper.GetDateTimeString(), System.Text.Encoding.GetEncoding(), System.Net.Mail.MailHeaderInfo.GetString(), System.DateTime.Now, System.Net.Mail.Message.ReplyTo, System.Net.Mail.Message.ReplyToList, System.Net.Mail.Message.Sender, System.Net.Mime.MimeBasePart.ShouldUseBase64Encoding(), and System.Net.Mail.Message.To.

Referenced by System.Net.Mail.Message.BeginSend(), and System.Net.Mail.Message.Send().