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.
|
||||
* @class
|
||||
* @alias PDFDataRangeTransport
|
||||
* @param {number} length
|
||||
* @param {Uint8Array} initialData
|
||||
*/
|
||||
var PDFDataRangeTransport = (function pdfDataRangeTransportClosure() {
|
||||
function PDFDataRangeTransport(length, initialData) {
|
||||
class PDFDataRangeTransport {
|
||||
constructor(length, initialData) {
|
||||
this.length = length;
|
||||
this.initialData = initialData;
|
||||
|
||||
@ -530,63 +528,51 @@ var PDFDataRangeTransport = (function pdfDataRangeTransportClosure() {
|
||||
this._progressiveReadListeners = [];
|
||||
this._readyCapability = createPromiseCapability();
|
||||
}
|
||||
PDFDataRangeTransport.prototype =
|
||||
/** @lends PDFDataRangeTransport.prototype */ {
|
||||
addRangeListener:
|
||||
function PDFDataRangeTransport_addRangeListener(listener) {
|
||||
this._rangeListeners.push(listener);
|
||||
},
|
||||
|
||||
addProgressListener:
|
||||
function PDFDataRangeTransport_addProgressListener(listener) {
|
||||
this._progressListeners.push(listener);
|
||||
},
|
||||
addRangeListener(listener) {
|
||||
this._rangeListeners.push(listener);
|
||||
}
|
||||
|
||||
addProgressiveReadListener:
|
||||
function PDFDataRangeTransport_addProgressiveReadListener(listener) {
|
||||
this._progressiveReadListeners.push(listener);
|
||||
},
|
||||
addProgressListener(listener) {
|
||||
this._progressListeners.push(listener);
|
||||
}
|
||||
|
||||
onDataRange: function PDFDataRangeTransport_onDataRange(begin, chunk) {
|
||||
var listeners = this._rangeListeners;
|
||||
for (var i = 0, n = listeners.length; i < n; ++i) {
|
||||
listeners[i](begin, chunk);
|
||||
addProgressiveReadListener(listener) {
|
||||
this._progressiveReadListeners.push(listener);
|
||||
}
|
||||
|
||||
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) {
|
||||
this._readyCapability.promise.then(() => {
|
||||
var listeners = this._progressListeners;
|
||||
for (var i = 0, n = listeners.length; i < n; ++i) {
|
||||
listeners[i](loaded);
|
||||
}
|
||||
});
|
||||
},
|
||||
onDataProgressiveRead(chunk) {
|
||||
this._readyCapability.promise.then(() => {
|
||||
for (const listener of this._progressiveReadListeners) {
|
||||
listener(chunk);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
onDataProgressiveRead:
|
||||
function PDFDataRangeTransport_onDataProgress(chunk) {
|
||||
this._readyCapability.promise.then(() => {
|
||||
var listeners = this._progressiveReadListeners;
|
||||
for (var i = 0, n = listeners.length; i < n; ++i) {
|
||||
listeners[i](chunk);
|
||||
}
|
||||
});
|
||||
},
|
||||
transportReady() {
|
||||
this._readyCapability.resolve();
|
||||
}
|
||||
|
||||
transportReady: function PDFDataRangeTransport_transportReady() {
|
||||
this._readyCapability.resolve();
|
||||
},
|
||||
requestDataRange(begin, end) {
|
||||
unreachable('Abstract method PDFDataRangeTransport.requestDataRange');
|
||||
}
|
||||
|
||||
requestDataRange:
|
||||
function PDFDataRangeTransport_requestDataRange(begin, end) {
|
||||
unreachable('Abstract method PDFDataRangeTransport.requestDataRange');
|
||||
},
|
||||
|
||||
abort: function PDFDataRangeTransport_abort() {
|
||||
},
|
||||
};
|
||||
return PDFDataRangeTransport;
|
||||
})();
|
||||
abort() {}
|
||||
}
|
||||
|
||||
/**
|
||||
* Proxy to a PDFDocument in the worker thread. Also, contains commonly used
|
||||
|
@ -198,20 +198,16 @@ class MozL10n {
|
||||
}
|
||||
})();
|
||||
|
||||
function FirefoxComDataRangeTransport(length, initialData) {
|
||||
PDFDataRangeTransport.call(this, length, initialData);
|
||||
class FirefoxComDataRangeTransport extends PDFDataRangeTransport {
|
||||
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 = {
|
||||
updateFindControlState(data) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user