Title: [91455] trunk/Source/WebCore
Revision
91455
Author
[email protected]
Date
2011-07-21 03:05:41 -0700 (Thu, 21 Jul 2011)

Log Message

MediaStream API: Merging MediaStreamContainer and MediaStreamList
https://bugs.webkit.org/show_bug.cgi?id=64794

Patch by Tommy Widenflycht <[email protected]> on 2011-07-21
Reviewed by Tony Gentilcore.

* GNUmakefile.list.am:
* dom/MediaStreamContainer.h: Removed.
* dom/MediaStreamList.cpp:
(WebCore::MediaStreamList::create):
(WebCore::MediaStreamList::MediaStreamList):
(WebCore::MediaStreamList::length):
(WebCore::MediaStreamList::item):
(WebCore::MediaStreamList::add):
(WebCore::MediaStreamList::remove):
(WebCore::MediaStreamList::contains):
(WebCore::MediaStreamList::get):
* dom/MediaStreamList.h:

Modified Paths

Removed Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (91454 => 91455)


--- trunk/Source/WebCore/ChangeLog	2011-07-21 09:51:59 UTC (rev 91454)
+++ trunk/Source/WebCore/ChangeLog	2011-07-21 10:05:41 UTC (rev 91455)
@@ -1,3 +1,23 @@
+2011-07-21  Tommy Widenflycht  <[email protected]>
+
+        MediaStream API: Merging MediaStreamContainer and MediaStreamList
+        https://bugs.webkit.org/show_bug.cgi?id=64794
+
+        Reviewed by Tony Gentilcore.
+
+        * GNUmakefile.list.am:
+        * dom/MediaStreamContainer.h: Removed.
+        * dom/MediaStreamList.cpp:
+        (WebCore::MediaStreamList::create):
+        (WebCore::MediaStreamList::MediaStreamList):
+        (WebCore::MediaStreamList::length):
+        (WebCore::MediaStreamList::item):
+        (WebCore::MediaStreamList::add):
+        (WebCore::MediaStreamList::remove):
+        (WebCore::MediaStreamList::contains):
+        (WebCore::MediaStreamList::get):
+        * dom/MediaStreamList.h:
+
 2011-07-20  Yury Semikhatsky  <[email protected]>
 
         Web Inspector: always open dedicated worker inspector in a new window not a new tab

Modified: trunk/Source/WebCore/GNUmakefile.list.am (91454 => 91455)


--- trunk/Source/WebCore/GNUmakefile.list.am	2011-07-21 09:51:59 UTC (rev 91454)
+++ trunk/Source/WebCore/GNUmakefile.list.am	2011-07-21 10:05:41 UTC (rev 91455)
@@ -1187,7 +1187,6 @@
 	Source/WebCore/dom/MappedAttributeEntry.h \
 	Source/WebCore/dom/MediaStream.cpp \
 	Source/WebCore/dom/MediaStream.h \
-	Source/WebCore/dom/MediaStreamContainer.h \
 	Source/WebCore/dom/MediaStreamList.cpp \
 	Source/WebCore/dom/MediaStreamList.h \
 	Source/WebCore/dom/MediaStreamTrack.cpp \

Modified: trunk/Source/WebCore/WebCore.gypi (91454 => 91455)


--- trunk/Source/WebCore/WebCore.gypi	2011-07-21 09:51:59 UTC (rev 91454)
+++ trunk/Source/WebCore/WebCore.gypi	2011-07-21 10:05:41 UTC (rev 91455)
@@ -2519,7 +2519,6 @@
             'dom/LocalMediaStream.h',
             'dom/MediaStream.cpp',
             'dom/MediaStream.h',
-            'dom/MediaStreamContainer.h',
             'dom/MediaStreamList.cpp',
             'dom/MediaStreamList.h',
             'dom/MediaStreamTrack.cpp',

Modified: trunk/Source/WebCore/WebCore.pro (91454 => 91455)


