Skip to content
  • tommyw@google.com's avatar
    MediaStream API: Add Ice-related functionality to RTCPeerConnection · e902e881
    tommyw@google.com authored
    https://bugs.webkit.org/show_bug.cgi?id=95565
    
    Reviewed by Adam Barth.
    
    Source/Platform:
    
    * Platform.gypi:
    * chromium/public/WebRTCICECandidateDescriptor.h: Copied from Source/Platform/chromium/public/WebRTCPeerConnectionHandlerClient.h.
    (WebCore):
    (WebKit):
    (WebRTCICECandidateDescriptor):
    (WebKit::WebRTCICECandidateDescriptor::WebRTCICECandidateDescriptor):
    (WebKit::WebRTCICECandidateDescriptor::~WebRTCICECandidateDescriptor):
    (WebKit::WebRTCICECandidateDescriptor::operator=):
    (WebKit::WebRTCICECandidateDescriptor::isNull):
    * chromium/public/WebRTCPeerConnectionHandler.h:
    (WebKit):
    (WebRTCPeerConnectionHandler):
    * chromium/public/WebRTCPeerConnectionHandlerClient.h:
    (WebKit):
    (WebRTCPeerConnectionHandlerClient):
    
    Source/WebCore:
    
    Adds all Ice-related functionality to RTCPeerConnection, including
    events, callbacks and methods.
    
    Test: fast/mediastream/RTCPeerConnection-ice.html
    
    * CMakeLists.txt:
    * GNUmakefile.list.am:
    * Modules/mediastream/RTCIceCandidateEvent.cpp: Added.
    (WebCore):
    (WebCore::RTCIceCandidateEvent::create):
    (WebCore::RTCIceCandidateEvent::RTCIceCandidateEvent):
    (WebCore::RTCIceCandidateEvent::~RTCIceCandidateEvent):
    (WebCore::RTCIceCandidateEvent::candidate):
    (WebCore::RTCIceCandidateEvent::interfaceName):
    * Modules/mediastream/RTCIceCandidateEvent.h: Added.
    (WebCore):
    (RTCIceCandidateEvent):
    * Modules/mediastream/RTCIceCandidateEvent.idl: Added.
    * Modules/mediastream/RTCPeerConnection.cpp:
    (WebCore::RTCPeerConnection::RTCPeerConnection):
    (WebCore::RTCPeerConnection::updateIce):
    (WebCore):
    (WebCore::RTCPeerConnection::addIceCandidate):
    (WebCore::RTCPeerConnection::iceState):
    (WebCore::RTCPeerConnection::close):
    (WebCore::RTCPeerConnection::didGenerateIceCandidate):
    (WebCore::RTCPeerConnection::didChangeIceState):
    (WebCore::RTCPeerConnection::stop):
    (WebCore::RTCPeerConnection::changeIceState):
    * Modules/mediastream/RTCPeerConnection.h:
    (RTCPeerConnection):
    * Modules/mediastream/RTCPeerConnection.idl:
    * WebCore.gypi:
    * dom/EventNames.h:
    (WebCore):
    * dom/EventNames.in:
    * platform/chromium/support/WebRTCICECandidateDescriptor.cpp: Copied from Source/WebCore/platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp.
    (WebKit):
    (WebKit::WebRTCICECandidateDescriptor::WebRTCICECandidateDescriptor):
    (WebKit::WebRTCICECandidateDescriptor::assign):
    (WebKit::WebRTCICECandidateDescriptor::reset):
    (WebKit::WebRTCICECandidateDescriptor::initialize):
    (WebKit::WebRTCICECandidateDescriptor::operator PassRefPtr<WebCore::RTCIceCandidateDescriptor>):
    (WebKit::WebRTCICECandidateDescriptor::candidate):
    (WebKit::WebRTCICECandidateDescriptor::sdpMid):
    (WebKit::WebRTCICECandidateDescriptor::sdpMLineIndex):
    * platform/mediastream/RTCIceCandidateDescriptor.h:
    (WebCore::RTCIceCandidateDescriptor::candidate):
    (WebCore::RTCIceCandidateDescriptor::sdpMid):
    (WebCore::RTCIceCandidateDescriptor::sdpMLineIndex):
    * platform/mediastream/RTCPeerConnectionHandler.h:
    (WebCore):
    (RTCPeerConnectionHandler):
    * platform/mediastream/RTCPeerConnectionHandlerClient.h:
    (WebCore):
    (RTCPeerConnectionHandlerClient):
    * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
    (WebCore::RTCPeerConnectionHandlerChromium::updateIce):
    (WebCore):
    (WebCore::RTCPeerConnectionHandlerChromium::addIceCandidate):
    (WebCore::RTCPeerConnectionHandlerChromium::didGenerateICECandidate):
    (WebCore::RTCPeerConnectionHandlerChromium::didChangeICEState):
    * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:
    (WebKit):
    (RTCPeerConnectionHandlerChromium):
    
    Source/WebKit/chromium:
    
    * src/AssertMatchingEnums.cpp:
    
    Tools:
    
    * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:
    (MockWebRTCPeerConnectionHandler::MockWebRTCPeerConnectionHandler):
    (MockWebRTCPeerConnectionHandler::updateICE):
    (MockWebRTCPeerConnectionHandler::addICECandidate):
    * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h:
    (MockWebRTCPeerConnectionHandler):
    
    LayoutTests:
    
    * fast/mediastream/RTCPeerConnection-ice-expected.txt: Added.
    * fast/mediastream/RTCPeerConnection-ice.html: Added.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127425 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    e902e881