Convert PDFDataRangeTransport
to an ES6 class
This commit is contained in:
parent
d21892933d
commit
5bb7f4b615
@ -515,13 +515,11 @@ var PDFDocumentLoadingTask = (function PDFDocumentLoadingTaskClosure() {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Abstract class to support range requests file loading.
|
* Abstract class to support range requests file loading.
|
||||||
* @class
|
|
||||||
* @alias PDFDataRangeTransport
|
|
||||||
* @param {number} length
|
* @param {number} length
|
||||||
* @param {Uint8Array} initialData
|
* @param {Uint8Array} initialData
|
||||||
*/
|
*/
|
||||||
var PDFDataRangeTransport = (function pdfDataRangeTransportClosure() {
|
class PDFDataRangeTransport {
|
||||||
function PDFDataRangeTransport(length, initialData) {
|
constructor(length, initialData) {
|
||||||
this.length = length;
|
this.length = length;
|
||||||
this.initialData = initialData;
|
this.initialData = initialData;
|
||||||
|
|
||||||
@ -530,63 +528,51 @@ var PDFDataRangeTransport = (function pdfDataRangeTransportClosure() {
|
|||||||
this._progressiveReadListeners = [];
|
this._progressiveReadListeners = [];
|
||||||
this._readyCapability = createPromiseCapability();
|
this._readyCapability = createPromiseCapability();
|
||||||
}
|
}
|
||||||
PDFDataRangeTransport.prototype =
|
|
||||||
/** @lends PDFDataRangeTransport.prototype */ {
|
|
||||||
addRangeListener:
|
|
||||||
function PDFDataRangeTransport_addRangeListener(listener) {
|
|
||||||
this._rangeListeners.push(listener);
|
|
||||||
},
|
|
||||||
|
|
||||||
addProgressListener:
|
addRangeListener(listener) {
|
||||||
function PDFDataRangeTransport_addProgressListener(listener) {
|
this._rangeListeners.push(listener);
|
||||||
this._progressListeners.push(listener);
|
}
|
||||||
},
|
|
||||||
|
|
||||||
addProgressiveReadListener:
|
addProgressListener(listener) {
|
||||||
function PDFDataRangeTransport_addProgressiveReadListener(listener) {
|
this._progressListeners.push(listener);
|
||||||
this._progressiveReadListeners.push(listener);
|
}
|
||||||
},
|
|
||||||
|
|
||||||
onDataRange: function PDFDataRangeTransport_onDataRange(begin, chunk) {
|
addProgressiveReadListener(listener) {
|
||||||
var listeners = this._rangeListeners;
|
this._progressiveReadListeners.push(listener);
|
||||||
for (var i = 0, n = listeners.length; i < n; ++i) {
|
}
|
||||||
listeners[i](begin, chunk);
|
|
||||||
|
onDataRange(begin, chunk) {
|
||||||
|
for (const listener of this._rangeListeners) {
|
||||||
|
listener(begin, chunk);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onDataProgress(loaded) {
|
||||||
|
this._readyCapability.promise.then(() => {
|
||||||
|
for (const listener of this._progressListeners) {
|
||||||
|
listener(loaded);
|
||||||
}
|
}
|
||||||
},
|
});
|
||||||
|
}
|
||||||
|
|
||||||
onDataProgress: function PDFDataRangeTransport_onDataProgress(loaded) {
|
onDataProgressiveRead(chunk) {
|
||||||
this._readyCapability.promise.then(() => {
|
this._readyCapability.promise.then(() => {
|
||||||
var listeners = this._progressListeners;
|
for (const listener of this._progressiveReadListeners) {
|
||||||
for (var i = 0, n = listeners.length; i < n; ++i) {
|
listener(chunk);
|
||||||
listeners[i](loaded);
|
}
|
||||||
}
|
});
|
||||||
});
|
}
|
||||||
},
|
|
||||||
|
|
||||||
onDataProgressiveRead:
|
transportReady() {
|
||||||
function PDFDataRangeTransport_onDataProgress(chunk) {
|
this._readyCapability.resolve();
|
||||||
this._readyCapability.promise.then(() => {
|
}
|
||||||
var listeners = this._progressiveReadListeners;
|
|
||||||
for (var i = 0, n = listeners.length; i < n; ++i) {
|
|
||||||
listeners[i](chunk);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
transportReady: function PDFDataRangeTransport_transportReady() {
|
requestDataRange(begin, end) {
|
||||||
this._readyCapability.resolve();
|
unreachable('Abstract method PDFDataRangeTransport.requestDataRange');
|
||||||
},
|
}
|
||||||
|
|
||||||
requestDataRange:
|
abort() {}
|
||||||
function PDFDataRangeTransport_requestDataRange(begin, end) {
|
}
|
||||||
unreachable('Abstract method PDFDataRangeTransport.requestDataRange');
|
|
||||||
},
|
|
||||||
|
|
||||||
abort: function PDFDataRangeTransport_abort() {
|
|
||||||
},
|
|
||||||
};
|
|
||||||
return PDFDataRangeTransport;
|
|
||||||
})();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Proxy to a PDFDocument in the worker thread. Also, contains commonly used
|
* Proxy to a PDFDocument in the worker thread. Also, contains commonly used
|
||||||
|
@ -198,20 +198,16 @@ class MozL10n {
|
|||||||
}
|
}
|
||||||
})();
|
})();
|
||||||
|
|
||||||
function FirefoxComDataRangeTransport(length, initialData) {
|
class FirefoxComDataRangeTransport extends PDFDataRangeTransport {
|
||||||
PDFDataRangeTransport.call(this, length, initialData);
|
requestDataRange(begin, end) {
|
||||||
|
FirefoxCom.request('requestDataRange', { begin, end, });
|
||||||
|
}
|
||||||
|
|
||||||
|
abort() {
|
||||||
|
// Sync call to ensure abort is really started.
|
||||||
|
FirefoxCom.requestSync('abortLoading', null);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
FirefoxComDataRangeTransport.prototype =
|
|
||||||
Object.create(PDFDataRangeTransport.prototype);
|
|
||||||
FirefoxComDataRangeTransport.prototype.requestDataRange =
|
|
||||||
function FirefoxComDataRangeTransport_requestDataRange(begin, end) {
|
|
||||||
FirefoxCom.request('requestDataRange', { begin, end, });
|
|
||||||
};
|
|
||||||
FirefoxComDataRangeTransport.prototype.abort =
|
|
||||||
function FirefoxComDataRangeTransport_abort() {
|
|
||||||
// Sync call to ensure abort is really started.
|
|
||||||
FirefoxCom.requestSync('abortLoading', null);
|
|
||||||
};
|
|
||||||
|
|
||||||
PDFViewerApplication.externalServices = {
|
PDFViewerApplication.externalServices = {
|
||||||
updateFindControlState(data) {
|
updateFindControlState(data) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user