2004-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
[mono.git] / mcs / class / System.Web / System.Web / HttpHelper.cs
1 // \r
2 // System.Web.HttpHelper\r
3 //\r
4 // Author:\r
5 //   Patrik Torstensson (Patrik.Torstensson@labs2.com)\r
6 //\r
7 using System;\r
8 using System.Collections;\r
9 using System.IO;\r
10 \r
11 namespace System.Web {\r
12    internal class HttpHelper {\r
13       internal static string [] ParseMultiValueHeader(string header) {\r
14          if (null == header) {\r
15             return null;\r
16          }\r
17 \r
18          if (header.Length == 0) {\r
19             return null;\r
20          }\r
21 \r
22          // Parse the , chars\r
23          ArrayList oValues = new ArrayList();\r
24 \r
25          string sValue;\r
26 \r
27          int iLastPos = -1;\r
28          int iPos = header.IndexOf(",");\r
29 \r
30          while (iPos != -1) {\r
31             sValue = header.Substring(iLastPos + 1, iPos - iLastPos - 1).Trim();\r
32             iLastPos = iPos;\r
33 \r
34             iPos = header.IndexOf(",", iPos + 1);\r
35             oValues.Add(sValue);\r
36          }\r
37 \r
38          sValue = header.Substring(iLastPos + 1).Trim();\r
39          oValues.Add(sValue);\r
40 \r
41          string [] arrValues = new string[oValues.Count];\r
42 \r
43          Array.Copy(oValues.ToArray(), 0, arrValues, 0, oValues.Count);\r
44 \r
45          return arrValues;\r
46       }\r
47    }\r
48 }\r