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

Side by Side Diff: remoting/webapp/host_dispatcher.js

Issue 291133004: Automatic host installation for IT2Me on Windows. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 /** 5 /**
6 * @fileoverview 6 * @fileoverview
7 * This class provides an interface between the HostController and either the 7 * This class provides an interface between the HostController and either the
8 * NativeMessaging Host or the Host NPAPI plugin, depending on whether or not 8 * NativeMessaging Host or the Host NPAPI plugin, depending on whether or not
9 * NativeMessaging is supported. Since the test for NativeMessaging support is 9 * NativeMessaging is supported. Since the test for NativeMessaging support is
10 * asynchronous, this class stores any requests on a queue, pending the result 10 * asynchronous, this class stores any requests on a queue, pending the result
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 that.state_ = that.npapiHost_ ? remoting.HostDispatcher.State.NPAPI 80 that.state_ = that.npapiHost_ ? remoting.HostDispatcher.State.NPAPI
81 : remoting.HostDispatcher.State.NOT_INSTALLED; 81 : remoting.HostDispatcher.State.NOT_INSTALLED;
82 sendPendingRequests(); 82 sendPendingRequests();
83 } 83 }
84 84
85 this.nativeMessagingHost_.initialize(onNativeMessagingInit, 85 this.nativeMessagingHost_.initialize(onNativeMessagingInit,
86 onNativeMessagingFailed); 86 onNativeMessagingFailed);
87 }; 87 };
88 88
89 /** 89 /**
90 * @return {remoting.HostPlugin}
91 */
92 remoting.HostDispatcher.prototype.getNpapiHost = function() {
Jamie 2014/05/20 21:43:06 I don't like the host dispatcher exposing one of i
weitao 2014/05/20 22:09:13 I do plan to remove this in the subsequent CL's wh
93 return this.npapiHost_;
94 }
95
96 /**
90 * @param {remoting.HostController.Feature} feature The feature to test for. 97 * @param {remoting.HostController.Feature} feature The feature to test for.
91 * @param {function(boolean):void} onDone 98 * @param {function(boolean):void} onDone
92 * @return {void} 99 * @return {void}
93 */ 100 */
94 remoting.HostDispatcher.prototype.hasFeature = function( 101 remoting.HostDispatcher.prototype.hasFeature = function(
95 feature, onDone) { 102 feature, onDone) {
96 switch (this.state_) { 103 switch (this.state_) {
97 case remoting.HostDispatcher.State.UNKNOWN: 104 case remoting.HostDispatcher.State.UNKNOWN:
98 this.pendingRequests_.push( 105 this.pendingRequests_.push(
99 this.hasFeature.bind(this, feature, onDone)); 106 this.hasFeature.bind(this, feature, onDone));
(...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after
380 onError(remoting.Error.MISSING_PLUGIN); 387 onError(remoting.Error.MISSING_PLUGIN);
381 } 388 }
382 break; 389 break;
383 case remoting.HostDispatcher.State.NOT_INSTALLED: 390 case remoting.HostDispatcher.State.NOT_INSTALLED:
384 onError(remoting.Error.MISSING_PLUGIN); 391 onError(remoting.Error.MISSING_PLUGIN);
385 break; 392 break;
386 } 393 }
387 }; 394 };
388 395
389 /** 396 /**
397 * This function installs the chromoting host using the NPAPI plugin and should
Jamie 2014/05/20 21:43:06 Nit: We shouldn't refer to "chromoting" in our sou
weitao 2014/05/20 22:09:13 Done.
398 * only be called on Windows.
399 *
390 * @param {function(remoting.HostController.AsyncResult):void} onDone 400 * @param {function(remoting.HostController.AsyncResult):void} onDone
391 * @param {function(remoting.Error):void} onError 401 * @param {function(remoting.Error):void} onError
392 * @return {void} 402 * @return {void}
393 */ 403 */
394 remoting.HostDispatcher.prototype.stopDaemon = function(onDone, onError) { 404 remoting.HostDispatcher.prototype.stopDaemon = function(onDone, onError) {
395 switch (this.state_) { 405 switch (this.state_) {
396 case remoting.HostDispatcher.State.UNKNOWN: 406 case remoting.HostDispatcher.State.UNKNOWN:
397 this.pendingRequests_.push(this.stopDaemon.bind(this, onDone, onError)); 407 this.pendingRequests_.push(this.stopDaemon.bind(this, onDone, onError));
398 break; 408 break;
399 case remoting.HostDispatcher.State.NATIVE_MESSAGING: 409 case remoting.HostDispatcher.State.NATIVE_MESSAGING:
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after
636 } 646 }
637 }; 647 };
638 648
639 /** 649 /**
640 * Returns true if the NPAPI plugin is being used. 650 * Returns true if the NPAPI plugin is being used.
641 * @return {boolean} 651 * @return {boolean}
642 */ 652 */
643 remoting.HostDispatcher.prototype.usingNpapiPlugin = function() { 653 remoting.HostDispatcher.prototype.usingNpapiPlugin = function() {
644 return this.state_ == remoting.HostDispatcher.State.NPAPI; 654 return this.state_ == remoting.HostDispatcher.State.NPAPI;
645 } 655 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698