Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2561)

Unified Diff: blimp/client/session/blimp_client_session.h

Issue 1551583003: Implementation and fixes for Blimp client/engine E2E communication. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@dtrainor-linux-cl1528243002
Patch Set: Address haibinlu's feedback Created 4 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: blimp/client/session/blimp_client_session.h
diff --git a/blimp/client/session/blimp_client_session.h b/blimp/client/session/blimp_client_session.h
index da8e74ab69452b710ee9a0c38eb6ff8aea85f6ef..4c314eb6555c098d2e8ae53b59fabfcf1905dd5c 100644
--- a/blimp/client/session/blimp_client_session.h
+++ b/blimp/client/session/blimp_client_session.h
@@ -6,12 +6,18 @@
#define BLIMP_CLIENT_SESSION_BLIMP_CLIENT_SESSION_H_
#include "base/macros.h"
+#include "base/memory/ref_counted.h"
#include "base/memory/scoped_ptr.h"
+#include "base/threading/thread.h"
#include "blimp/client/blimp_client_export.h"
+#include "blimp/common/proto/blimp_message.pb.h"
+#include "blimp/net/blimp_message_processor.h"
namespace blimp {
class BrowserConnectionHandler;
+class ClientConnectionManager;
+class ClientNetworkComponents;
class NavigationFeature;
class RenderWidgetFeature;
class TabControlFeature;
@@ -32,18 +38,23 @@ class BLIMP_CLIENT_EXPORT BlimpClientSession {
NavigationFeature* GetNavigationFeature() const;
RenderWidgetFeature* GetRenderWidgetFeature() const;
+ // Tells |connection_manager_| to start connecting to the remote host.
+ // Must be called on the IO thread.
+ void Connect();
+
protected:
virtual ~BlimpClientSession();
private:
- // The BrowserConnectionHandler is here so that the BlimpClientSession can
- // glue the feature-specific handlers to the actual network connection.
- scoped_ptr<BrowserConnectionHandler> connection_handler_;
-
+ base::Thread io_thread_;
scoped_ptr<TabControlFeature> tab_control_feature_;
scoped_ptr<NavigationFeature> navigation_feature_;
scoped_ptr<RenderWidgetFeature> render_widget_feature_;
+ // Container struct for network components.
+ // Must be deleted on the IO thread.
+ scoped_ptr<ClientNetworkComponents> network_components_;
+
DISALLOW_COPY_AND_ASSIGN(BlimpClientSession);
};

Powered by Google App Engine
This is Rietveld 408576698