OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 16 matching lines...) Expand all Loading... |
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
29 */ | 29 */ |
30 | 30 |
31 #ifndef WebPageSerializer_h | 31 #ifndef WebPageSerializer_h |
32 #define WebPageSerializer_h | 32 #define WebPageSerializer_h |
33 | 33 |
34 #include "../platform/WebCString.h" | 34 #include "../platform/WebCString.h" |
35 #include "../platform/WebCommon.h" | 35 #include "../platform/WebCommon.h" |
36 #include "../platform/WebURL.h" | 36 #include "../platform/WebURL.h" |
37 #include "WebFrame.h" | |
38 | 37 |
39 namespace blink { | 38 namespace blink { |
| 39 class WebFrame; |
40 class WebPageSerializerClient; | 40 class WebPageSerializerClient; |
41 class WebString; | 41 class WebString; |
42 class WebView; | 42 class WebView; |
43 template <typename T> class WebVector; | 43 template <typename T> class WebVector; |
44 | 44 |
45 // Get html data by serializing all frames of current page with lists | 45 // Get html data by serializing all frames of current page with lists |
46 // which contain all resource links that have local copy. | 46 // which contain all resource links that have local copy. |
47 class WebPageSerializer { | 47 class WebPageSerializer { |
48 public: | 48 public: |
49 struct Resource { | 49 struct Resource { |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
81 // The parameter recursive specifies whether we need to | 81 // The parameter recursive specifies whether we need to |
82 // serialize all sub frames of the specified frame or not. | 82 // serialize all sub frames of the specified frame or not. |
83 // The parameter client specifies the pointer of interface | 83 // The parameter client specifies the pointer of interface |
84 // WebPageSerializerClient providing a sink interface to receive the | 84 // WebPageSerializerClient providing a sink interface to receive the |
85 // individual chunks of data to be saved. | 85 // individual chunks of data to be saved. |
86 // The parameter links contain original URLs of all saved links. | 86 // The parameter links contain original URLs of all saved links. |
87 // The parameter localPaths contain corresponding local file paths of all | 87 // The parameter localPaths contain corresponding local file paths of all |
88 // saved links, which matched with vector:links one by one. | 88 // saved links, which matched with vector:links one by one. |
89 // The parameter localDirectoryName is relative path of directory which | 89 // The parameter localDirectoryName is relative path of directory which |
90 // contain all saved auxiliary files included all sub frames and resources. | 90 // contain all saved auxiliary files included all sub frames and resources. |
91 BLINK_EXPORT static bool serialize( | 91 BLINK_EXPORT static bool serialize(WebFrame*, |
92 WebLocalFrame*, | 92 bool recursive, |
93 bool recursive, | 93 WebPageSerializerClient*, |
94 WebPageSerializerClient*, | 94 const WebVector<WebURL>& links, |
95 const WebVector<WebURL>& links, | 95 const WebVector<WebString>& localPaths, |
96 const WebVector<WebString>& localPaths, | 96 const WebString& localDirectoryName); |
97 const WebString& localDirectoryName); | |
98 | 97 |
99 // Retrieve all the resource for the passed view, including the main frame | 98 // Retrieve all the resource for the passed view, including the main frame |
100 // and sub-frames. Returns true if all resources were retrieved | 99 // and sub-frames. Returns true if all resources were retrieved |
101 // successfully. | 100 // successfully. |
102 BLINK_EXPORT static bool retrieveAllResources(WebView*, | 101 BLINK_EXPORT static bool retrieveAllResources(WebView*, |
103 const WebVector<WebCString>&
supportedSchemes, | 102 const WebVector<WebCString>&
supportedSchemes, |
104 WebVector<WebURL>* resources, | 103 WebVector<WebURL>* resources, |
105 WebVector<WebURL>* frames); | 104 WebVector<WebURL>* frames); |
106 | 105 |
107 // FIXME: The following are here for unit testing purposes. Consider | 106 // FIXME: The following are here for unit testing purposes. Consider |
108 // changing the unit tests instead. | 107 // changing the unit tests instead. |
109 | 108 |
110 // Generate the META for charset declaration. | 109 // Generate the META for charset declaration. |
111 BLINK_EXPORT static WebString generateMetaCharsetDeclaration(const WebString
& charset); | 110 BLINK_EXPORT static WebString generateMetaCharsetDeclaration(const WebString
& charset); |
112 // Generate the MOTW declaration. | 111 // Generate the MOTW declaration. |
113 BLINK_EXPORT static WebString generateMarkOfTheWebDeclaration(const WebURL&)
; | 112 BLINK_EXPORT static WebString generateMarkOfTheWebDeclaration(const WebURL&)
; |
114 // Generate the default base tag declaration. | 113 // Generate the default base tag declaration. |
115 BLINK_EXPORT static WebString generateBaseTagDeclaration(const WebString& ba
seTarget); | 114 BLINK_EXPORT static WebString generateBaseTagDeclaration(const WebString& ba
seTarget); |
116 }; | 115 }; |
117 | 116 |
118 } // namespace blink | 117 } // namespace blink |
119 | 118 |
120 #endif | 119 #endif |
OLD | NEW |