Skip to content
This repository was archived by the owner on Dec 24, 2022. It is now read-only.

Commit 4fac8da

Browse files
committed
Add CSV overloads to HTTP Utils
1 parent bd9878b commit 4fac8da

File tree

1 file changed

+48
-0
lines changed

1 file changed

+48
-0
lines changed

src/ServiceStack.Text/HttpUtils.cs

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,12 @@ public static string GetXmlFromUrl(this string url,
111111
return url.GetStringFromUrl(MimeTypes.Xml, requestFilter, responseFilter);
112112
}
113113

114+
public static string GetCsvFromUrl(this string url,
115+
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
116+
{
117+
return url.GetStringFromUrl(MimeTypes.Csv, requestFilter, responseFilter);
118+
}
119+
114120
public static string GetStringFromUrl(this string url, string accept = "*/*",
115121
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
116122
{
@@ -165,6 +171,13 @@ public static string PostXmlToUrl(this string url, string xml,
165171
requestFilter: requestFilter, responseFilter: responseFilter);
166172
}
167173

174+
public static string PostCsvToUrl(this string url, string csv,
175+
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
176+
{
177+
return SendStringToUrl(url, method: "POST", requestBody: csv, contentType: MimeTypes.Csv, accept: MimeTypes.Csv,
178+
requestFilter: requestFilter, responseFilter: responseFilter);
179+
}
180+
168181
public static string PutStringToUrl(this string url, string requestBody = null,
169182
string contentType = null, string accept = "*/*",
170183
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
@@ -213,6 +226,13 @@ public static string PutXmlToUrl(this string url, string xml,
213226
requestFilter: requestFilter, responseFilter: responseFilter);
214227
}
215228

229+
public static string PutCsvToUrl(this string url, string csv,
230+
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
231+
{
232+
return SendStringToUrl(url, method: "PUT", requestBody: csv, contentType: MimeTypes.Csv, accept: MimeTypes.Csv,
233+
requestFilter: requestFilter, responseFilter: responseFilter);
234+
}
235+
216236
public static string DeleteFromUrl(this string url, string accept = "*/*",
217237
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
218238
{
@@ -285,6 +305,13 @@ public static Task<string> PostXmlToUrlAsync(this string url, string xml,
285305
requestFilter: requestFilter, responseFilter: responseFilter);
286306
}
287307

308+
public static Task<string> PostCsvToUrlAsync(this string url, string csv,
309+
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
310+
{
311+
return SendStringToUrlAsync(url, method: "POST", requestBody: csv, contentType: MimeTypes.Csv, accept: MimeTypes.Csv,
312+
requestFilter: requestFilter, responseFilter: responseFilter);
313+
}
314+
288315
public static Task<string> PutStringToUrlAsync(this string url, string requestBody = null,
289316
string contentType = null, string accept = "*/*",
290317
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
@@ -333,6 +360,13 @@ public static Task<string> PutXmlToUrlAsync(this string url, string xml,
333360
requestFilter: requestFilter, responseFilter: responseFilter);
334361
}
335362

363+
public static Task<string> PutCsvToUrlAsync(this string url, string csv,
364+
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
365+
{
366+
return SendStringToUrlAsync(url, method: "PUT", requestBody: csv, contentType: MimeTypes.Csv, accept: MimeTypes.Csv,
367+
requestFilter: requestFilter, responseFilter: responseFilter);
368+
}
369+
336370
public static Task<string> DeleteFromUrlAsync(this string url, string accept = "*/*",
337371
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
338372
{
@@ -809,12 +843,26 @@ public static string PostXmlToUrl(this string url, object data,
809843
requestFilter: requestFilter, responseFilter: responseFilter);
810844
}
811845

846+
public static string PostCsvToUrl(this string url, object data,
847+
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
848+
{
849+
return SendStringToUrl(url, method: "POST", requestBody: data.ToCsv(), contentType: MimeTypes.Csv, accept: MimeTypes.Csv,
850+
requestFilter: requestFilter, responseFilter: responseFilter);
851+
}
852+
812853
public static string PutXmlToUrl(this string url, object data,
813854
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
814855
{
815856
return SendStringToUrl(url, method: "PUT", requestBody: data.ToXml(), contentType: MimeTypes.Xml, accept: MimeTypes.Xml,
816857
requestFilter: requestFilter, responseFilter: responseFilter);
817858
}
859+
860+
public static string PutCsvToUrl(this string url, object data,
861+
Action<HttpWebRequest> requestFilter = null, Action<HttpWebResponse> responseFilter = null)
862+
{
863+
return SendStringToUrl(url, method: "PUT", requestBody: data.ToCsv(), contentType: MimeTypes.Csv, accept: MimeTypes.Csv,
864+
requestFilter: requestFilter, responseFilter: responseFilter);
865+
}
818866
}
819867

820868
//Allow Exceptions to Customize HTTP StatusCode and StatusDescription returned

0 commit comments

Comments
 (0)