Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / core / loader / TextTrackLoader.h
index 2f4a023..e2fcaed 100644 (file)
@@ -27,8 +27,8 @@
 #define TextTrackLoader_h
 
 #include "core/fetch/RawResource.h"
-#include "core/fetch/ResourcePtr.h"
-#include "core/html/track/WebVTTParser.h"
+#include "core/fetch/ResourceOwner.h"
+#include "core/html/track/vtt/VTTParser.h"
 #include "platform/Timer.h"
 #include "wtf/OwnPtr.h"
 
@@ -37,7 +37,7 @@ namespace WebCore {
 class Document;
 class TextTrackLoader;
 
-class TextTrackLoaderClient {
+class TextTrackLoaderClient : public ResourceOwner<RawResource> {
 public:
     virtual ~TextTrackLoaderClient() { }
 
@@ -46,7 +46,7 @@ public:
     virtual void newRegionsAvailable(TextTrackLoader*) = 0;
 };
 
-class TextTrackLoader : public RawResourceClient, private WebVTTParserClient {
+class TextTrackLoader FINAL : public ResourceOwner<RawResource>, private VTTParserClient {
     WTF_MAKE_NONCOPYABLE(TextTrackLoader);
     WTF_MAKE_FAST_ALLOCATED;
 public:
@@ -56,13 +56,13 @@ public:
     }
     virtual ~TextTrackLoader();
 
-    bool load(const KURL&, const String& crossOriginMode);
+    bool load(const KURL&, const AtomicString& crossOriginMode);
     void cancelLoad();
 
     enum State { Idle, Loading, Finished, Failed };
     State loadState() { return m_state; }
 
-    void getNewCues(Vector<RefPtr<TextTrackCue> >& outputCues);
+    void getNewCues(Vector<RefPtr<VTTCue> >& outputCues);
     void getNewRegions(Vector<RefPtr<VTTRegion> >& outputRegions);
 private:
 
@@ -70,7 +70,7 @@ private:
     virtual void dataReceived(Resource*, const char* data, int length) OVERRIDE;
     virtual void notifyFinished(Resource*) OVERRIDE;
 
-    // WebVTTParserClient
+    // VTTParserClient
     virtual void newCuesParsed() OVERRIDE;
     virtual void newRegionsParsed() OVERRIDE;
     virtual void fileFailedToParse() OVERRIDE;
@@ -78,15 +78,13 @@ private:
     TextTrackLoader(TextTrackLoaderClient&, Document&);
 
     void cueLoadTimerFired(Timer<TextTrackLoader>*);
-    void corsPolicyPreventedLoad();
+    void corsPolicyPreventedLoad(SecurityOrigin*, const KURL&);
 
     TextTrackLoaderClient& m_client;
-    OwnPtr<WebVTTParser> m_cueParser;
-    ResourcePtr<RawResource> m_resource;
+    OwnPtr<VTTParser> m_cueParser;
     // FIXME: Remove this pointer and get the Document from m_client.
     Document& m_document;
     Timer<TextTrackLoader> m_cueLoadTimer;
-    String m_crossOriginMode;
     State m_state;
     bool m_newCuesAvailable;
 };