| Index: remoting/webapp/crd/js/tcp_socket.js
|
| diff --git a/remoting/webapp/crd/js/tcp_socket.js b/remoting/webapp/crd/js/tcp_socket.js
|
| deleted file mode 100644
|
| index f3644109a3df3dbaa9fbae25a57f65598d17cdeb..0000000000000000000000000000000000000000
|
| --- a/remoting/webapp/crd/js/tcp_socket.js
|
| +++ /dev/null
|
| @@ -1,200 +0,0 @@
|
| -// Copyright 2015 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -'use strict';
|
| -
|
| -/** @suppress {duplicate} */
|
| -var remoting = remoting || {};
|
| -
|
| -(function() {
|
| -
|
| -/** @type {Object<number, remoting.TcpSocket>} */
|
| -var sockets = {};
|
| -var receiveListenersAdded = false;
|
| -
|
| -function addReceiveListeners() {
|
| - if (receiveListenersAdded) {
|
| - return;
|
| - }
|
| -
|
| - receiveListenersAdded = true;
|
| -
|
| - chrome.sockets.tcp.onReceive.addListener(function(
|
| - /** chrome.sockets.tcp.ReceiveInfo */ info) {
|
| - var socket = sockets[info.socketId];
|
| - if (socket === undefined) {
|
| - console.warn("Received data for unknown socket " + info.socketId);
|
| - return;
|
| - }
|
| - if (socket.receiveCallback_ === null) {
|
| - console.warn("Received data when socket was paused.");
|
| - return;
|
| - }
|
| - socket.receiveCallback_(info.data);
|
| - });
|
| -
|
| - chrome.sockets.tcp.onReceiveError.addListener(function(
|
| - /** chrome.sockets.tcp.ReceiveErrorInfo */ info) {
|
| - var socket = sockets[info.socketId];
|
| - if (socket === undefined) {
|
| - console.warn("Received error for unknown socket " + info.socketId);
|
| - return;
|
| - }
|
| - if (socket.receiveErrorCallback_ === null) {
|
| - console.warn("Recv() failed when socket was paused: " + info.resultCode);
|
| - return;
|
| - }
|
| - socket.receiveErrorCallback_(info.resultCode);
|
| - });
|
| -}
|
| -
|
| -/**
|
| - * Wrapper for chrome.sockets.tcp API.
|
| - *
|
| - * @constructor
|
| - * @implements {base.Disposable}
|
| - */
|
| -remoting.TcpSocket = function() {
|
| - /** @private */
|
| - this.destroyed_ = false;
|
| - /** @private */
|
| - this.socketId_ = -1;
|
| - /** @private {?function(ArrayBuffer):void} */
|
| - this.receiveCallback_ = null;
|
| - /** @private {?function(number):void} */
|
| - this.receiveErrorCallback_ = null;
|
| -
|
| - addReceiveListeners();
|
| -};
|
| -
|
| -/**
|
| - * Connects the socket to the specified host and port.
|
| - *
|
| - * @returns {Promise} Promise that's resolved when the socket is connected.
|
| - */
|
| -remoting.TcpSocket.prototype.connect = function(/** string */ host,
|
| - /** number */ port) {
|
| - var that = this;
|
| -
|
| - return new Promise(function(resolve, reject) {
|
| - chrome.sockets.tcp.create({}, onCreated);
|
| -
|
| -
|
| - function onCreated(/** chrome.sockets.tcp.CreateInfo */ createInfo) {
|
| - // Check if the socket was destroyed.
|
| - if (that.destroyed_) {
|
| - chrome.sockets.tcp.close(createInfo.socketId);
|
| - return;
|
| - }
|
| -
|
| - that.socketId_ = createInfo.socketId;
|
| - sockets[that.socketId_] = that;
|
| -
|
| - // Pause the socket so that we start receiving only after startReceiving()
|
| - // is called.
|
| - chrome.sockets.tcp.setPaused(that.socketId_, true);
|
| -
|
| - chrome.sockets.tcp.connect(that.socketId_, host, port, onConnected);
|
| - }
|
| -
|
| - function onConnected(/** number */ result) {
|
| - if (that.destroyed_) {
|
| - return;
|
| - }
|
| -
|
| - if (result < 0) {
|
| - reject(result);
|
| - } else {
|
| - resolve(0);
|
| - }
|
| - }
|
| - });
|
| -};
|
| -
|
| -remoting.TcpSocket.prototype.dispose = function() {
|
| - if (this.socketId_ != -1) {
|
| - chrome.sockets.tcp.close(this.socketId_);
|
| - delete sockets[this.socketId_];
|
| - this.socketId_ = -1;
|
| - }
|
| - this.destroyed_ = true;
|
| - this.receiveCallback_ = null;
|
| -};
|
| -
|
| -/**
|
| - * Starts receiving data on the socket. Calls receiveCallback when new data is
|
| - * received or receiveErrorCallback when recv() returns an error.
|
| - */
|
| -remoting.TcpSocket.prototype.startReceiving = function(
|
| - /** ?function(ArrayBuffer):void */ receiveCallback,
|
| - /** ?function(number):void */ receiveErrorCallback) {
|
| - base.debug.assert(this.receiveCallback_ == null);
|
| - this.receiveCallback_ = receiveCallback;
|
| - this.receiveErrorCallback_ = receiveErrorCallback;
|
| - chrome.sockets.tcp.setPaused(this.socketId_, false);
|
| -};
|
| -
|
| -/**
|
| - * Sends |data|.
|
| - *
|
| - * @returns {Promise}
|
| - */
|
| -remoting.TcpSocket.prototype.send = function(/** ArrayBuffer */ data) {
|
| - var that = this;
|
| -
|
| - return new Promise(function(resolve, reject) {
|
| - chrome.sockets.tcp.send(that.socketId_, data, function(sendInfo) {
|
| - if (sendInfo.resultCode < 0) {
|
| - reject(sendInfo.resultCode);
|
| - } else {
|
| - resolve(sendInfo.bytesSent);
|
| - }
|
| - });
|
| - });
|
| -};
|
| -
|
| -/**
|
| - * Starts TLS on the socket. Once TLS is negotiated the caller will need to call
|
| - * startReceiving() to start receiving data, even if startReceiving() was called
|
| - * before.
|
| - *
|
| - * @returns {Promise}
|
| - */
|
| -remoting.TcpSocket.prototype.startTls = function() {
|
| - var that = this;
|
| -
|
| - return new Promise(function(resolve, reject) {
|
| - function doStartTls() {
|
| - chrome.sockets.tcp.secure(that.socketId_, {}, function(result) {
|
| - if (result < 0) {
|
| - reject(result);
|
| - } else {
|
| - resolve(0);
|
| - }
|
| - });
|
| - }
|
| -
|
| - if (!that.receiveCallback_) {
|
| - // Socket is already paused.
|
| - doStartTls();
|
| - } else {
|
| - // Socket must be paused before staring TLS. This won't work correctly
|
| - // until crbug.com/403076 is fixed. Log a warning and try anyway.
|
| - console.warn(
|
| - "remoting.TcpSocket.secure() was called after some data was " +
|
| - "received on the socket. This won't work properly until " +
|
| - "crbug.com/403076 is fixed.");
|
| - chrome.sockets.tcp.setPaused(that.socketId_, true, function() {
|
| - if (that.destroyed_) {
|
| - return;
|
| - }
|
| - that.receiveCallback_ = null;
|
| - that.receiveErrorCallback_ = null;
|
| - doStartTls();
|
| - });
|
| - }
|
| - });
|
| -};
|
| -
|
| -})();
|
|
|