Index: Source/web/WebMediaDevicesRequest.cpp |
diff --git a/Source/platform/exported/WebMediaStreamTrackSourcesRequest.cpp b/Source/web/WebMediaDevicesRequest.cpp |
similarity index 47% |
copy from Source/platform/exported/WebMediaStreamTrackSourcesRequest.cpp |
copy to Source/web/WebMediaDevicesRequest.cpp |
index 400dbf1e05b6b001b7e8ba0a8eacecc5488bdcb3..df72d859da86e2605b77faa8dfb382307ba70c86 100644 |
--- a/Source/platform/exported/WebMediaStreamTrackSourcesRequest.cpp |
+++ b/Source/web/WebMediaDevicesRequest.cpp |
@@ -1,5 +1,5 @@ |
/* |
- * Copyright (C) 2013 Google Inc. All rights reserved. |
+ * Copyright (C) 2014 Google Inc. All rights reserved. |
* |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions |
@@ -25,69 +25,75 @@ |
#include "config.h" |
-#include "public/platform/WebMediaStreamTrackSourcesRequest.h" |
+#include "WebMediaDevicesRequest.h" |
-#include "platform/mediastream/MediaStreamTrackSourcesRequest.h" |
-#include "public/platform/WebSourceInfo.h" |
-#include "wtf/PassOwnPtr.h" |
+#include "WebDocument.h" |
+#include "WebSecurityOrigin.h" |
+#include "core/dom/Document.h" |
+#include "modules/mediastream/MediaDevicesRequest.h" |
+#include "platform/weborigin/SecurityOrigin.h" |
+#include "public/platform/WebMediaDeviceInfo.h" |
+#include "public/platform/WebString.h" |
+#include "public/platform/WebVector.h" |
+#include "wtf/Vector.h" |
using namespace WebCore; |
namespace blink { |
-namespace { |
- |
-class ExtraDataContainer : public MediaStreamTrackSourcesRequest::ExtraData { |
-public: |
- ExtraDataContainer(PassOwnPtr<WebMediaStreamTrackSourcesRequest::ExtraData> extraData) : m_extraData(extraData) { } |
- |
- WebMediaStreamTrackSourcesRequest::ExtraData* extraData() { return m_extraData.get(); } |
- |
-private: |
- OwnPtr<WebMediaStreamTrackSourcesRequest::ExtraData> m_extraData; |
-}; |
- |
-} // namespace |
- |
-WebMediaStreamTrackSourcesRequest::WebMediaStreamTrackSourcesRequest(const PassRefPtr<MediaStreamTrackSourcesRequest>& request) |
+WebMediaDevicesRequest::WebMediaDevicesRequest(const PassRefPtr<MediaDevicesRequest>& request) |
: m_private(request) |
{ |
} |
-void WebMediaStreamTrackSourcesRequest::assign(const WebMediaStreamTrackSourcesRequest& other) |
+WebMediaDevicesRequest::WebMediaDevicesRequest(MediaDevicesRequest* request) |
+ : m_private(request) |
{ |
- m_private = other.m_private; |
} |
-void WebMediaStreamTrackSourcesRequest::reset() |
+void WebMediaDevicesRequest::reset() |
{ |
m_private.reset(); |
} |
-WebString WebMediaStreamTrackSourcesRequest::origin() const |
+WebSecurityOrigin WebMediaDevicesRequest::securityOrigin() const |
{ |
- ASSERT(m_private.get()); |
- return m_private->origin(); |
+ ASSERT(!isNull() && m_private->executionContext()); |
+ return WebSecurityOrigin(m_private->executionContext()->securityOrigin()); |
} |
-void WebMediaStreamTrackSourcesRequest::requestSucceeded(const WebVector<WebSourceInfo>& sourceInfos) const |
+WebDocument WebMediaDevicesRequest::ownerDocument() const |
{ |
- ASSERT(m_private.get()); |
- m_private->requestSucceeded(sourceInfos); |
+ ASSERT(!isNull()); |
+ return WebDocument(m_private->ownerDocument()); |
} |
-WebMediaStreamTrackSourcesRequest::ExtraData* WebMediaStreamTrackSourcesRequest::extraData() const |
+void WebMediaDevicesRequest::requestSucceeded(WebVector<WebMediaDeviceInfo> webDevices) |
{ |
- MediaStreamTrackSourcesRequest::ExtraData* data = m_private->extraData(); |
- if (!data) |
- return 0; |
- return static_cast<ExtraDataContainer*>(data)->extraData(); |
+ ASSERT(!isNull()); |
+ |
+ MediaDeviceInfoVector devices(webDevices.size()); |
+ for (size_t i = 0; i < webDevices.size(); ++i) |
+ devices[i] = MediaDeviceInfo::create(webDevices[i]); |
+ |
+ m_private->succeed(devices); |
} |
-void WebMediaStreamTrackSourcesRequest::setExtraData(ExtraData* extraData) |
+bool WebMediaDevicesRequest::equals(const WebMediaDevicesRequest& other) const |
{ |
- m_private->setExtraData(adoptPtr(new ExtraDataContainer(adoptPtr(extraData)))); |
+ if (isNull() || other.isNull()) |
+ return false; |
+ return m_private.get() == other.m_private.get(); |
} |
-} // namespace blink |
+void WebMediaDevicesRequest::assign(const WebMediaDevicesRequest& other) |
+{ |
+ m_private = other.m_private; |
+} |
+WebMediaDevicesRequest::operator MediaDevicesRequest*() const |
+{ |
+ return m_private.get(); |
+} |
+ |
+} // namespace blink |