diff options
author | Simon Hausmann <simon.hausmann@digia.com> | 2012-10-17 16:21:14 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2012-10-17 16:21:14 +0200 |
commit | 8995b83bcbfbb68245f779b64e5517627c6cc6ea (patch) | |
tree | 17985605dab9263cc2444bd4d45f189e142cca7c /Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp | |
parent | b9c9652036d5e9f1e29c574f40bc73a35c81ace6 (diff) |
Imported WebKit commit cf4f8fc6f19b0629f51860cb2d4b25e139d07e00 (http://svn.webkit.org/repository/webkit/trunk@131592)
New snapshot that includes the build fixes for Mac OS X 10.6 and earlier as well
as the previously cherry-picked changes
Diffstat (limited to 'Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp')
-rw-r--r-- | Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp b/Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp new file mode 100644 index 000000000..d2695b345 --- /dev/null +++ b/Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp @@ -0,0 +1,82 @@ +/* + * Copyright (C) 2012 Google Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "config.h" + +#if ENABLE(MEDIA_STREAM) + +#include "RTCDataChannelDescriptor.h" + +namespace WebCore { + +PassRefPtr<RTCDataChannelDescriptor> RTCDataChannelDescriptor::create(const String& label, bool reliable) +{ + return adoptRef(new RTCDataChannelDescriptor(label, reliable)); +} + +RTCDataChannelDescriptor::RTCDataChannelDescriptor(const String& label, bool reliable) + : m_label(label) + , m_reliable(reliable) + , m_readyState(ReadyStateConnecting) + , m_bufferedAmount(0) +{ +} + +RTCDataChannelDescriptor::~RTCDataChannelDescriptor() +{ +} + +void RTCDataChannelDescriptor::readyStateChanged(ReadyState readyState) +{ + ASSERT(m_readyState != ReadyStateClosed); + if (m_readyState != readyState && m_client) { + m_readyState = readyState; + m_client->readyStateChanged(); + } +} + +void RTCDataChannelDescriptor::dataArrived(const String& data) +{ + ASSERT(m_readyState != ReadyStateClosed); + if (m_client) + m_client->dataArrived(data); +} + +void RTCDataChannelDescriptor::dataArrived(const char* data, size_t dataLength) +{ + ASSERT(m_readyState != ReadyStateClosed); + if (m_client) + m_client->dataArrived(data, dataLength); +} + +void RTCDataChannelDescriptor::error() +{ + ASSERT(m_readyState != ReadyStateClosed); + if (m_client) + m_client->error(); +} + +} // namespace WebCore + +#endif // ENABLE(MEDIA_STREAM) |