--- trunk/Source/WebCore/WebCore.pro	2011-07-21 09:51:59 UTC (rev 91454)
+++ trunk/Source/WebCore/WebCore.pro	2011-07-21 10:05:41 UTC (rev 91455)
@@ -3226,7 +3226,6 @@
     HEADERS += \
         dom/LocalMediaStream.h \
         dom/MediaStream.h \
-        dom/MediaStreamContainer.h \
         dom/MediaStreamList.h \
         dom/MediaStreamTrack.h \
         dom/MediaStreamTrackList.h \

Modified: trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj (91454 => 91455)


--- trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj	2011-07-21 09:51:59 UTC (rev 91454)
+++ trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj	2011-07-21 10:05:41 UTC (rev 91455)
@@ -45974,10 +45974,6 @@
 				>
 			</File>
 			<File
-				RelativePath="..\dom\MediaStreamContainer.h"
-				>
-			</File>
-			<File
 				RelativePath="..\dom\MediaStreamList.cpp"
 				>
 				<FileConfiguration

Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (91454 => 91455)


--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2011-07-21 09:51:59 UTC (rev 91454)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2011-07-21 10:05:41 UTC (rev 91455)
@@ -4059,7 +4059,6 @@
 		ABDDFE790A5C6E7000A3E11D /* RenderMenuList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABDDFE730A5C6E6F00A3E11D /* RenderMenuList.cpp */; };
 		ABDDFE7A0A5C6E7000A3E11D /* RenderMenuList.h in Headers */ = {isa = PBXBuildFile; fileRef = ABDDFE740A5C6E7000A3E11D /* RenderMenuList.h */; };
 		ADDF1AD71257CD9A0003A759 /* RenderSVGPath.h in Headers */ = {isa = PBXBuildFile; fileRef = ADDF1AD51257CD9A0003A759 /* RenderSVGPath.h */; };
-		B14353D4138EA8ED00D53276 /* MediaStreamContainer.h in Headers */ = {isa = PBXBuildFile; fileRef = B14353D0138EA8ED00D53276 /* MediaStreamContainer.h */; };
 		B14353D5138EA8ED00D53276 /* MediaStreamList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B14353D1138EA8ED00D53276 /* MediaStreamList.cpp */; };
 		B14353D6138EA8ED00D53276 /* MediaStreamList.h in Headers */ = {isa = PBXBuildFile; fileRef = B14353D2138EA8ED00D53276 /* MediaStreamList.h */; };
 		B14353F8138EA95B00D53276 /* JSMediaStreamList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B14353F6138EA95B00D53276 /* JSMediaStreamList.cpp */; };
@@ -10547,7 +10546,6 @@
 		ABDDFE740A5C6E7000A3E11D /* RenderMenuList.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = RenderMenuList.h; sourceTree = "<group>"; };
 		ADDF1AD41257CD9A0003A759 /* RenderSVGPath.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderSVGPath.cpp; sourceTree = "<group>"; };
 		ADDF1AD51257CD9A0003A759 /* RenderSVGPath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderSVGPath.h; sourceTree = "<group>"; };
-		B14353D0138EA8ED00D53276 /* MediaStreamContainer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaStreamContainer.h; sourceTree = "<group>"; };
 		B14353D1138EA8ED00D53276 /* MediaStreamList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaStreamList.cpp; sourceTree = "<group>"; };
 		B14353D2138EA8ED00D53276 /* MediaStreamList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaStreamList.h; sourceTree = "<group>"; };
 		B14353D3138EA8ED00D53276 /* MediaStreamList.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MediaStreamList.idl; sourceTree = "<group>"; };
@@ -19775,7 +19773,6 @@
 				B1E545741346291F0092A545 /* MediaStream.cpp */,
 				B1E545751346291F0092A545 /* MediaStream.h */,
 				B1E545761346291F0092A545 /* MediaStream.idl */,
