| Index: webrtc/p2p/base/portallocator.h
|
| diff --git a/webrtc/p2p/base/portallocator.h b/webrtc/p2p/base/portallocator.h
|
| index dc1961db73f2ab41c8f887a2b90ebbd3174bb20a..152474d4f4476b5fc3060bb092e9f83cebd9aac3 100644
|
| --- a/webrtc/p2p/base/portallocator.h
|
| +++ b/webrtc/p2p/base/portallocator.h
|
| @@ -88,14 +88,6 @@ enum {
|
| CF_ALL = 0x7,
|
| };
|
|
|
| -enum class SessionState {
|
| - GATHERING, // Actively allocating ports and gathering candidates.
|
| - CLEARED, // Current allocation process has been stopped but may start
|
| - // new ones.
|
| - STOPPED // This session has completely stopped, no new allocation
|
| - // process will be started.
|
| -};
|
| -
|
| // TODO(deadbeef): Rename to TurnCredentials (and username to ufrag).
|
| struct RelayCredentials {
|
| RelayCredentials() {}
|
| @@ -167,18 +159,19 @@ class PortAllocatorSession : public sigslot::has_slots<> {
|
| virtual void SetCandidateFilter(uint32_t filter) = 0;
|
|
|
| // Starts gathering STUN and Relay configurations.
|
| - virtual void StartGettingPorts() { state_ = SessionState::GATHERING; }
|
| + virtual void StartGettingPorts() = 0;
|
| // Completely stops the gathering process and will not start new ones.
|
| - virtual void StopGettingPorts() { state_ = SessionState::STOPPED; }
|
| - // Only stops the existing gathering process but may start new ones if needed.
|
| - virtual void ClearGettingPorts() { state_ = SessionState::CLEARED; }
|
| + virtual void StopGettingPorts() = 0;
|
| // Whether the session is actively getting ports.
|
| - bool IsGettingPorts() { return state_ == SessionState::GATHERING; }
|
| + virtual bool IsGettingPorts() = 0;
|
| + // ClearGettingPorts and IsCleared are used by continual gathering.
|
| + // Only stops the existing gathering process but may start new ones if needed.
|
| + virtual void ClearGettingPorts() = 0;
|
| // Whether it is in the state where the existing gathering process is stopped,
|
| // but new ones may be started (basically after calling ClearGettingPorts).
|
| - bool IsCleared() { return state_ == SessionState::CLEARED; }
|
| + virtual bool IsCleared() const { return false; }
|
| // Whether the session has completely stopped.
|
| - bool IsStopped() { return state_ == SessionState::STOPPED; }
|
| + virtual bool IsStopped() const { return false; }
|
| // Re-gathers candidates on networks that do not have any connections. More
|
| // precisely, a network interface may have more than one IP addresses (e.g.,
|
| // IPv4 and IPv6 addresses). Each address subnet will be used to create a
|
| @@ -252,7 +245,6 @@ class PortAllocatorSession : public sigslot::has_slots<> {
|
| int component_;
|
| std::string ice_ufrag_;
|
| std::string ice_pwd_;
|
| - SessionState state_ = SessionState::CLEARED;
|
|
|
| // SetIceParameters is an implementation detail which only PortAllocator
|
| // should be able to call.
|
|
|