Mon 21 Jul 22:43:21 CEST 2025
This commit is contained in:
parent
81df1668a6
commit
bc9ce564af
74
js/ui/cordova/plugins/cordova-plugin-file/www/blackberry10/truncate.js
vendored
Normal file
74
js/ui/cordova/plugins/cordova-plugin-file/www/blackberry10/truncate.js
vendored
Normal file
|
@ -0,0 +1,74 @@
|
|||
/*
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* truncate
|
||||
*
|
||||
* IN:
|
||||
* args
|
||||
* 0 - URL of file to truncate
|
||||
* 1 - start position
|
||||
* OUT:
|
||||
* success - new length of file
|
||||
* fail - FileError
|
||||
*/
|
||||
|
||||
var resolve = cordova.require('cordova-plugin-file.resolveLocalFileSystemURIProxy'),
|
||||
requestAnimationFrame = cordova.require('cordova-plugin-file.bb10RequestAnimationFrame');
|
||||
|
||||
module.exports = function (success, fail, args) {
|
||||
var uri = args[0],
|
||||
length = args[1],
|
||||
onSuccess = function (data) {
|
||||
if (typeof success === 'function') {
|
||||
success(data.loaded);
|
||||
}
|
||||
},
|
||||
onFail = function (error) {
|
||||
if (typeof fail === 'function') {
|
||||
if (error && error.code) {
|
||||
fail(error.code);
|
||||
} else {
|
||||
fail(error);
|
||||
}
|
||||
}
|
||||
};
|
||||
resolve(function (fs) {
|
||||
requestAnimationFrame(function () {
|
||||
fs.nativeEntry.file(function (file) {
|
||||
var reader = new FileReader()._realReader;
|
||||
reader.onloadend = function () {
|
||||
var contents = new Uint8Array(this.result).subarray(0, length);
|
||||
blob = new Blob([contents]);
|
||||
window.requestAnimationFrame(function () {
|
||||
fs.nativeEntry.createWriter(function (fileWriter) {
|
||||
fileWriter.onwriteend = onSuccess;
|
||||
fileWriter.onerror = onFail;
|
||||
fileWriter.write(blob);
|
||||
}, onFail);
|
||||
});
|
||||
};
|
||||
reader.onerror = onFail;
|
||||
reader.readAsArrayBuffer(file);
|
||||
}, onFail);
|
||||
});
|
||||
}, onFail, [uri]);
|
||||
};
|
Loading…
Reference in New Issue
Block a user