OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) | 2 * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) |
3 * | 3 * |
4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
8 * | 8 * |
9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 16 matching lines...) Expand all Loading... |
27 | 27 |
28 namespace WTF { | 28 namespace WTF { |
29 class TextEncoding; | 29 class TextEncoding; |
30 } | 30 } |
31 | 31 |
32 namespace blink { | 32 namespace blink { |
33 | 33 |
34 class PLATFORM_EXPORT FormDataEncoder { | 34 class PLATFORM_EXPORT FormDataEncoder { |
35 STATIC_ONLY(FormDataEncoder); | 35 STATIC_ONLY(FormDataEncoder); |
36 public: | 36 public: |
| 37 // Specifies how to handle CRs and LFs. When NormalizeCRLF is passed, the |
| 38 // method replaces the following characters with a CRLF pair: |
| 39 // - a CR not followed by an LF |
| 40 // - an LF not preceded by a CR |
| 41 enum Mode { |
| 42 NormalizeCRLF, |
| 43 DoNotNormalizeCRLF |
| 44 }; |
| 45 |
37 static WTF::TextEncoding encodingFromAcceptCharset(const String& acceptChars
et, const WTF::TextEncoding& fallbackEncoding); | 46 static WTF::TextEncoding encodingFromAcceptCharset(const String& acceptChars
et, const WTF::TextEncoding& fallbackEncoding); |
38 | 47 |
39 // Helper functions used by HTMLFormElement for multi-part form data | 48 // Helper functions used by HTMLFormElement for multi-part form data |
40 static Vector<char> generateUniqueBoundaryString(); | 49 static Vector<char> generateUniqueBoundaryString(); |
41 static void beginMultiPartHeader(Vector<char>&, const CString& boundary, con
st CString& name); | 50 static void beginMultiPartHeader(Vector<char>&, const CString& boundary, con
st CString& name); |
42 static void addBoundaryToMultiPartHeader(Vector<char>&, const CString& bound
ary, bool isLastBoundary = false); | 51 static void addBoundaryToMultiPartHeader(Vector<char>&, const CString& bound
ary, bool isLastBoundary = false); |
43 static void addFilenameToMultiPartHeader(Vector<char>&, const WTF::TextEncod
ing&, const String& filename); | 52 static void addFilenameToMultiPartHeader(Vector<char>&, const WTF::TextEncod
ing&, const String& filename); |
44 static void addContentTypeToMultiPartHeader(Vector<char>&, const CString& mi
meType); | 53 static void addContentTypeToMultiPartHeader(Vector<char>&, const CString& mi
meType); |
45 static void finishMultiPartHeader(Vector<char>&); | 54 static void finishMultiPartHeader(Vector<char>&); |
46 | 55 |
47 // Helper functions used by HTMLFormElement for non multi-part form data | 56 // Helper functions used by HTMLFormElement for non multi-part form data. Mo
de |
48 static void addKeyValuePairAsFormData(Vector<char>&, const CString& key, con
st CString& value, EncodedFormData::EncodingType = EncodedFormData::FormURLEncod
ed); | 57 // argument is not used for TextPlain type. |
49 static void encodeStringAsFormData(Vector<char>&, const CString&); | 58 static void addKeyValuePairAsFormData(Vector<char>&, const CString& key, con
st CString& value, EncodedFormData::EncodingType = EncodedFormData::FormURLEncod
ed, Mode = NormalizeCRLF); |
| 59 static void encodeStringAsFormData(Vector<char>&, const CString&, Mode); |
50 }; | 60 }; |
51 | 61 |
52 } // namespace blink | 62 } // namespace blink |
53 | 63 |
54 #endif | 64 #endif |
OLD | NEW |