Index: webrtc/p2p/base/session.h |
diff --git a/webrtc/p2p/base/session.h b/webrtc/p2p/base/session.h |
index 2cf8c8a52f11ec8932d560558d5b75bd44d0bcc1..a98a5efe13a8e6d872aa7356a3698c0817f14bf6 100644 |
--- a/webrtc/p2p/base/session.h |
+++ b/webrtc/p2p/base/session.h |
@@ -8,195 +8,6 @@ |
* be found in the AUTHORS file in the root of the source tree. |
*/ |
-#ifndef WEBRTC_P2P_BASE_SESSION_H_ |
-#define WEBRTC_P2P_BASE_SESSION_H_ |
- |
-#include <list> |
-#include <map> |
-#include <string> |
-#include <vector> |
- |
-#include "webrtc/base/refcount.h" |
-#include "webrtc/base/rtccertificate.h" |
-#include "webrtc/base/scoped_ptr.h" |
-#include "webrtc/base/scoped_ref_ptr.h" |
-#include "webrtc/base/socketaddress.h" |
-#include "webrtc/p2p/base/candidate.h" |
-#include "webrtc/p2p/base/port.h" |
-#include "webrtc/p2p/base/transport.h" |
- |
-namespace cricket { |
- |
-class BaseSession; |
-class P2PTransportChannel; |
-class Transport; |
-class TransportChannel; |
-class TransportChannelImpl; |
-class TransportController; |
- |
-// Statistics for all the transports of this session. |
-typedef std::map<std::string, TransportStats> TransportStatsMap; |
-typedef std::map<std::string, std::string> ProxyTransportMap; |
- |
-// TODO(pthatcher): Think of a better name for this. We already have |
-// a TransportStats in transport.h. Perhaps TransportsStats? |
-struct SessionStats { |
- ProxyTransportMap proxy_to_transport; |
- TransportStatsMap transport_stats; |
-}; |
- |
-// A BaseSession manages general session state. This includes negotiation |
-// of both the application-level and network-level protocols: the former |
-// defines what will be sent and the latter defines how it will be sent. Each |
-// network-level protocol is represented by a Transport object. Each Transport |
-// participates in the network-level negotiation. The individual streams of |
-// packets are represented by TransportChannels. The application-level protocol |
-// is represented by SessionDecription objects. |
-class BaseSession : public sigslot::has_slots<>, |
- public rtc::MessageHandler { |
- public: |
- enum { |
- MSG_TIMEOUT = 0, |
- MSG_ERROR, |
- MSG_STATE, |
- }; |
- |
- enum State { |
- STATE_INIT = 0, |
- STATE_SENTINITIATE, // sent initiate, waiting for Accept or Reject |
- STATE_RECEIVEDINITIATE, // received an initiate. Call Accept or Reject |
- STATE_SENTPRACCEPT, // sent provisional Accept |
- STATE_SENTACCEPT, // sent accept. begin connecting transport |
- STATE_RECEIVEDPRACCEPT, // received provisional Accept, waiting for Accept |
- STATE_RECEIVEDACCEPT, // received accept. begin connecting transport |
- STATE_SENTMODIFY, // sent modify, waiting for Accept or Reject |
- STATE_RECEIVEDMODIFY, // received modify, call Accept or Reject |
- STATE_SENTREJECT, // sent reject after receiving initiate |
- STATE_RECEIVEDREJECT, // received reject after sending initiate |
- STATE_SENTREDIRECT, // sent direct after receiving initiate |
- STATE_SENTTERMINATE, // sent terminate (any time / either side) |
- STATE_RECEIVEDTERMINATE, // received terminate (any time / either side) |
- STATE_INPROGRESS, // session accepted and in progress |
- STATE_DEINIT, // session is being destroyed |
- }; |
- |
- enum Error { |
- ERROR_NONE = 0, // no error |
- ERROR_TIME = 1, // no response to signaling |
- ERROR_RESPONSE = 2, // error during signaling |
- ERROR_NETWORK = 3, // network error, could not allocate network resources |
- ERROR_CONTENT = 4, // channel errors in SetLocalContent/SetRemoteContent |
- ERROR_TRANSPORT = 5, // transport error of some kind |
- }; |
- |
- // Convert State to a readable string. |
- static std::string StateToString(State state); |
- |
- BaseSession(rtc::Thread* signaling_thread, |
- rtc::Thread* worker_thread, |
- PortAllocator* port_allocator, |
- const std::string& sid, |
- bool initiator); |
- virtual ~BaseSession(); |
- |
- // These are const to allow them to be called from const methods. |
- rtc::Thread* signaling_thread() const { return signaling_thread_; } |
- rtc::Thread* worker_thread() const { return worker_thread_; } |
- PortAllocator* port_allocator() const { return port_allocator_; } |
- |
- // The ID of this session. |
- const std::string& id() const { return sid_; } |
- |
- // Returns the application-level description given by our client. |
- // If we are the recipient, this will be NULL until we send an accept. |
- const SessionDescription* local_description() const; |
- |
- // Returns the application-level description given by the other client. |
- // If we are the initiator, this will be NULL until we receive an accept. |
- const SessionDescription* remote_description() const; |
- |
- SessionDescription* remote_description(); |
- |
- // Takes ownership of SessionDescription* |
- void set_local_description(const SessionDescription* sdesc); |
- |
- // Takes ownership of SessionDescription* |
- void set_remote_description(SessionDescription* sdesc); |
- |
- void set_initiator(bool initiator); |
- bool initiator() const { return initiator_; } |
- |
- const SessionDescription* initiator_description() const; |
- |
- // Returns the current state of the session. See the enum above for details. |
- // Each time the state changes, we will fire this signal. |
- State state() const { return state_; } |
- sigslot::signal2<BaseSession* , State> SignalState; |
- |
- // Returns the last error in the session. See the enum above for details. |
- // Each time the an error occurs, we will fire this signal. |
- Error error() const { return error_; } |
- const std::string& error_desc() const { return error_desc_; } |
- sigslot::signal2<BaseSession* , Error> SignalError; |
- |
- // Updates the state, signaling if necessary. |
- virtual void SetState(State state); |
- |
- // Updates the error state, signaling if necessary. |
- // TODO(ronghuawu): remove the SetError method that doesn't take |error_desc|. |
- virtual void SetError(Error error, const std::string& error_desc); |
- |
- void SetIceConfig(const IceConfig& ice_config); |
- |
- // Start gathering candidates for any new transports, or transports doing an |
- // ICE restart. |
- void MaybeStartGathering(); |
- |
- protected: |
- bool PushdownTransportDescription(ContentSource source, |
- ContentAction action, |
- std::string* error_desc); |
- |
- // Handles messages posted to us. |
- virtual void OnMessage(rtc::Message *pmsg); |
- |
- TransportController* transport_controller() { |
- return transport_controller_.get(); |
- } |
- |
- protected: |
- State state_; |
- Error error_; |
- std::string error_desc_; |
- |
- private: |
- // Helper methods to push local and remote transport descriptions. |
- bool PushdownLocalTransportDescription( |
- const SessionDescription* sdesc, ContentAction action, |
- std::string* error_desc); |
- bool PushdownRemoteTransportDescription( |
- const SessionDescription* sdesc, ContentAction action, |
- std::string* error_desc); |
- |
- // Log session state. |
- void LogState(State old_state, State new_state); |
- |
- // Returns true and the TransportInfo of the given |content_name| |
- // from |description|. Returns false if it's not available. |
- static bool GetTransportDescription(const SessionDescription* description, |
- const std::string& content_name, |
- TransportDescription* info); |
- |
- rtc::Thread* const signaling_thread_; |
- rtc::Thread* const worker_thread_; |
- PortAllocator* const port_allocator_; |
- const std::string sid_; |
- bool initiator_; |
- rtc::scoped_ptr<TransportController> transport_controller_; |
- rtc::scoped_ptr<const SessionDescription> local_description_; |
- rtc::scoped_ptr<SessionDescription> remote_description_; |
-}; |
- |
-} // namespace cricket |
- |
-#endif // WEBRTC_P2P_BASE_SESSION_H_ |
+// TODO(deadbeef): Remove this file when Chrome build files no longer reference |
+// it. |
+#error "DONT INCLUDE THIS" |