Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / modules / mediastream / RTCSessionDescriptionRequestImpl.h
index 80ebe8c..5477200 100644 (file)
 #define RTCSessionDescriptionRequestImpl_h
 
 #include "core/dom/ActiveDOMObject.h"
+#include "platform/heap/Handle.h"
 #include "platform/mediastream/RTCSessionDescriptionRequest.h"
 #include "wtf/PassOwnPtr.h"
 #include "wtf/PassRefPtr.h"
 
 namespace blink {
-class WebRTCSessionDescription;
-}
-
-namespace WebCore {
 
 class RTCErrorCallback;
 class RTCPeerConnection;
 class RTCSessionDescriptionCallback;
+class WebRTCSessionDescription;
 
 class RTCSessionDescriptionRequestImpl FINAL : public RTCSessionDescriptionRequest, public ActiveDOMObject {
 public:
-    static PassRefPtr<RTCSessionDescriptionRequestImpl> create(ExecutionContext*, PassOwnPtr<RTCSessionDescriptionCallback>, PassOwnPtr<RTCErrorCallback>);
+    static RTCSessionDescriptionRequestImpl* create(ExecutionContext*, RTCPeerConnection*, RTCSessionDescriptionCallback*, RTCErrorCallback*);
     virtual ~RTCSessionDescriptionRequestImpl();
 
-    virtual void requestSucceeded(const blink::WebRTCSessionDescription&) OVERRIDE;
+    virtual void requestSucceeded(const WebRTCSessionDescription&) OVERRIDE;
     virtual void requestFailed(const String& error) OVERRIDE;
 
     // ActiveDOMObject
     virtual void stop() OVERRIDE;
 
+    virtual void trace(Visitor*) OVERRIDE;
+
 private:
-    RTCSessionDescriptionRequestImpl(ExecutionContext*, PassOwnPtr<RTCSessionDescriptionCallback>, PassOwnPtr<RTCErrorCallback>);
+    RTCSessionDescriptionRequestImpl(ExecutionContext*, RTCPeerConnection*, RTCSessionDescriptionCallback*, RTCErrorCallback*);
 
     void clear();
 
-    OwnPtr<RTCSessionDescriptionCallback> m_successCallback;
-    OwnPtr<RTCErrorCallback> m_errorCallback;
+    Member<RTCSessionDescriptionCallback> m_successCallback;
+    Member<RTCErrorCallback> m_errorCallback;
+    Member<RTCPeerConnection> m_requester;
 };
 
-} // namespace WebCore
+} // namespace blink
 
 #endif // RTCSessionDescriptionRequestImpl_h
-
-