summaryrefslogtreecommitdiffstats
path: root/SendGrid/SendGridMail/Transport/Web.cs
diff options
context:
space:
mode:
authorBrandon West <brawest@gmail.com>2012-07-13 15:57:31 -0600
committerBrandon West <brawest@gmail.com>2012-07-13 15:57:31 -0600
commitcbfe73a74a42120d3c061633c45e1c99f1921ae2 (patch)
treec6c45dcce65a962a262f3818e012762347c231b1 /SendGrid/SendGridMail/Transport/Web.cs
parentc76114aee3506b0640b9b567a846c701d78f0b5d (diff)
parent1112ba4c4ac77b63ad63b729d68e3c816093c701 (diff)
downloadsendgrid-csharp-cbfe73a74a42120d3c061633c45e1c99f1921ae2.zip
sendgrid-csharp-cbfe73a74a42120d3c061633c45e1c99f1921ae2.tar.gz
sendgrid-csharp-cbfe73a74a42120d3c061633c45e1c99f1921ae2.tar.bz2
merge streaming-attachments branch
Diffstat (limited to 'SendGrid/SendGridMail/Transport/Web.cs')
-rwxr-xr-xSendGrid/SendGridMail/Transport/Web.cs10
1 files changed, 9 insertions, 1 deletions
diff --git a/SendGrid/SendGridMail/Transport/Web.cs b/SendGrid/SendGridMail/Transport/Web.cs
index 885f482..5a27469 100755
--- a/SendGrid/SendGridMail/Transport/Web.cs
+++ b/SendGrid/SendGridMail/Transport/Web.cs
@@ -84,8 +84,11 @@ namespace SendGridMail.Transport
private void AttachFiles(ISendGrid message, MultipartEntity multipartEntity)
{
- var files = FetchFileBodies(message);
+ var files = FetchFileBodies(message);
files.ForEach(kvp => multipartEntity.AddBody(new FileBody("files[" + Path.GetFileName(kvp.Key) + "]", Path.GetFileName(kvp.Key), kvp.Value)));
+
+ var streamingFiles = FetchStreamingFileBodies(message);
+ streamingFiles.ForEach(kvp => multipartEntity.AddBody(new StreamedFileBody(kvp.Value, kvp.Key)));
}
private void CheckForErrors(CodeScales.Http.Methods.HttpResponse response)
@@ -148,6 +151,11 @@ namespace SendGridMail.Transport
}
return result.Where(r => !String.IsNullOrEmpty(r.Value)).ToList();
}
+
+ internal List<KeyValuePair<String, MemoryStream>> FetchStreamingFileBodies(ISendGrid message)
+ {
+ return message.StreamedAttachments.Select(kvp => kvp).ToList();
+ }
internal List<KeyValuePair<String, FileInfo>> FetchFileBodies(ISendGrid message)
{