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

Side by Side Diff: remoting/host/extension.h

Issue 301453003: Host extensions (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef REMOTING_HOST_EXTENSION_H_
6 #define REMOTING_HOST_EXTENSION_H_
7
8 #include <string>
9
10 #include "base/memory/scoped_ptr.h"
11
12 namespace remoting {
Wez 2014/05/28 01:05:59 Should this belong under remoting::protocol, since
dcaiafa 2014/05/28 22:44:58 Per our offline conversation: it should be under r
13
14 class ClientSession;
15 class ExtensionSession;
16
17 // Extends |ChromotingHost| with new functionality, and can use extension
18 // messages to communicate with the client.
19 class Extension {
Wez 2014/05/28 01:05:59 Since this is in the remoting namespace, but host-
dcaiafa 2014/05/28 22:44:58 Done.
20 public:
21 // Returns a space-separated list of capabilities provided by this extension.
22 // Capabilities are used to inform the client of the availability of an
23 // extension.
Wez 2014/05/28 01:05:59 How? Are they e.g. merged into the capabilities th
dcaiafa 2014/05/28 22:44:58 Done.
24 virtual std::string GetCapabilities() = 0;
25
26 // Creates an extension session, which can handle extension messages for a
27 // client session.
28 // It may return NULL.
Wez 2014/05/28 01:05:59 Why would it do that? What happens if it does? Sug
dcaiafa 2014/05/28 22:44:58 Done.
29 // |client_session| must outlive the resulting |ExtensionSession|.
30 virtual scoped_ptr<ExtensionSession> CreateExtensionSession(
31 ClientSession* client_session) = 0;
Wez 2014/05/28 01:05:59 Why do we need to pass the ClientSession in here?
dcaiafa 2014/05/28 22:44:58 So the extension can (among others): - Query clien
32 };
33
34 typedef std::vector<Extension*> ExtensionList;
35
36 } // namespace remoting
37
38 #endif // REMOTING_HOST_EXTENSION_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698