Index: net/base/stream_listen_socket.h |
diff --git a/net/base/stream_listen_socket.h b/net/base/stream_listen_socket.h |
index 8b71b52edf36ba11433bd2eca581e81aa7617be9..40d8a20d737b5b2ce2758a1e89a304d07d1073bc 100644 |
--- a/net/base/stream_listen_socket.h |
+++ b/net/base/stream_listen_socket.h |
@@ -132,6 +132,17 @@ class NET_EXPORT StreamListenSocket |
DISALLOW_COPY_AND_ASSIGN(StreamListenSocket); |
}; |
+// Abstract factory that must be subclassed for each subclass of |
+// StreamListenSocket. |
+class StreamListenSocketFactory { |
+ public: |
+ virtual ~StreamListenSocketFactory() {} |
+ |
+ // Returns a new instance of StreamListenSocket or NULL if an error occurred. |
+ virtual scoped_refptr<StreamListenSocket> CreateAndListen( |
+ StreamListenSocket::Delegate* delegate) const = 0; |
+}; |
+ |
} // namespace net |
#endif // NET_BASE_STREAM_LISTEN_SOCKET_H_ |