OLD | NEW |
(Empty) | |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #ifndef ManifestLoader_h |
| 6 #define ManifestLoader_h |
| 7 |
| 8 #include "core/fetch/ResourceClient.h" |
| 9 #include "core/fetch/ResourceOwner.h" |
| 10 #include "core/frame/LocalFrame.h" |
| 11 |
| 12 namespace blink { |
| 13 |
| 14 class Document; |
| 15 |
| 16 // The ManifestLoader is a class that fetches and parses a WebManifest and |
| 17 // informs the FrameLoaderClient upon completion (success or failure). |
| 18 // The lifetime of the object is managed by itself. When ::LoadManifest() is |
| 19 // called, an instance of the object is created and as soon as the processing |
| 20 // is finished, the object will destroy itself. |
| 21 class ManifestLoader FINAL : public ResourceOwner<Resource, ResourceClient> { |
| 22 public: |
| 23 static void loadManifest(PassRefPtr<LocalFrame>); |
| 24 |
| 25 // This is public so we can use OwnPtr<>(this) in various methods. |
| 26 virtual ~ManifestLoader(); |
| 27 |
| 28 protected: |
| 29 // ResourceClient |
| 30 virtual void notifyFinished(Resource*) OVERRIDE; |
| 31 |
| 32 explicit ManifestLoader(PassRefPtr<LocalFrame>); |
| 33 |
| 34 void startLoading(); |
| 35 |
| 36 private: |
| 37 RefPtr<LocalFrame> m_frame; |
| 38 }; |
| 39 |
| 40 } // namespace blink |
| 41 |
| 42 #endif |
OLD | NEW |