-				B14353D0138EA8ED00D53276 /* MediaStreamContainer.h */,
 				B14353D1138EA8ED00D53276 /* MediaStreamList.cpp */,
 				B14353D2138EA8ED00D53276 /* MediaStreamList.h */,
 				B14353D3138EA8ED00D53276 /* MediaStreamList.idl */,
@@ -22256,7 +22253,6 @@
 				D3AA10F4123A98AA0092152B /* MediaQueryMatcher.h in Headers */,
 				B1E5457E1346291F0092A545 /* MediaStream.h in Headers */,
 				B1E54594134629C10092A545 /* MediaStreamClient.h in Headers */,
-				B14353D4138EA8ED00D53276 /* MediaStreamContainer.h in Headers */,
 				B1E54598134629C10092A545 /* MediaStreamController.h in Headers */,
 				B1E54596134629C10092A545 /* MediaStreamFrameController.h in Headers */,
 				B14353D6138EA8ED00D53276 /* MediaStreamList.h in Headers */,

Deleted: trunk/Source/WebCore/dom/MediaStreamContainer.h (91454 => 91455)


--- trunk/Source/WebCore/dom/MediaStreamContainer.h	2011-07-21 09:51:59 UTC (rev 91454)
+++ trunk/Source/WebCore/dom/MediaStreamContainer.h	2011-07-21 10:05:41 UTC (rev 91455)
@@ -1,91 +0,0 @@
-/*
- * Copyright (C) 2011 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.
- */
-
-#ifndef MediaStreamContainer_h
-#define MediaStreamContainer_h
-
-#if ENABLE(MEDIA_STREAM)
-
-#include "MediaStream.h"
-#include <wtf/Assertions.h>
-#include <wtf/Forward.h>
-#include <wtf/HashMap.h>
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefCounted.h>
-
-namespace WebCore {
-
-class MediaStreamContainer : public RefCounted<MediaStreamContainer> {
-public:
-    static PassRefPtr<MediaStreamContainer> create() { return adoptRef(new MediaStreamContainer); }
-    virtual ~MediaStreamContainer() { }
-
-    unsigned length() const { return m_streams.size(); }
-
-    PassRefPtr<MediaStream> item(unsigned index) const
-    {
-        HashMap<String, RefPtr<MediaStream> >::const_iterator i = m_streams.begin();
-        for (unsigned j = 0; i != m_streams.end(); ++i, ++j) {
-            if (j == index)
-                return i->second;
-        }
-        return PassRefPtr<MediaStream>();
-    }
-
-    void add(PassRefPtr<MediaStream> stream)
-    {
-        RefPtr<MediaStream> s = stream;
-        ASSERT(!contains(s));
-        m_streams.add(s->label(), s);
-    }
-
-    void remove(PassRefPtr<MediaStream> stream)
-    {
-        RefPtr<MediaStream> s = stream;
-        ASSERT(contains(s));
-        m_streams.remove(s->label());
-    }
-
-    bool contains(PassRefPtr<MediaStream> stream) const
-    {
-        RefPtr<MediaStream> s = stream;
-        return m_streams.contains(s->label());
-    }
-
-    PassRefPtr<MediaStream> get(const String& key) const
-    {
-        return m_streams.get(key);
-    }
-
-private:
-    MediaStreamContainer() { }
-
-    HashMap<String, RefPtr<MediaStream> > m_streams;
-};
-
-} // namespace WebCore
-
-#endif // ENABLE(MEDIA_STREAM)
-
-#endif // MediaStreamContainer_h

Modified: trunk/Source/WebCore/dom/MediaStreamList.cpp (91454 => 91455)


--- trunk/Source/WebCore/dom/MediaStreamList.cpp	2011-07-21 09:51:59 UTC (rev 91454)
+++ trunk/Source/WebCore/dom/MediaStreamList.cpp	2011-07-21 10:05:41 UTC (rev 91455)
@@ -27,17 +27,14 @@
 
 #if ENABLE(MEDIA_STREAM)
 
