From 89c11ca9a21ccce56410ece90acd9eb9c4cd2725 Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Wed, 23 Apr 2014 16:33:42 +0200 Subject: [PATCH 1/2] Remove LegacyPromise in src/core/chunked_stream.js --- src/core/chunked_stream.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/core/chunked_stream.js b/src/core/chunked_stream.js index 268a2151a..69722fa64 100644 --- a/src/core/chunked_stream.js +++ b/src/core/chunked_stream.js @@ -15,7 +15,7 @@ * limitations under the License. */ /* globals assert, MissingDataException, isInt, NetworkManager, Promise, - isEmptyObj, LegacyPromise */ + isEmptyObj, createPromiseCapability */ 'use strict'; @@ -278,7 +278,8 @@ var ChunkedStreamManager = (function ChunkedStreamManagerClosure() { this.requestsByChunk = {}; this.callbacksByRequest = {}; - this.loadedStream = new LegacyPromise(); + this._loadedStreamCapability = createPromiseCapability(); + if (args.initialData) { this.setInitialData(args.initialData); } @@ -289,7 +290,7 @@ var ChunkedStreamManager = (function ChunkedStreamManagerClosure() { setInitialData: function ChunkedStreamManager_setInitialData(data) { this.stream.onReceiveInitialData(data); if (this.stream.allChunksLoaded()) { - this.loadedStream.resolve(this.stream); + this._loadedStreamCapability.resolve(this.stream); } else if (this.msgHandler) { this.msgHandler.send('DocProgress', { loaded: data.length, @@ -299,7 +300,7 @@ var ChunkedStreamManager = (function ChunkedStreamManagerClosure() { }, onLoadedStream: function ChunkedStreamManager_getLoadedStream() { - return this.loadedStream; + return this._loadedStreamCapability.promise; }, // Get all the chunks that are not yet loaded and groups them into @@ -307,7 +308,7 @@ var ChunkedStreamManager = (function ChunkedStreamManagerClosure() { requestAllChunks: function ChunkedStreamManager_requestAllChunks() { var missingChunks = this.stream.getMissingChunks(); this.requestChunks(missingChunks); - return this.loadedStream; + return this._loadedStreamCapability.promise; }, requestChunks: function ChunkedStreamManager_requestChunks(chunks, @@ -443,7 +444,7 @@ var ChunkedStreamManager = (function ChunkedStreamManagerClosure() { this.stream.onReceiveData(begin, chunk); if (this.stream.allChunksLoaded()) { - this.loadedStream.resolve(this.stream); + this._loadedStreamCapability.resolve(this.stream); } var loadedRequests = []; From b6ff4aea2b8fa12395852adf21545d9ea5d16210 Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Thu, 1 May 2014 18:20:55 +0200 Subject: [PATCH 2/2] Add onError function to ChunkedStreamManager --- src/core/chunked_stream.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/core/chunked_stream.js b/src/core/chunked_stream.js index 69722fa64..6c0c16db0 100644 --- a/src/core/chunked_stream.js +++ b/src/core/chunked_stream.js @@ -504,6 +504,10 @@ var ChunkedStreamManager = (function ChunkedStreamManagerClosure() { }); }, + onError: function ChunkedStreamManager_onError(err) { + this._loadedStreamCapability.reject(err); + }, + getBeginChunk: function ChunkedStreamManager_getBeginChunk(begin) { var chunk = Math.floor(begin / this.chunkSize); return chunk;