WebUserMediaRequest.cpp [plain text]
#include "config.h"
#if ENABLE(MEDIA_STREAM)
#include "WebUserMediaRequest.h"
#include "Document.h"
#include "Frame.h"
#include "MediaStreamSource.h"
#include "Page.h"
#include "SecurityOrigin.h"
#include "UserMediaRequest.h"
#include "WebSecurityOrigin.h"
#include "platform/WebMediaStreamSource.h"
#include "platform/WebString.h"
#include "platform/WebVector.h"
#include <wtf/Vector.h>
using namespace WebCore;
namespace WebKit {
WebUserMediaRequest::WebUserMediaRequest(const PassRefPtr<UserMediaRequest>& request)
: m_private(request)
{
}
void WebUserMediaRequest::reset()
{
m_private.reset();
}
bool WebUserMediaRequest::audio() const
{
return m_private->audio();
}
bool WebUserMediaRequest::video() const
{
return m_private->video();
}
WebSecurityOrigin WebUserMediaRequest::securityOrigin() const
{
ASSERT(m_private->scriptExecutionContext());
return WebSecurityOrigin(m_private->scriptExecutionContext()->securityOrigin());
}
void WebUserMediaRequest::requestSucceeded(const WebVector<WebMediaStreamSource>& audioSources, const WebVector<WebMediaStreamSource>& videoSources)
{
if (m_private.isNull())
return;
MediaStreamSourceVector audio;
for (size_t i = 0; i < audioSources.size(); ++i) {
MediaStreamSource* curr = audioSources[i];
audio.append(curr);
}
MediaStreamSourceVector video;
for (size_t i = 0; i < videoSources.size(); ++i) {
MediaStreamSource* curr = videoSources[i];
video.append(curr);
}
m_private->succeed(audio, video);
}
void WebUserMediaRequest::requestFailed()
{
m_private->fail();
}
bool WebUserMediaRequest::equals(const WebUserMediaRequest& other) const
{
if (isNull() || other.isNull())
return false;
return m_private.get() == other.m_private.get();
}
void WebUserMediaRequest::assign(const WebUserMediaRequest& other)
{
UserMediaRequest* p = other.m_private.get();
if (p)
p->ref();
m_private = p;
}
WebUserMediaRequest::operator UserMediaRequest*() const
{
return m_private.get();
}
}
#endif // ENABLE(MEDIA_STREAM)