-#include "MediaStreamContainer.h"
-
 namespace WebCore {
 
-PassRefPtr<MediaStreamList> MediaStreamList::create(PassRefPtr<MediaStreamContainer> streams)
+PassRefPtr<MediaStreamList> MediaStreamList::create()
 {
-    return adoptRef(new MediaStreamList(streams));
+    return adoptRef(new MediaStreamList());
 }
 
-MediaStreamList::MediaStreamList(PassRefPtr<MediaStreamContainer> streams)
-    : m_streams(streams)
+MediaStreamList::MediaStreamList()
 {
 }
 
@@ -47,16 +44,50 @@
 
 unsigned MediaStreamList::length() const
 {
-    return m_streams->length();
+    return m_streams.size();
 }
 
 PassRefPtr<MediaStream> MediaStreamList::item(unsigned index) const
 {
-    if (index < m_streams->length())
-        return m_streams->item(index);
+    HashMap<String, RefPtr<MediaStream> >::const_iterator i = m_streams.begin();
+    for (unsigned j = 0; i != m_streams.end(); ++i, ++j) {
+        if (j == index)
+            return i->second;
+    }
     return PassRefPtr<MediaStream>();
 }
 
+void MediaStreamList::add(PassRefPtr<MediaStream> stream)
+{
+    RefPtr<MediaStream> s = stream;
+    ASSERT(!contains(s));
+    m_streams.add(s->label(), s);
+}
+
+void MediaStreamList::remove(PassRefPtr<MediaStream> stream)
+{
+    RefPtr<MediaStream> s = stream;
+    ASSERT(contains(s));
+    m_streams.remove(s->label());
+}
+
+bool MediaStreamList::contains(PassRefPtr<MediaStream> stream) const
+{
+    RefPtr<MediaStream> s = stream;
+    return m_streams.contains(s->label());
+}
+
+bool MediaStreamList::contains(const String& label) const
+{
+    return m_streams.contains(label);
+}
+
+PassRefPtr<MediaStream> MediaStreamList::get(const String& label) const
+{
+    return m_streams.get(label);
+}
+
+
 } // namespace WebCore
 
 #endif // ENABLE(MEDIA_STREAM)

Modified: trunk/Source/WebCore/dom/MediaStreamList.h (91454 => 91455)


--- trunk/Source/WebCore/dom/MediaStreamList.h	2011-07-21 09:51:59 UTC (rev 91454)
+++ trunk/Source/WebCore/dom/MediaStreamList.h	2011-07-21 10:05:41 UTC (rev 91455)
@@ -27,29 +27,34 @@
 
 #if ENABLE(MEDIA_STREAM)
 
-#include <wtf/Forward.h>
+#include "MediaStream.h"
+#include <wtf/HashMap.h>
 #include <wtf/PassRefPtr.h>
 #include <wtf/RefCounted.h>
 #include <wtf/RefPtr.h>
 
 namespace WebCore {
 
-class MediaStream;
-class MediaStreamContainer;
-
 class MediaStreamList : public RefCounted<MediaStreamList> {
 public:
-    static PassRefPtr<MediaStreamList> create(PassRefPtr<MediaStreamContainer> streams);
+    static PassRefPtr<MediaStreamList> create();
     virtual ~MediaStreamList();
 
     // DOM methods & attributes for MediaStreamList
-    virtual unsigned length() const;
-    virtual PassRefPtr<MediaStream> item(unsigned index) const;
+    unsigned length() const;
+    PassRefPtr<MediaStream> item(unsigned index) const;
 
+    // List manipulation
+    void add(PassRefPtr<MediaStream>);
+    void remove(PassRefPtr<MediaStream>);
+    bool contains(PassRefPtr<MediaStream>) const;
+    bool contains(const String& label) const;
+    PassRefPtr<MediaStream> get(const String& label) const;
+
 private:
-    MediaStreamList(PassRefPtr<MediaStreamContainer> streams);
+    MediaStreamList();
 
-    RefPtr<MediaStreamContainer> m_streams;
+    HashMap<String, RefPtr<MediaStream> > m_streams;
 };
 
 } // namespace WebCore
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to