diff options
| author | Arjun Roychowdhury <pliablepixels@gmail.com> | 2015-10-31 08:21:38 -0400 |
|---|---|---|
| committer | Arjun Roychowdhury <pliablepixels@gmail.com> | 2015-10-31 08:21:38 -0400 |
| commit | 02811010cf62f1b21a06780d1e470d04bb24c50f (patch) | |
| tree | 0d933789068aac11c810ed4bb169d14ab16c43c6 /plugins/cordova-plugin-file/www | |
| parent | bca561c1b3989d62a1fba829e0380c6fbf36caf5 (diff) | |
removed unecessary files from git
Diffstat (limited to 'plugins/cordova-plugin-file/www')
54 files changed, 0 insertions, 4180 deletions
diff --git a/plugins/cordova-plugin-file/www/DirectoryEntry.js b/plugins/cordova-plugin-file/www/DirectoryEntry.js deleted file mode 100644 index 62f468ab..00000000 --- a/plugins/cordova-plugin-file/www/DirectoryEntry.js +++ /dev/null @@ -1,117 +0,0 @@ -/* - * - * 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. - * -*/ - -var argscheck = require('cordova/argscheck'), - utils = require('cordova/utils'), - exec = require('cordova/exec'), - Entry = require('./Entry'), - FileError = require('./FileError'), - DirectoryReader = require('./DirectoryReader'); - -/** - * An interface representing a directory on the file system. - * - * {boolean} isFile always false (readonly) - * {boolean} isDirectory always true (readonly) - * {DOMString} name of the directory, excluding the path leading to it (readonly) - * {DOMString} fullPath the absolute full path to the directory (readonly) - * {FileSystem} filesystem on which the directory resides (readonly) - */ -var DirectoryEntry = function(name, fullPath, fileSystem, nativeURL) { - - // add trailing slash if it is missing - if ((fullPath) && !/\/$/.test(fullPath)) { - fullPath += "/"; - } - // add trailing slash if it is missing - if (nativeURL && !/\/$/.test(nativeURL)) { - nativeURL += "/"; - } - DirectoryEntry.__super__.constructor.call(this, false, true, name, fullPath, fileSystem, nativeURL); -}; - -utils.extend(DirectoryEntry, Entry); - -/** - * Creates a new DirectoryReader to read entries from this directory - */ -DirectoryEntry.prototype.createReader = function() { - return new DirectoryReader(this.toInternalURL()); -}; - -/** - * Creates or looks up a directory - * - * @param {DOMString} path either a relative or absolute path from this directory in which to look up or create a directory - * @param {Flags} options to create or exclusively create the directory - * @param {Function} successCallback is called with the new entry - * @param {Function} errorCallback is called with a FileError - */ -DirectoryEntry.prototype.getDirectory = function(path, options, successCallback, errorCallback) { - argscheck.checkArgs('sOFF', 'DirectoryEntry.getDirectory', arguments); - var fs = this.filesystem; - var win = successCallback && function(result) { - var entry = new DirectoryEntry(result.name, result.fullPath, fs, result.nativeURL); - successCallback(entry); - }; - var fail = errorCallback && function(code) { - errorCallback(new FileError(code)); - }; - exec(win, fail, "File", "getDirectory", [this.toInternalURL(), path, options]); -}; - -/** - * Deletes a directory and all of it's contents - * - * @param {Function} successCallback is called with no parameters - * @param {Function} errorCallback is called with a FileError - */ -DirectoryEntry.prototype.removeRecursively = function(successCallback, errorCallback) { - argscheck.checkArgs('FF', 'DirectoryEntry.removeRecursively', arguments); - var fail = errorCallback && function(code) { - errorCallback(new FileError(code)); - }; - exec(successCallback, fail, "File", "removeRecursively", [this.toInternalURL()]); -}; - -/** - * Creates or looks up a file - * - * @param {DOMString} path either a relative or absolute path from this directory in which to look up or create a file - * @param {Flags} options to create or exclusively create the file - * @param {Function} successCallback is called with the new entry - * @param {Function} errorCallback is called with a FileError - */ -DirectoryEntry.prototype.getFile = function(path, options, successCallback, errorCallback) { - argscheck.checkArgs('sOFF', 'DirectoryEntry.getFile', arguments); - var fs = this.filesystem; - var win = successCallback && function(result) { - var FileEntry = require('./FileEntry'); - var entry = new FileEntry(result.name, result.fullPath, fs, result.nativeURL); - successCallback(entry); - }; - var fail = errorCallback && function(code) { - errorCallback(new FileError(code)); - }; - exec(win, fail, "File", "getFile", [this.toInternalURL(), path, options]); -}; - -module.exports = DirectoryEntry; diff --git a/plugins/cordova-plugin-file/www/DirectoryReader.js b/plugins/cordova-plugin-file/www/DirectoryReader.js deleted file mode 100644 index 2894c9a3..00000000 --- a/plugins/cordova-plugin-file/www/DirectoryReader.js +++ /dev/null @@ -1,73 +0,0 @@ -/* - * - * 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. - * -*/ - -var exec = require('cordova/exec'), - FileError = require('./FileError') ; - -/** - * An interface that lists the files and directories in a directory. - */ -function DirectoryReader(localURL) { - this.localURL = localURL || null; - this.hasReadEntries = false; -} - -/** - * Returns a list of entries from a directory. - * - * @param {Function} successCallback is called with a list of entries - * @param {Function} errorCallback is called with a FileError - */ -DirectoryReader.prototype.readEntries = function(successCallback, errorCallback) { - // If we've already read and passed on this directory's entries, return an empty list. - if (this.hasReadEntries) { - successCallback([]); - return; - } - var reader = this; - var win = typeof successCallback !== 'function' ? null : function(result) { - var retVal = []; - for (var i=0; i<result.length; i++) { - var entry = null; - if (result[i].isDirectory) { - entry = new (require('./DirectoryEntry'))(); - } - else if (result[i].isFile) { - entry = new (require('./FileEntry'))(); - } - entry.isDirectory = result[i].isDirectory; - entry.isFile = result[i].isFile; - entry.name = result[i].name; - entry.fullPath = result[i].fullPath; - entry.filesystem = new (require('./FileSystem'))(result[i].filesystemName); - entry.nativeURL = result[i].nativeURL; - retVal.push(entry); - } - reader.hasReadEntries = true; - successCallback(retVal); - }; - var fail = typeof errorCallback !== 'function' ? null : function(code) { - errorCallback(new FileError(code)); - }; - exec(win, fail, "File", "readEntries", [this.localURL]); -}; - -module.exports = DirectoryReader; diff --git a/plugins/cordova-plugin-file/www/Entry.js b/plugins/cordova-plugin-file/www/Entry.js deleted file mode 100644 index 9cdc8774..00000000 --- a/plugins/cordova-plugin-file/www/Entry.js +++ /dev/null @@ -1,260 +0,0 @@ -/* - * - * 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. - * -*/ - -var argscheck = require('cordova/argscheck'), - exec = require('cordova/exec'), - FileError = require('./FileError'), - Metadata = require('./Metadata'); - -/** - * Represents a file or directory on the local file system. - * - * @param isFile - * {boolean} true if Entry is a file (readonly) - * @param isDirectory - * {boolean} true if Entry is a directory (readonly) - * @param name - * {DOMString} name of the file or directory, excluding the path - * leading to it (readonly) - * @param fullPath - * {DOMString} the absolute full path to the file or directory - * (readonly) - * @param fileSystem - * {FileSystem} the filesystem on which this entry resides - * (readonly) - * @param nativeURL - * {DOMString} an alternate URL which can be used by native - * webview controls, for example media players. - * (optional, readonly) - */ -function Entry(isFile, isDirectory, name, fullPath, fileSystem, nativeURL) { - this.isFile = !!isFile; - this.isDirectory = !!isDirectory; - this.name = name || ''; - this.fullPath = fullPath || ''; - this.filesystem = fileSystem || null; - this.nativeURL = nativeURL || null; -} - -/** - * Look up the metadata of the entry. - * - * @param successCallback - * {Function} is called with a Metadata object - * @param errorCallback - * {Function} is called with a FileError - */ -Entry.prototype.getMetadata = function(successCallback, errorCallback) { - argscheck.checkArgs('FF', 'Entry.getMetadata', arguments); - var success = successCallback && function(entryMetadata) { - var metadata = new Metadata({ - size: entryMetadata.size, - modificationTime: entryMetadata.lastModifiedDate - }); - successCallback(metadata); - }; - var fail = errorCallback && function(code) { - errorCallback(new FileError(code)); - }; - exec(success, fail, "File", "getFileMetadata", [this.toInternalURL()]); -}; - -/** - * Set the metadata of the entry. - * - * @param successCallback - * {Function} is called with a Metadata object - * @param errorCallback - * {Function} is called with a FileError - * @param metadataObject - * {Object} keys and values to set - */ -Entry.prototype.setMetadata = function(successCallback, errorCallback, metadataObject) { - argscheck.checkArgs('FFO', 'Entry.setMetadata', arguments); - exec(successCallback, errorCallback, "File", "setMetadata", [this.toInternalURL(), metadataObject]); -}; - -/** - * Move a file or directory to a new location. - * - * @param parent - * {DirectoryEntry} the directory to which to move this entry - * @param newName - * {DOMString} new name of the entry, defaults to the current name - * @param successCallback - * {Function} called with the new DirectoryEntry object - * @param errorCallback - * {Function} called with a FileError - */ -Entry.prototype.moveTo = function(parent, newName, successCallback, errorCallback) { - argscheck.checkArgs('oSFF', 'Entry.moveTo', arguments); - var fail = errorCallback && function(code) { - errorCallback(new FileError(code)); - }; - var filesystem = this.filesystem, - srcURL = this.toInternalURL(), - // entry name - name = newName || this.name, - success = function(entry) { - if (entry) { - if (successCallback) { - // create appropriate Entry object - var newFSName = entry.filesystemName || (entry.filesystem && entry.filesystem.name); - var fs = newFSName ? new FileSystem(newFSName, { name: "", fullPath: "/" }) : new FileSystem(parent.filesystem.name, { name: "", fullPath: "/" }); - var result = (entry.isDirectory) ? new (require('./DirectoryEntry'))(entry.name, entry.fullPath, fs, entry.nativeURL) : new (require('cordova-plugin-file.FileEntry'))(entry.name, entry.fullPath, fs, entry.nativeURL); - successCallback(result); - } - } - else { - // no Entry object returned - fail && fail(FileError.NOT_FOUND_ERR); - } - }; - - // copy - exec(success, fail, "File", "moveTo", [srcURL, parent.toInternalURL(), name]); -}; - -/** - * Copy a directory to a different location. - * - * @param parent - * {DirectoryEntry} the directory to which to copy the entry - * @param newName - * {DOMString} new name of the entry, defaults to the current name - * @param successCallback - * {Function} called with the new Entry object - * @param errorCallback - * {Function} called with a FileError - */ -Entry.prototype.copyTo = function(parent, newName, successCallback, errorCallback) { - argscheck.checkArgs('oSFF', 'Entry.copyTo', arguments); - var fail = errorCallback && function(code) { - errorCallback(new FileError(code)); - }; - var filesystem = this.filesystem, - srcURL = this.toInternalURL(), - // entry name - name = newName || this.name, - // success callback - success = function(entry) { - if (entry) { - if (successCallback) { - // create appropriate Entry object - var newFSName = entry.filesystemName || (entry.filesystem && entry.filesystem.name); - var fs = newFSName ? new FileSystem(newFSName, { name: "", fullPath: "/" }) : new FileSystem(parent.filesystem.name, { name: "", fullPath: "/" }); - var result = (entry.isDirectory) ? new (require('./DirectoryEntry'))(entry.name, entry.fullPath, fs, entry.nativeURL) : new (require('cordova-plugin-file.FileEntry'))(entry.name, entry.fullPath, fs, entry.nativeURL); - successCallback(result); - } - } - else { - // no Entry object returned - fail && fail(FileError.NOT_FOUND_ERR); - } - }; - - // copy - exec(success, fail, "File", "copyTo", [srcURL, parent.toInternalURL(), name]); -}; - -/** - * Return a URL that can be passed across the bridge to identify this entry. - */ -Entry.prototype.toInternalURL = function() { - if (this.filesystem && this.filesystem.__format__) { - return this.filesystem.__format__(this.fullPath, this.nativeURL); - } -}; - -/** - * Return a URL that can be used to identify this entry. - * Use a URL that can be used to as the src attribute of a <video> or - * <audio> tag. If that is not possible, construct a cdvfile:// URL. - */ -Entry.prototype.toURL = function() { - if (this.nativeURL) { - return this.nativeURL; - } - // fullPath attribute may contain the full URL in the case that - // toInternalURL fails. - return this.toInternalURL() || "file://localhost" + this.fullPath; -}; - -/** - * Backwards-compatibility: In v1.0.0 - 1.0.2, .toURL would only return a - * cdvfile:// URL, and this method was necessary to obtain URLs usable by the - * webview. - * See CB-6051, CB-6106, CB-6117, CB-6152, CB-6199, CB-6201, CB-6243, CB-6249, - * and CB-6300. - */ -Entry.prototype.toNativeURL = function() { - console.log("DEPRECATED: Update your code to use 'toURL'"); - return this.toURL(); -}; - -/** - * Returns a URI that can be used to identify this entry. - * - * @param {DOMString} mimeType for a FileEntry, the mime type to be used to interpret the file, when loaded through this URI. - * @return uri - */ -Entry.prototype.toURI = function(mimeType) { - console.log("DEPRECATED: Update your code to use 'toURL'"); - return this.toURL(); -}; - -/** - * Remove a file or directory. It is an error to attempt to delete a - * directory that is not empty. It is an error to attempt to delete a - * root directory of a file system. - * - * @param successCallback {Function} called with no parameters - * @param errorCallback {Function} called with a FileError - */ -Entry.prototype.remove = function(successCallback, errorCallback) { - argscheck.checkArgs('FF', 'Entry.remove', arguments); - var fail = errorCallback && function(code) { - errorCallback(new FileError(code)); - }; - exec(successCallback, fail, "File", "remove", [this.toInternalURL()]); -}; - -/** - * Look up the parent DirectoryEntry of this entry. - * - * @param successCallback {Function} called with the parent DirectoryEntry object - * @param errorCallback {Function} called with a FileError - */ -Entry.prototype.getParent = function(successCallback, errorCallback) { - argscheck.checkArgs('FF', 'Entry.getParent', arguments); - var fs = this.filesystem; - var win = successCallback && function(result) { - var DirectoryEntry = require('./DirectoryEntry'); - var entry = new DirectoryEntry(result.name, result.fullPath, fs, result.nativeURL); - successCallback(entry); - }; - var fail = errorCallback && function(code) { - errorCallback(new FileError(code)); - }; - exec(win, fail, "File", "getParent", [this.toInternalURL()]); -}; - -module.exports = Entry; diff --git a/plugins/cordova-plugin-file/www/File.js b/plugins/cordova-plugin-file/www/File.js deleted file mode 100644 index 82ff7a78..00000000 --- a/plugins/cordova-plugin-file/www/File.js +++ /dev/null @@ -1,79 +0,0 @@ -/* - * - * 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. - * -*/ - -/** - * Constructor. - * name {DOMString} name of the file, without path information - * fullPath {DOMString} the full path of the file, including the name - * type {DOMString} mime type - * lastModifiedDate {Date} last modified date - * size {Number} size of the file in bytes - */ - -var File = function(name, localURL, type, lastModifiedDate, size){ - this.name = name || ''; - this.localURL = localURL || null; - this.type = type || null; - this.lastModified = lastModifiedDate || null; - // For backwards compatibility, store the timestamp in lastModifiedDate as well - this.lastModifiedDate = lastModifiedDate || null; - this.size = size || 0; - - // These store the absolute start and end for slicing the file. - this.start = 0; - this.end = this.size; -}; - -/** - * Returns a "slice" of the file. Since Cordova Files don't contain the actual - * content, this really returns a File with adjusted start and end. - * Slices of slices are supported. - * start {Number} The index at which to start the slice (inclusive). - * end {Number} The index at which to end the slice (exclusive). - */ -File.prototype.slice = function(start, end) { - var size = this.end - this.start; - var newStart = 0; - var newEnd = size; - if (arguments.length) { - if (start < 0) { - newStart = Math.max(size + start, 0); - } else { - newStart = Math.min(size, start); - } - } - - if (arguments.length >= 2) { - if (end < 0) { - newEnd = Math.max(size + end, 0); - } else { - newEnd = Math.min(end, size); - } - } - - var newFile = new File(this.name, this.localURL, this.type, this.lastModified, this.size); - newFile.start = this.start + newStart; - newFile.end = this.start + newEnd; - return newFile; -}; - - -module.exports = File; diff --git a/plugins/cordova-plugin-file/www/FileEntry.js b/plugins/cordova-plugin-file/www/FileEntry.js deleted file mode 100644 index 59a9dc37..00000000 --- a/plugins/cordova-plugin-file/www/FileEntry.js +++ /dev/null @@ -1,81 +0,0 @@ -/* - * - * 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. - * -*/ - -var utils = require('cordova/utils'), - exec = require('cordova/exec'), - Entry = require('./Entry'), - FileWriter = require('./FileWriter'), - File = require('./File'), - FileError = require('./FileError'); - -/** - * An interface representing a file on the file system. - * - * {boolean} isFile always true (readonly) - * {boolean} isDirectory always false (readonly) - * {DOMString} name of the file, excluding the path leading to it (readonly) - * {DOMString} fullPath the absolute full path to the file (readonly) - * {FileSystem} filesystem on which the file resides (readonly) - */ -var FileEntry = function(name, fullPath, fileSystem, nativeURL) { - FileEntry.__super__.constructor.apply(this, [true, false, name, fullPath, fileSystem, nativeURL]); -}; - -utils.extend(FileEntry, Entry); - -/** - * Creates a new FileWriter associated with the file that this FileEntry represents. - * - * @param {Function} successCallback is called with the new FileWriter - * @param {Function} errorCallback is called with a FileError - */ -FileEntry.prototype.createWriter = function(successCallback, errorCallback) { - this.file(function(filePointer) { - var writer = new FileWriter(filePointer); - - if (writer.localURL === null || writer.localURL === "") { - errorCallback && errorCallback(new FileError(FileError.INVALID_STATE_ERR)); - } else { - successCallback && successCallback(writer); - } - }, errorCallback); -}; - -/** - * Returns a File that represents the current state of the file that this FileEntry represents. - * - * @param {Function} successCallback is called with the new File object - * @param {Function} errorCallback is called with a FileError - */ -FileEntry.prototype.file = function(successCallback, errorCallback) { - var localURL = this.toInternalURL(); - var win = successCallback && function(f) { - var file = new File(f.name, localURL, f.type, f.lastModifiedDate, f.size); - successCallback(file); - }; - var fail = errorCallback && function(code) { - errorCallback(new FileError(code)); - }; - exec(win, fail, "File", "getFileMetadata", [localURL]); -}; - - -module.exports = FileEntry; diff --git a/plugins/cordova-plugin-file/www/FileError.js b/plugins/cordova-plugin-file/www/FileError.js deleted file mode 100644 index 6507921f..00000000 --- a/plugins/cordova-plugin-file/www/FileError.js +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * 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. - * -*/ - -/** - * FileError - */ -function FileError(error) { - this.code = error || null; -} - -// File error codes -// Found in DOMException -FileError.NOT_FOUND_ERR = 1; -FileError.SECURITY_ERR = 2; -FileError.ABORT_ERR = 3; - -// Added by File API specification -FileError.NOT_READABLE_ERR = 4; -FileError.ENCODING_ERR = 5; -FileError.NO_MODIFICATION_ALLOWED_ERR = 6; -FileError.INVALID_STATE_ERR = 7; -FileError.SYNTAX_ERR = 8; -FileError.INVALID_MODIFICATION_ERR = 9; -FileError.QUOTA_EXCEEDED_ERR = 10; -FileError.TYPE_MISMATCH_ERR = 11; -FileError.PATH_EXISTS_ERR = 12; - -module.exports = FileError; diff --git a/plugins/cordova-plugin-file/www/FileReader.js b/plugins/cordova-plugin-file/www/FileReader.js deleted file mode 100644 index 5c523aa9..00000000 --- a/plugins/cordova-plugin-file/www/FileReader.js +++ /dev/null @@ -1,390 +0,0 @@ -/* - * - * 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. - * -*/ - -var exec = require('cordova/exec'), - modulemapper = require('cordova/modulemapper'), - utils = require('cordova/utils'), - File = require('./File'), - FileError = require('./FileError'), - ProgressEvent = require('./ProgressEvent'), - origFileReader = modulemapper.getOriginalSymbol(window, 'FileReader'); - -/** - * This class reads the mobile device file system. - * - * For Android: - * The root directory is the root of the file system. - * To read from the SD card, the file name is "sdcard/my_file.txt" - * @constructor - */ -var FileReader = function() { - this._readyState = 0; - this._error = null; - this._result = null; - this._localURL = ''; - this._realReader = origFileReader ? new origFileReader() : {}; -}; - -// States -FileReader.EMPTY = 0; -FileReader.LOADING = 1; -FileReader.DONE = 2; - -utils.defineGetter(FileReader.prototype, 'readyState', function() { - return this._localURL ? this._readyState : this._realReader.readyState; -}); - -utils.defineGetter(FileReader.prototype, 'error', function() { - return this._localURL ? this._error: this._realReader.error; -}); - -utils.defineGetter(FileReader.prototype, 'result', function() { - return this._localURL ? this._result: this._realReader.result; -}); - -function defineEvent(eventName) { - utils.defineGetterSetter(FileReader.prototype, eventName, function() { - return this._realReader[eventName] || null; - }, function(value) { - this._realReader[eventName] = value; - }); -} -defineEvent('onloadstart'); // When the read starts. -defineEvent('onprogress'); // While reading (and decoding) file or fileBlob data, and reporting partial file data (progress.loaded/progress.total) -defineEvent('onload'); // When the read has successfully completed. -defineEvent('onerror'); // When the read has failed (see errors). -defineEvent('onloadend'); // When the request has completed (either in success or failure). -defineEvent('onabort'); // When the read has been aborted. For instance, by invoking the abort() method. - -function initRead(reader, file) { - // Already loading something - if (reader.readyState == FileReader.LOADING) { - throw new FileError(FileError.INVALID_STATE_ERR); - } - - reader._result = null; - reader._error = null; - reader._readyState = FileReader.LOADING; - - if (typeof file.localURL == 'string') { - reader._localURL = file.localURL; - } else { - reader._localURL = ''; - return true; - } - - reader.onloadstart && reader.onloadstart(new ProgressEvent("loadstart", {target:reader})); -} - -/** - * Abort reading file. - */ -FileReader.prototype.abort = function() { - if (origFileReader && !this._localURL) { - return this._realReader.abort(); - } - this._result = null; - - if (this._readyState == FileReader.DONE || this._readyState == FileReader.EMPTY) { - return; - } - - this._readyState = FileReader.DONE; - - // If abort callback - if (typeof this.onabort === 'function') { - this.onabort(new ProgressEvent('abort', {target:this})); - } - // If load end callback - if (typeof this.onloadend === 'function') { - this.onloadend(new ProgressEvent('loadend', {target:this})); - } -}; - -/** - * Read text file. - * - * @param file {File} File object containing file properties - * @param encoding [Optional] (see http://www.iana.org/assignments/character-sets) - */ -FileReader.prototype.readAsText = function(file, encoding) { - if (initRead(this, file)) { - return this._realReader.readAsText(file, encoding); - } - - // Default encoding is UTF-8 - var enc = encoding ? encoding : "UTF-8"; - var me = this; - var execArgs = [this._localURL, enc, file.start, file.end]; - - // Read file - exec( - // Success callback - function(r) { - // If DONE (cancelled), then don't do anything - if (me._readyState === FileReader.DONE) { - return; - } - - // DONE state - me._readyState = FileReader.DONE; - - // Save result - me._result = r; - - // If onload callback - if (typeof me.onload === "function") { - me.onload(new ProgressEvent("load", {target:me})); - } - - // If onloadend callback - if (typeof me.onloadend === "function") { - me.onloadend(new ProgressEvent("loadend", {target:me})); - } - }, - // Error callback - function(e) { - // If DONE (cancelled), then don't do anything - if (me._readyState === FileReader.DONE) { - return; - } - - // DONE state - me._readyState = FileReader.DONE; - - // null result - me._result = null; - - // Save error - me._error = new FileError(e); - - // If onerror callback - if (typeof me.onerror === "function") { - me.onerror(new ProgressEvent("error", {target:me})); - } - - // If onloadend callback - if (typeof me.onloadend === "function") { - me.onloadend(new ProgressEvent("loadend", {target:me})); - } - }, "File", "readAsText", execArgs); -}; - - -/** - * Read file and return data as a base64 encoded data url. - * A data url is of the form: - * data:[<mediatype>][;base64],<data> - * - * @param file {File} File object containing file properties - */ -FileReader.prototype.readAsDataURL = function(file) { - if (initRead(this, file)) { - return this._realReader.readAsDataURL(file); - } - - var me = this; - var execArgs = [this._localURL, file.start, file.end]; - - // Read file - exec( - // Success callback - function(r) { - // If DONE (cancelled), then don't do anything - if (me._readyState === FileReader.DONE) { - return; - } - - // DONE state - me._readyState = FileReader.DONE; - - // Save result - me._result = r; - - // If onload callback - if (typeof me.onload === "function") { - me.onload(new ProgressEvent("load", {target:me})); - } - - // If onloadend callback - if (typeof me.onloadend === "function") { - me.onloadend(new ProgressEvent("loadend", {target:me})); - } - }, - // Error callback - function(e) { - // If DONE (cancelled), then don't do anything - if (me._readyState === FileReader.DONE) { - return; - } - - // DONE state - me._readyState = FileReader.DONE; - - me._result = null; - - // Save error - me._error = new FileError(e); - - // If onerror callback - if (typeof me.onerror === "function") { - me.onerror(new ProgressEvent("error", {target:me})); - } - - // If onloadend callback - if (typeof me.onloadend === "function") { - me.onloadend(new ProgressEvent("loadend", {target:me})); - } - }, "File", "readAsDataURL", execArgs); -}; - -/** - * Read file and return data as a binary data. - * - * @param file {File} File object containing file properties - */ -FileReader.prototype.readAsBinaryString = function(file) { - if (initRead(this, file)) { - return this._realReader.readAsBinaryString(file); - } - - var me = this; - var execArgs = [this._localURL, file.start, file.end]; - - // Read file - exec( - // Success callback - function(r) { - // If DONE (cancelled), then don't do anything - if (me._readyState === FileReader.DONE) { - return; - } - - // DONE state - me._readyState = FileReader.DONE; - - me._result = r; - - // If onload callback - if (typeof me.onload === "function") { - me.onload(new ProgressEvent("load", {target:me})); - } - - // If onloadend callback - if (typeof me.onloadend === "function") { - me.onloadend(new ProgressEvent("loadend", {target:me})); - } - }, - // Error callback - function(e) { - // If DONE (cancelled), then don't do anything - if (me._readyState === FileReader.DONE) { - return; - } - - // DONE state - me._readyState = FileReader.DONE; - - me._result = null; - - // Save error - me._error = new FileError(e); - - // If onerror callback - if (typeof me.onerror === "function") { - me.onerror(new ProgressEvent("error", {target:me})); - } - - // If onloadend callback - if (typeof me.onloadend === "function") { - me.onloadend(new ProgressEvent("loadend", {target:me})); - } - }, "File", "readAsBinaryString", execArgs); -}; - -/** - * Read file and return data as a binary data. - * - * @param file {File} File object containing file properties - */ -FileReader.prototype.readAsArrayBuffer = function(file) { - if (initRead(this, file)) { - return this._realReader.readAsArrayBuffer(file); - } - - var me = this; - var execArgs = [this._localURL, file.start, file.end]; - - // Read file - exec( - // Success callback - function(r) { - // If DONE (cancelled), then don't do anything - if (me._readyState === FileReader.DONE) { - return; - } - - // DONE state - me._readyState = FileReader.DONE; - - if (r instanceof Array) { - r = new Uint8Array(r).buffer; - } - me._result = r; - - // If onload callback - if (typeof me.onload === "function") { - me.onload(new ProgressEvent("load", {target:me})); - } - - // If onloadend callback - if (typeof me.onloadend === "function") { - me.onloadend(new ProgressEvent("loadend", {target:me})); - } - }, - // Error callback - function(e) { - // If DONE (cancelled), then don't do anything - if (me._readyState === FileReader.DONE) { - return; - } - - // DONE state - me._readyState = FileReader.DONE; - - me._result = null; - - // Save error - me._error = new FileError(e); - - // If onerror callback - if (typeof me.onerror === "function") { - me.onerror(new ProgressEvent("error", {target:me})); - } - - // If onloadend callback - if (typeof me.onloadend === "function") { - me.onloadend(new ProgressEvent("loadend", {target:me})); - } - }, "File", "readAsArrayBuffer", execArgs); -}; - -module.exports = FileReader; diff --git a/plugins/cordova-plugin-file/www/FileSystem.js b/plugins/cordova-plugin-file/www/FileSystem.js deleted file mode 100644 index 36bffbb0..00000000 --- a/plugins/cordova-plugin-file/www/FileSystem.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * - * 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. - * -*/ - -var DirectoryEntry = require('./DirectoryEntry'); - -/** - * An interface representing a file system - * - * @constructor - * {DOMString} name the unique name of the file system (readonly) - * {DirectoryEntry} root directory of the file system (readonly) - */ -var FileSystem = function(name, root) { - this.name = name; - if (root) { - this.root = new DirectoryEntry(root.name, root.fullPath, this, root.nativeURL); - } else { - this.root = new DirectoryEntry(this.name, '/', this); - } -}; - -FileSystem.prototype.__format__ = function(fullPath, nativeUrl) { - return fullPath; -}; - -FileSystem.prototype.toJSON = function() { - return "<FileSystem: " + this.name + ">"; -}; - -module.exports = FileSystem; diff --git a/plugins/cordova-plugin-file/www/FileUploadOptions.js b/plugins/cordova-plugin-file/www/FileUploadOptions.js deleted file mode 100644 index b2977de7..00000000 --- a/plugins/cordova-plugin-file/www/FileUploadOptions.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * - * 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. - * -*/ - -/** - * Options to customize the HTTP request used to upload files. - * @constructor - * @param fileKey {String} Name of file request parameter. - * @param fileName {String} Filename to be used by the server. Defaults to image.jpg. - * @param mimeType {String} Mimetype of the uploaded file. Defaults to image/jpeg. - * @param params {Object} Object with key: value params to send to the server. - * @param headers {Object} Keys are header names, values are header values. Multiple - * headers of the same name are not supported. - */ -var FileUploadOptions = function(fileKey, fileName, mimeType, params, headers, httpMethod) { - this.fileKey = fileKey || null; - this.fileName = fileName || null; - this.mimeType = mimeType || null; - this.params = params || null; - this.headers = headers || null; - this.httpMethod = httpMethod || null; -}; - -module.exports = FileUploadOptions; diff --git a/plugins/cordova-plugin-file/www/FileUploadResult.js b/plugins/cordova-plugin-file/www/FileUploadResult.js deleted file mode 100644 index 6d74bf23..00000000 --- a/plugins/cordova-plugin-file/www/FileUploadResult.js +++ /dev/null @@ -1,30 +0,0 @@ -/* - * - * 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. - * -*/ - -/** - * FileUploadResult - * @constructor - */ -module.exports = function FileUploadResult(size, code, content) { - this.bytesSent = size; - this.responseCode = code; - this.response = content; - }; diff --git a/plugins/cordova-plugin-file/www/FileWriter.js b/plugins/cordova-plugin-file/www/FileWriter.js deleted file mode 100644 index f5e0f564..00000000 --- a/plugins/cordova-plugin-file/www/FileWriter.js +++ /dev/null @@ -1,302 +0,0 @@ -/* - * - * 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. - * -*/ - -var exec = require('cordova/exec'), - FileError = require('./FileError'), - ProgressEvent = require('./ProgressEvent'); - -/** - * This class writes to the mobile device file system. - * - * For Android: - * The root directory is the root of the file system. - * To write to the SD card, the file name is "sdcard/my_file.txt" - * - * @constructor - * @param file {File} File object containing file properties - * @param append if true write to the end of the file, otherwise overwrite the file - */ -var FileWriter = function(file) { - this.fileName = ""; - this.length = 0; - if (file) { - this.localURL = file.localURL || file; - this.length = file.size || 0; - } - // default is to write at the beginning of the file - this.position = 0; - - this.readyState = 0; // EMPTY - - this.result = null; - - // Error - this.error = null; - - // Event handlers - this.onwritestart = null; // When writing starts - this.onprogress = null; // While writing the file, and reporting partial file data - this.onwrite = null; // When the write has successfully completed. - this.onwriteend = null; // When the request has completed (either in success or failure). - this.onabort = null; // When the write has been aborted. For instance, by invoking the abort() method. - this.onerror = null; // When the write has failed (see errors). -}; - -// States -FileWriter.INIT = 0; -FileWriter.WRITING = 1; -FileWriter.DONE = 2; - -/** - * Abort writing file. - */ -FileWriter.prototype.abort = function() { - // check for invalid state - if (this.readyState === FileWriter.DONE || this.readyState === FileWriter.INIT) { - throw new FileError(FileError.INVALID_STATE_ERR); - } - - // set error - this.error = new FileError(FileError.ABORT_ERR); - - this.readyState = FileWriter.DONE; - - // If abort callback - if (typeof this.onabort === "function") { - this.onabort(new ProgressEvent("abort", {"target":this})); - } - - // If write end callback - if (typeof this.onwriteend === "function") { - this.onwriteend(new ProgressEvent("writeend", {"target":this})); - } -}; - -/** - * Writes data to the file - * - * @param data text or blob to be written - */ -FileWriter.prototype.write = function(data) { - - var that=this; - var supportsBinary = (typeof window.Blob !== 'undefined' && typeof window.ArrayBuffer !== 'undefined'); - var isProxySupportBlobNatively = (cordova.platformId === "windows8" || cordova.platformId === "windows"); - var isBinary; - - // Check to see if the incoming data is a blob - if (data instanceof File || (!isProxySupportBlobNatively && supportsBinary && data instanceof Blob)) { - var fileReader = new FileReader(); - fileReader.onload = function() { - // Call this method again, with the arraybuffer as argument - FileWriter.prototype.write.call(that, this.result); - }; - if (supportsBinary) { - fileReader.readAsArrayBuffer(data); - } else { - fileReader.readAsText(data); - } - return; - } - - // Mark data type for safer transport over the binary bridge - isBinary = supportsBinary && (data instanceof ArrayBuffer); - if (isBinary && cordova.platformId === "windowsphone") { - // create a plain array, using the keys from the Uint8Array view so that we can serialize it - data = Array.apply(null, new Uint8Array(data)); - } - - // Throw an exception if we are already writing a file - if (this.readyState === FileWriter.WRITING) { - throw new FileError(FileError.INVALID_STATE_ERR); - } - - // WRITING state - this.readyState = FileWriter.WRITING; - - var me = this; - - // If onwritestart callback - if (typeof me.onwritestart === "function") { - me.onwritestart(new ProgressEvent("writestart", {"target":me})); - } - - // Write file - exec( - // Success callback - function(r) { - // If DONE (cancelled), then don't do anything - if (me.readyState === FileWriter.DONE) { - return; - } - - // position always increases by bytes written because file would be extended - me.position += r; - // The length of the file is now where we are done writing. - - me.length = me.position; - - // DONE state - me.readyState = FileWriter.DONE; - - // If onwrite callback - if (typeof me.onwrite === "function") { - me.onwrite(new ProgressEvent("write", {"target":me})); - } - - // If onwriteend callback - if (typeof me.onwriteend === "function") { - me.onwriteend(new ProgressEvent("writeend", {"target":me})); - } - }, - // Error callback - function(e) { - // If DONE (cancelled), then don't do anything - if (me.readyState === FileWriter.DONE) { - return; - } - - // DONE state - me.readyState = FileWriter.DONE; - - // Save error - me.error = new FileError(e); - - // If onerror callback - if (typeof me.onerror === "function") { - me.onerror(new ProgressEvent("error", {"target":me})); - } - - // If onwriteend callback - if (typeof me.onwriteend === "function") { - me.onwriteend(new ProgressEvent("writeend", {"target":me})); - } - }, "File", "write", [this.localURL, data, this.position, isBinary]); -}; - -/** - * Moves the file pointer to the location specified. - * - * If the offset is a negative number the position of the file - * pointer is rewound. If the offset is greater than the file - * size the position is set to the end of the file. - * - * @param offset is the location to move the file pointer to. - */ -FileWriter.prototype.seek = function(offset) { - // Throw an exception if we are already writing a file - if (this.readyState === FileWriter.WRITING) { - throw new FileError(FileError.INVALID_STATE_ERR); - } - - if (!offset && offset !== 0) { - return; - } - - // See back from end of file. - if (offset < 0) { - this.position = Math.max(offset + this.length, 0); - } - // Offset is bigger than file size so set position - // to the end of the file. - else if (offset > this.length) { - this.position = this.length; - } - // Offset is between 0 and file size so set the position - // to start writing. - else { - this.position = offset; - } -}; - -/** - * Truncates the file to the size specified. - * - * @param size to chop the file at. - */ -FileWriter.prototype.truncate = function(size) { - // Throw an exception if we are already writing a file - if (this.readyState === FileWriter.WRITING) { - throw new FileError(FileError.INVALID_STATE_ERR); - } - - // WRITING state - this.readyState = FileWriter.WRITING; - - var me = this; - - // If onwritestart callback - if (typeof me.onwritestart === "function") { - me.onwritestart(new ProgressEvent("writestart", {"target":this})); - } - - // Write file - exec( - // Success callback - function(r) { - // If DONE (cancelled), then don't do anything - if (me.readyState === FileWriter.DONE) { - return; - } - - // DONE state - me.readyState = FileWriter.DONE; - - // Update the length of the file - me.length = r; - me.position = Math.min(me.position, r); - - // If onwrite callback - if (typeof me.onwrite === "function") { - me.onwrite(new ProgressEvent("write", {"target":me})); - } - - // If onwriteend callback - if (typeof me.onwriteend === "function") { - me.onwriteend(new ProgressEvent("writeend", {"target":me})); - } - }, - // Error callback - function(e) { - // If DONE (cancelled), then don't do anything - if (me.readyState === FileWriter.DONE) { - return; - } - - // DONE state - me.readyState = FileWriter.DONE; - - // Save error - me.error = new FileError(e); - - // If onerror callback - if (typeof me.onerror === "function") { - me.onerror(new ProgressEvent("error", {"target":me})); - } - - // If onwriteend callback - if (typeof me.onwriteend === "function") { - me.onwriteend(new ProgressEvent("writeend", {"target":me})); - } - }, "File", "truncate", [this.localURL, size]); -}; - -module.exports = FileWriter; diff --git a/plugins/cordova-plugin-file/www/Flags.js b/plugins/cordova-plugin-file/www/Flags.js deleted file mode 100644 index a9ae6da3..00000000 --- a/plugins/cordova-plugin-file/www/Flags.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * - * 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. - * -*/ - -/** - * Supplies arguments to methods that lookup or create files and directories. - * - * @param create - * {boolean} file or directory if it doesn't exist - * @param exclusive - * {boolean} used with create; if true the command will fail if - * target path exists - */ -function Flags(create, exclusive) { - this.create = create || false; - this.exclusive = exclusive || false; -} - -module.exports = Flags; diff --git a/plugins/cordova-plugin-file/www/LocalFileSystem.js b/plugins/cordova-plugin-file/www/LocalFileSystem.js deleted file mode 100644 index 1e8f2eeb..00000000 --- a/plugins/cordova-plugin-file/www/LocalFileSystem.js +++ /dev/null @@ -1,23 +0,0 @@ -/* - * - * 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. - * -*/ - -exports.TEMPORARY = 0; -exports.PERSISTENT = 1; diff --git a/plugins/cordova-plugin-file/www/Metadata.js b/plugins/cordova-plugin-file/www/Metadata.js deleted file mode 100644 index f95c44c7..00000000 --- a/plugins/cordova-plugin-file/www/Metadata.js +++ /dev/null @@ -1,40 +0,0 @@ -/* - * - * 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. - * -*/ - -/** - * Information about the state of the file or directory - * - * {Date} modificationTime (readonly) - */ -var Metadata = function(metadata) { - if (typeof metadata == "object") { - this.modificationTime = new Date(metadata.modificationTime); - this.size = metadata.size || 0; - } else if (typeof metadata == "undefined") { - this.modificationTime = null; - this.size = 0; - } else { - /* Backwards compatiblity with platforms that only return a timestamp */ - this.modificationTime = new Date(metadata); - } -}; - -module.exports = Metadata; diff --git a/plugins/cordova-plugin-file/www/ProgressEvent.js b/plugins/cordova-plugin-file/www/ProgressEvent.js deleted file mode 100644 index f176f808..00000000 --- a/plugins/cordova-plugin-file/www/ProgressEvent.js +++ /dev/null @@ -1,67 +0,0 @@ -/* - * - * 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. - * -*/ - -// If ProgressEvent exists in global context, use it already, otherwise use our own polyfill -// Feature test: See if we can instantiate a native ProgressEvent; -// if so, use that approach, -// otherwise fill-in with our own implementation. -// -// NOTE: right now we always fill in with our own. Down the road would be nice if we can use whatever is native in the webview. -var ProgressEvent = (function() { - /* - var createEvent = function(data) { - var event = document.createEvent('Events'); - event.initEvent('ProgressEvent', false, false); - if (data) { - for (var i in data) { - if (data.hasOwnProperty(i)) { - event[i] = data[i]; - } - } - if (data.target) { - // TODO: cannot call <some_custom_object>.dispatchEvent - // need to first figure out how to implement EventTarget - } - } - return event; - }; - try { - var ev = createEvent({type:"abort",target:document}); - return function ProgressEvent(type, data) { - data.type = type; - return createEvent(data); - }; - } catch(e){ - */ - return function ProgressEvent(type, dict) { - this.type = type; - this.bubbles = false; - this.cancelBubble = false; - this.cancelable = false; - this.lengthComputable = false; - this.loaded = dict && dict.loaded ? dict.loaded : 0; - this.total = dict && dict.total ? dict.total : 0; - this.target = dict && dict.target ? dict.target : null; - }; - //} -})(); - -module.exports = ProgressEvent; diff --git a/plugins/cordova-plugin-file/www/android/FileSystem.js b/plugins/cordova-plugin-file/www/android/FileSystem.js deleted file mode 100644 index 518e4c42..00000000 --- a/plugins/cordova-plugin-file/www/android/FileSystem.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * - * 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. - * -*/ - -FILESYSTEM_PROTOCOL = "cdvfile"; - -module.exports = { - __format__: function(fullPath, nativeUrl) { - var path = '/' + this.name + '/' + encodeURI(fullPath); - path = path.replace('//','/'); - var ret = FILESYSTEM_PROTOCOL + '://localhost' + path; - var m = /\?.*/.exec(nativeUrl); - if (m) { - ret += m[0]; - } - return ret; - } -}; - diff --git a/plugins/cordova-plugin-file/www/blackberry10/FileProxy.js b/plugins/cordova-plugin-file/www/blackberry10/FileProxy.js deleted file mode 100644 index bd286cb9..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/FileProxy.js +++ /dev/null @@ -1,51 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * FileProxy - * - * Register all File exec calls to be handled by proxy - */ - -module.exports = { - copyTo: require('cordova-plugin-file.copyToProxy'), - getDirectory: require('cordova-plugin-file.getDirectoryProxy'), - getFile: require('cordova-plugin-file.getFileProxy'), - getFileMetadata: require('cordova-plugin-file.getFileMetadataProxy'), - getMetadata: require('cordova-plugin-file.getMetadataProxy'), - getParent: require('cordova-plugin-file.getParentProxy'), - moveTo: require('cordova-plugin-file.moveToProxy'), - readAsArrayBuffer: require('cordova-plugin-file.readAsArrayBufferProxy'), - readAsBinaryString: require('cordova-plugin-file.readAsBinaryStringProxy'), - readAsDataURL: require('cordova-plugin-file.readAsDataURLProxy'), - readAsText: require('cordova-plugin-file.readAsTextProxy'), - readEntries: require('cordova-plugin-file.readEntriesProxy'), - remove: require('cordova-plugin-file.removeProxy'), - removeRecursively: require('cordova-plugin-file.removeRecursivelyProxy'), - resolveLocalFileSystemURI: require('cordova-plugin-file.resolveLocalFileSystemURIProxy'), - requestAllFileSystems: require('cordova-plugin-file.requestAllFileSystemsProxy'), - requestFileSystem: require('cordova-plugin-file.requestFileSystemProxy'), - setMetadata: require('cordova-plugin-file.setMetadataProxy'), - truncate: require('cordova-plugin-file.truncateProxy'), - write: require('cordova-plugin-file.writeProxy') -}; - -require('cordova/exec/proxy').add('File', module.exports); diff --git a/plugins/cordova-plugin-file/www/blackberry10/FileSystem.js b/plugins/cordova-plugin-file/www/blackberry10/FileSystem.js deleted file mode 100644 index 59a1fac8..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/FileSystem.js +++ /dev/null @@ -1,46 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * FileSystem - * - * Translate temporary / persistent / root file paths - */ - -var info = require("cordova-plugin-file.bb10FileSystemInfo"); - -module.exports = { - __format__: function(fullPath) { - switch (this.name) { - case 'temporary': - path = info.temporaryPath + fullPath; - break; - case 'persistent': - path = info.persistentPath + fullPath; - break; - case 'root': - path = 'file://' + fullPath; - break; - } - return window.encodeURI(path); - } -}; - diff --git a/plugins/cordova-plugin-file/www/blackberry10/copyTo.js b/plugins/cordova-plugin-file/www/blackberry10/copyTo.js deleted file mode 100644 index f27bf54e..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/copyTo.js +++ /dev/null @@ -1,141 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * copyTo - * - * IN: - * args - * 0 - URL of entry to copy - * 1 - URL of the directory into which to copy/move the entry - * 2 - the new name of the entry, defaults to the current name - * move - if true, delete the entry which was copied - * OUT: - * success - entry for the copied file or directory - * fail - FileError - */ - -var resolve = cordova.require('cordova-plugin-file.resolveLocalFileSystemURIProxy'), - requestAnimationFrame = cordova.require('cordova-plugin-file.bb10RequestAnimationFrame'); - -module.exports = function (success, fail, args, move) { - var uri = args[0], - destination = args[1], - fileName = args[2], - copiedEntry, - onSuccess = function () { - resolve( - function (entry) { - if (typeof(success) === 'function') { - success(entry); - } - }, - onFail, - [destination + copiedEntry.name] - ); - }, - onFail = function (error) { - if (typeof(fail) === 'function') { - if (error && error.code) { - //set error codes expected by mobile spec - if (uri === destination) { - fail(FileError.INVALID_MODIFICATION_ERR); - } else if (error.code === FileError.SECURITY_ERR) { - fail(FileError.INVALID_MODIFICATION_ERR); - } else { - fail(error.code); - } - } else { - fail(error); - } - } - }, - writeFile = function (fileEntry, blob, entry) { - copiedEntry = fileEntry; - fileEntry.createWriter(function (fileWriter) { - fileWriter.onwriteend = function () { - if (move) { - entry.nativeEntry.remove(onSuccess, function () { - console.error("Move operation failed. Files may exist at both source and destination"); - }); - } else { - onSuccess(); - } - }; - fileWriter.onerror = onFail; - fileWriter.write(blob); - }, onFail); - }, - copyFile = function (entry) { - if (entry.nativeEntry.file) { - entry.nativeEntry.file(function (file) { - var reader = new FileReader()._realReader; - reader.onloadend = function (e) { - var contents = new Uint8Array(this.result), - blob = new Blob([contents]); - resolve(function (destEntry) { - requestAnimationFrame(function () { - destEntry.nativeEntry.getFile(fileName, {create: true}, function (fileEntry) { - writeFile(fileEntry, blob, entry); - }, onFail); - }); - }, onFail, [destination]); - }; - reader.onerror = onFail; - reader.readAsArrayBuffer(file); - }, onFail); - } else { - onFail(FileError.INVALID_MODIFICATION_ERR); - } - }, - copyDirectory = function (entry) { - resolve(function (destEntry) { - if (entry.filesystemName !== destEntry.filesystemName) { - console.error("Copying directories between filesystems is not supported on BB10"); - onFail(FileError.INVALID_MODIFICATION_ERR); - } else { - entry.nativeEntry.copyTo(destEntry.nativeEntry, fileName, function () { - resolve(function (copiedDir) { - copiedEntry = copiedDir; - if (move) { - entry.nativeEntry.removeRecursively(onSuccess, onFail); - } else { - onSuccess(); - } - }, onFail, [destination + fileName]); - }, onFail); - } - }, onFail, [destination]); - }; - if (destination + fileName === uri) { - onFail(FileError.INVALID_MODIFICATION_ERR); - } else if (fileName.indexOf(':') > -1) { - onFail(FileError.ENCODING_ERR); - } else { - resolve(function (entry) { - if (entry.isDirectory) { - copyDirectory(entry); - } else { - copyFile(entry); - } - }, onFail, [uri]); - } -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/createEntryFromNative.js b/plugins/cordova-plugin-file/www/blackberry10/createEntryFromNative.js deleted file mode 100644 index e1e042ac..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/createEntryFromNative.js +++ /dev/null @@ -1,77 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * createEntryFromNative - * - * IN - * native - webkit Entry - * OUT - * returns Cordova entry - */ - -var info = require('cordova-plugin-file.bb10FileSystemInfo'), - fileSystems = require('cordova-plugin-file.fileSystems'); - -module.exports = function (native) { - var entry = { - nativeEntry: native, - isDirectory: !!native.isDirectory, - isFile: !!native.isFile, - name: native.name, - fullPath: native.fullPath, - filesystemName: native.filesystem.name, - nativeURL: native.toURL() - }, - persistentPath = info.persistentPath.substring(7), - temporaryPath = info.temporaryPath.substring(7); - //fix bb10 webkit incorrect nativeURL - if (native.filesystem.name === 'root') { - entry.nativeURL = 'file:///' + native.fullPath; - } else if (entry.nativeURL.indexOf('filesystem:local:///persistent/') === 0) { - entry.nativeURL = info.persistentPath + native.fullPath; - } else if (entry.nativeURL.indexOf('filesystem:local:///temporary') === 0) { - entry.nativeURL = info.temporaryPath + native.fullPath; - } - //translate file system name from bb10 webkit - if (entry.filesystemName === 'local__0:Persistent' || entry.fullPath.indexOf(persistentPath) !== -1) { - entry.filesystemName = 'persistent'; - } else if (entry.filesystemName === 'local__0:Temporary' || entry.fullPath.indexOf(temporaryPath) !== -1) { - entry.filesystemName = 'temporary'; - } - //add file system property (will be called sync) - fileSystems.getFs(entry.filesystemName, function (fs) { - entry.filesystem = fs; - }); - //set root on fullPath for persistent / temporary locations - entry.fullPath = entry.fullPath.replace(persistentPath, ""); - entry.fullPath = entry.fullPath.replace(temporaryPath, ""); - //set trailing slash on directory - if (entry.isDirectory && entry.fullPath.substring(entry.fullPath.length - 1) !== '/') { - entry.fullPath += '/'; - } - if (entry.isDirectory && entry.nativeURL.substring(entry.nativeURL.length - 1) !== '/') { - entry.nativeURL += '/'; - } - //encode URL - entry.nativeURL = window.encodeURI(entry.nativeURL); - return entry; -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/getDirectory.js b/plugins/cordova-plugin-file/www/blackberry10/getDirectory.js deleted file mode 100644 index 95c84c7a..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/getDirectory.js +++ /dev/null @@ -1,72 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * getDirectory - * - * IN: - * args - * 0 - local filesytem URI for the base directory to search - * 1 - directory to be created/returned; may be absolute path or relative path - * 2 - options object - * OUT: - * success - DirectoryEntry - * fail - FileError code - */ - -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] === "/" ? "" : args[0], - dir = args[1], - options = args[2], - onSuccess = function (entry) { - if (typeof(success) === 'function') { - success(entry); - } - }, - onFail = function (error) { - if (typeof(fail) === 'function') { - if (error && error.code) { - //set error codes expected by mobile-spec tests - if (error.code === FileError.INVALID_MODIFICATION_ERR && options.exclusive) { - fail(FileError.PATH_EXISTS_ERR); - } else if ( error.code === FileError.NOT_FOUND_ERR && dir.indexOf(':') > 0) { - fail(FileError.ENCODING_ERR); - } else { - fail(error.code); - } - } else { - fail(error); - } - } - }; - resolve(function (entry) { - requestAnimationFrame(function () { - entry.nativeEntry.getDirectory(dir, options, function (nativeEntry) { - resolve(function (entry) { - onSuccess(entry); - }, onFail, [uri + "/" + dir]); - }, onFail); - }); - }, onFail, [uri]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/getFile.js b/plugins/cordova-plugin-file/www/blackberry10/getFile.js deleted file mode 100644 index 1a730ae7..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/getFile.js +++ /dev/null @@ -1,57 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * getFile - * - * IN: - * args - * 0 - local filesytem URI for the base directory to search - * 1 - file to be created/returned; may be absolute path or relative path - * 2 - options object - * OUT: - * success - FileEntry - * fail - FileError code - */ - -var resolve = cordova.require('cordova-plugin-file.resolveLocalFileSystemURIProxy'); - -module.exports = function (success, fail, args) { - var uri = args[0] === "/" ? "" : args[0] + "/" + args[1], - options = args[2], - onSuccess = function (entry) { - if (typeof(success) === 'function') { - success(entry); - } - }, - onFail = function (code) { - if (typeof(fail) === 'function') { - fail(code); - } - }; - resolve(function (entry) { - if (!entry.isFile) { - onFail(FileError.TYPE_MISMATCH_ERR); - } else { - onSuccess(entry); - } - }, onFail, [uri, options]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/getFileMetadata.js b/plugins/cordova-plugin-file/www/blackberry10/getFileMetadata.js deleted file mode 100644 index 3383e035..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/getFileMetadata.js +++ /dev/null @@ -1,65 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * getFileMetadata - * - * IN: - * args - * 0 - local filesytem URI - * OUT: - * success - file - * - name - * - type - * - lastModifiedDate - * - size - * fail - FileError code - */ - -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], - onSuccess = function (entry) { - if (typeof(success) === 'function') { - success(entry); - } - }, - onFail = function (error) { - if (typeof(fail) === 'function') { - if (error.code) { - fail(error.code); - } else { - fail(error); - } - } - }; - resolve(function (entry) { - requestAnimationFrame(function () { - if (entry.nativeEntry.file) { - entry.nativeEntry.file(onSuccess, onFail); - } else { - entry.nativeEntry.getMetadata(onSuccess, onFail); - } - }); - }, onFail, [uri]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/getMetadata.js b/plugins/cordova-plugin-file/www/blackberry10/getMetadata.js deleted file mode 100644 index 3dd5c02c..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/getMetadata.js +++ /dev/null @@ -1,54 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * getMetadata - * - * IN: - * args - * 0 - local filesytem URI - * OUT: - * success - metadata - * fail - FileError code - */ - -var resolve = cordova.require('cordova-plugin-file.resolveLocalFileSystemURIProxy'); - -module.exports = function (success, fail, args) { - var uri = args[0], - onSuccess = function (entry) { - if (typeof(success) === 'function') { - success(entry); - } - }, - onFail = function (error) { - if (typeof(fail) === 'function') { - if (error.code) { - fail(error.code); - } else { - fail(error); - } - } - }; - resolve(function (entry) { - entry.nativeEntry.getMetadata(onSuccess, onFail); - }, onFail, [uri]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/getParent.js b/plugins/cordova-plugin-file/www/blackberry10/getParent.js deleted file mode 100644 index dd5e3547..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/getParent.js +++ /dev/null @@ -1,57 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * getParent - * - * IN: - * args - * 0 - local filesytem URI - * OUT: - * success - DirectoryEntry of parent - * fail - FileError code - */ - -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], - onSuccess = function (entry) { - if (typeof(success) === 'function') { - success(entry); - } - }, - onFail = function (error) { - if (typeof(fail) === 'function') { - if (error && error.code) { - fail(error.code); - } else { - fail(error); - } - } - }; - resolve(function (entry) { - requestAnimationFrame(function () { - entry.nativeEntry.getParent(onSuccess, onFail); - }); - }, onFail, [uri]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/info.js b/plugins/cordova-plugin-file/www/blackberry10/info.js deleted file mode 100644 index feaccd91..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/info.js +++ /dev/null @@ -1,52 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * info - * - * persistentPath - full path to app sandboxed persistent storage - * temporaryPath - full path to app sandboxed temporary storage - * localPath - full path to app source (www dir) - * MAX_SIZE - maximum size for filesystem request - */ - -var info = { - persistentPath: "", - temporaryPath: "", - localPath: "", - MAX_SIZE: 64 * 1024 * 1024 * 1024 -}; - -cordova.exec( - function (path) { - info.persistentPath = 'file://' + path + '/webviews/webfs/persistent/local__0'; - info.temporaryPath = 'file://' + path + '/webviews/webfs/temporary/local__0'; - info.localPath = path.replace('/data', '/app/native'); - }, - function () { - console.error('Unable to determine local storage file path'); - }, - 'File', - 'getHomePath', - false -); - -module.exports = info; diff --git a/plugins/cordova-plugin-file/www/blackberry10/moveTo.js b/plugins/cordova-plugin-file/www/blackberry10/moveTo.js deleted file mode 100644 index f6560e8a..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/moveTo.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * moveTo - * - * IN: - * args - * 0 - URL of entry to move - * 1 - URL of the directory into which to move the entry - * 2 - the new name of the entry, defaults to the current name - * OUT: - * success - entry for the copied file or directory - * fail - FileError - */ - -var copy = cordova.require('cordova-plugin-file.copyToProxy'); - -module.exports = function (success, fail, args) { - copy(success, fail, args, true); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/readAsArrayBuffer.js b/plugins/cordova-plugin-file/www/blackberry10/readAsArrayBuffer.js deleted file mode 100644 index 41c677a2..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/readAsArrayBuffer.js +++ /dev/null @@ -1,68 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * readAsArrayBuffer - * - * IN: - * args - * 0 - URL of file to read - * 1 - start position - * 2 - end position - * OUT: - * success - ArrayBuffer 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], - start = args[1], - end = args[2], - onSuccess = function (data) { - if (typeof success === 'function') { - success(data); - } - }, - 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 () { - onSuccess(this.result.slice(start, end)); - }; - reader.onerror = onFail; - reader.readAsArrayBuffer(file); - }, onFail); - }); - }, fail, [uri]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/readAsBinaryString.js b/plugins/cordova-plugin-file/www/blackberry10/readAsBinaryString.js deleted file mode 100644 index 6a70f1a2..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/readAsBinaryString.js +++ /dev/null @@ -1,68 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * readAsBinaryString - * - * IN: - * args - * 0 - URL of file to read - * 1 - start position - * 2 - end position - * OUT: - * success - BinaryString contents 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], - start = args[1], - end = args[2], - onSuccess = function (data) { - if (typeof success === 'function') { - success(data); - } - }, - 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 () { - onSuccess(this.result.substring(start, end)); - }; - reader.onerror = onFail; - reader.readAsBinaryString(file); - }, onFail); - }); - }, fail, [uri]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/readAsDataURL.js b/plugins/cordova-plugin-file/www/blackberry10/readAsDataURL.js deleted file mode 100644 index 0256c5ec..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/readAsDataURL.js +++ /dev/null @@ -1,65 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * readAsDataURL - * - * IN: - * args - * 0 - URL of file to read - * OUT: - * success - DataURL representation of file contents - * 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], - onSuccess = function (data) { - if (typeof success === 'function') { - success(data); - } - }, - 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 () { - onSuccess(this.result); - }; - reader.onerror = onFail; - reader.readAsDataURL(file); - }, onFail); - }); - }, fail, [uri]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/readAsText.js b/plugins/cordova-plugin-file/www/blackberry10/readAsText.js deleted file mode 100644 index 7809a908..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/readAsText.js +++ /dev/null @@ -1,77 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * readAsText - * - * IN: - * args - * 0 - URL of file to read - * 1 - encoding - * 2 - start position - * 3 - end position - * OUT: - * success - text contents 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], - start = args[2], - end = args[3], - onSuccess = function (data) { - if (typeof success === 'function') { - success(data); - } - }, - 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(start, end), - blob = new Blob([contents]), - textReader = new FileReader()._realReader; - textReader.onloadend = function () { - onSuccess(this.result); - }; - textReader.onerror = onFail; - textReader.readAsText(blob); - }; - reader.onerror = onFail; - reader.readAsArrayBuffer(file); - }, onFail); - }); - }, fail, [uri]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/readEntries.js b/plugins/cordova-plugin-file/www/blackberry10/readEntries.js deleted file mode 100644 index 5284d77b..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/readEntries.js +++ /dev/null @@ -1,71 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * readEntries - * - * IN: - * args - * 0 - URL of directory to list - * OUT: - * success - Array of Entry objects - * fail - FileError - */ - -var resolve = cordova.require('cordova-plugin-file.resolveLocalFileSystemURIProxy'), - info = require('cordova-plugin-file.bb10FileSystemInfo'), - requestAnimationFrame = cordova.require('cordova-plugin-file.bb10RequestAnimationFrame'), - createEntryFromNative = cordova.require('cordova-plugin-file.bb10CreateEntryFromNative'); - -module.exports = function (success, fail, args) { - var uri = args[0], - onSuccess = function (data) { - if (typeof success === 'function') { - success(data); - } - }, - onFail = function (error) { - if (typeof fail === 'function') { - if (error.code) { - fail(error.code); - } else { - fail(error); - } - } - }; - resolve(function (fs) { - requestAnimationFrame(function () { - var reader = fs.nativeEntry.createReader(), - entries = [], - readEntries = function() { - reader.readEntries(function (results) { - if (!results.length) { - onSuccess(entries.sort().map(createEntryFromNative)); - } else { - entries = entries.concat(Array.prototype.slice.call(results || [], 0)); - readEntries(); - } - }, onFail); - }; - readEntries(); - }); - }, fail, [uri]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/remove.js b/plugins/cordova-plugin-file/www/blackberry10/remove.js deleted file mode 100644 index f57973ae..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/remove.js +++ /dev/null @@ -1,61 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * remove - * - * IN: - * args - * 0 - URL of Entry to remove - * OUT: - * success - (no args) - * 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], - onSuccess = function (data) { - if (typeof success === 'function') { - success(data); - } - }, - onFail = function (error) { - if (typeof fail === 'function') { - if (error && error.code) { - fail(error.code); - } else { - fail(error); - } - } - }; - resolve(function (fs) { - requestAnimationFrame(function () { - if (fs.fullPath === '/') { - onFail(FileError.NO_MODIFICATION_ALLOWED_ERR); - } else { - fs.nativeEntry.remove(onSuccess, onFail); - } - }); - }, fail, [uri]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/removeRecursively.js b/plugins/cordova-plugin-file/www/blackberry10/removeRecursively.js deleted file mode 100644 index 93b559bd..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/removeRecursively.js +++ /dev/null @@ -1,62 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * removeRecursively - * - * IN: - * args - * 0 - URL of DirectoryEntry to remove recursively - * OUT: - * success - (no args) - * 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], - onSuccess = function (data) { - if (typeof success === 'function') { - success(data); - } - }, - onFail = function (error) { - if (typeof fail === 'function') { - if (error.code) { - if (error.code === FileError.INVALID_MODIFICATION_ERR) { - //mobile-spec expects this error code - fail(FileError.NO_MODIFICATION_ALLOWED_ERR); - } else { - fail(error.code); - } - } else { - fail(error); - } - } - }; - resolve(function (fs) { - requestAnimationFrame(function () { - fs.nativeEntry.removeRecursively(onSuccess, onFail); - }); - }, fail, [uri]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/requestAllFileSystems.js b/plugins/cordova-plugin-file/www/blackberry10/requestAllFileSystems.js deleted file mode 100644 index 8354ab1c..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/requestAllFileSystems.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * requestAllFileSystems - * - * IN - no arguments - * OUT - * success - Array of FileSystems - * - filesystemName - * - fullPath - * - name - * - nativeURL - */ - -var info = require('cordova-plugin-file.bb10FileSystemInfo'); - -module.exports = function (success, fail, args) { - success([ - { filesystemName: 'persistent', name: 'persistent', fullPath: '/', nativeURL: info.persistentPath + '/' }, - { filesystemName: 'temporary', name: 'temporary', fullPath: '/', nativeURL: info.temporaryPath + '/' }, - { filesystemName: 'root', name: 'root', fullPath: '/', nativeURL: 'file:///' } - ]); -} diff --git a/plugins/cordova-plugin-file/www/blackberry10/requestAnimationFrame.js b/plugins/cordova-plugin-file/www/blackberry10/requestAnimationFrame.js deleted file mode 100644 index 6c3288cc..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/requestAnimationFrame.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * requestAnimationFrame - * - * This is used throughout the BB10 File implementation to wrap - * native webkit calls. There is a bug in the webkit implementation - * which causes callbacks to never return when multiple file system - * APIs are called in sequence. This should also make the UI more - * responsive during file operations. - * - * Supported on BB10 OS > 10.1 - */ - -var requestAnimationFrame = window.requestAnimationFrame; -if (typeof(requestAnimationFrame) !== 'function') { - requestAnimationFrame = function (cb) { cb(); }; -} -module.exports = requestAnimationFrame; diff --git a/plugins/cordova-plugin-file/www/blackberry10/requestFileSystem.js b/plugins/cordova-plugin-file/www/blackberry10/requestFileSystem.js deleted file mode 100644 index f02edbf5..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/requestFileSystem.js +++ /dev/null @@ -1,53 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * requestFileSystem - * - * IN: - * args - * 0 - type (TEMPORARY = 0, PERSISTENT = 1) - * 1 - size - * OUT: - * success - FileSystem object - * - name - the human readable directory name - * - root - DirectoryEntry object - * - isDirectory - * - isFile - * - name - * - fullPath - * fail - FileError code - */ - -var resolve = cordova.require('cordova-plugin-file.resolveLocalFileSystemURIProxy'); - -module.exports = function (success, fail, args) { - var fsType = args[0] === 0 ? 'temporary' : 'persistent', - size = args[1], - onSuccess = function (fs) { - var directory = { - name: fsType, - root: fs - }; - success(directory); - }; - resolve(onSuccess, fail, ['cdvfile://localhost/' + fsType + '/', undefined, size]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/resolveLocalFileSystemURI.js b/plugins/cordova-plugin-file/www/blackberry10/resolveLocalFileSystemURI.js deleted file mode 100644 index 0fc9c070..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/resolveLocalFileSystemURI.js +++ /dev/null @@ -1,172 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * resolveLocalFileSystemURI - * - * IN - * args - * 0 - escaped local filesystem URI - * 1 - options (standard HTML5 file system options) - * 2 - size - * OUT - * success - Entry object - * - isDirectory - * - isFile - * - name - * - fullPath - * - nativeURL - * - fileSystemName - * fail - FileError code - */ - -var info = require('cordova-plugin-file.bb10FileSystemInfo'), - requestAnimationFrame = cordova.require('cordova-plugin-file.bb10RequestAnimationFrame'), - createEntryFromNative = require('cordova-plugin-file.bb10CreateEntryFromNative'), - SANDBOXED = true, - UNSANDBOXED = false; - -module.exports = function (success, fail, args) { - var request = args[0], - options = args[1], - size = args[2]; - if (request) { - request = decodeURIComponent(request); - if (request.indexOf('?') > -1) { - //bb10 does not support params; strip them off - request = request.substring(0, request.indexOf('?')); - } - if (request.indexOf('file://localhost/') === 0) { - //remove localhost prefix - request = request.replace('file://localhost/', 'file:///'); - } - //requests to sandboxed locations should use cdvfile - request = request.replace(info.persistentPath, 'cdvfile://localhost/persistent'); - request = request.replace(info.temporaryPath, 'cdvfile://localhost/temporary'); - //pick appropriate handler - if (request.indexOf('file:///') === 0) { - resolveFile(success, fail, request, options); - } else if (request.indexOf('cdvfile://localhost/') === 0) { - resolveCdvFile(success, fail, request, options, size); - } else if (request.indexOf('local:///') === 0) { - resolveLocal(success, fail, request, options); - } else { - fail(FileError.ENCODING_ERR); - } - } else { - fail(FileError.NOT_FOUND_ERR); - } -}; - -//resolve file:/// -function resolveFile(success, fail, request, options) { - var path = request.substring(7); - resolve(success, fail, path, window.PERSISTENT, UNSANDBOXED, options); -} - -//resolve cdvfile://localhost/filesystemname/ -function resolveCdvFile(success, fail, request, options, size) { - var components = /cdvfile:\/\/localhost\/([^\/]+)\/(.*)/.exec(request), - fsType = components[1], - path = components[2]; - if (fsType === 'persistent') { - resolve(success, fail, path, window.PERSISTENT, SANDBOXED, options, size); - } - else if (fsType === 'temporary') { - resolve(success, fail, path, window.TEMPORARY, SANDBOXED, options, size); - } - else if (fsType === 'root') { - resolve(success, fail, path, window.PERSISTENT, UNSANDBOXED, options); - } - else { - fail(FileError.NOT_FOUND_ERR); - } -} - -//resolve local:/// -function resolveLocal(success, fail, request, options) { - var path = localPath + request.substring(8); - resolve(success, fail, path, window.PERSISTENT, UNSANDBOXED, options); -} - -//validate parameters and set sandbox -function resolve(success, fail, path, fsType, sandbox, options, size) { - options = options || { create: false }; - size = size || info.MAX_SIZE; - if (size > info.MAX_SIZE) { - //bb10 does not respect quota; fail at unreasonably large size - fail(FileError.QUOTA_EXCEEDED_ERR); - } else if (path.indexOf(':') > -1) { - //files with : character are not valid in Cordova apps - fail(FileError.ENCODING_ERR); - } else { - requestAnimationFrame(function () { - cordova.exec(function () { - requestAnimationFrame(function () { - resolveNative(success, fail, path, fsType, options, size); - }); - }, fail, 'File', 'setSandbox', [sandbox], false); - }); - } -} - -//find path using webkit file system -function resolveNative(success, fail, path, fsType, options, size) { - window.webkitRequestFileSystem( - fsType, - size, - function (fs) { - if (path === '') { - //no path provided, call success with root file system - success(createEntryFromNative(fs.root)); - } else { - //otherwise attempt to resolve as file - fs.root.getFile( - path, - options, - function (entry) { - success(createEntryFromNative(entry)); - }, - function (fileError) { - //file not found, attempt to resolve as directory - fs.root.getDirectory( - path, - options, - function (entry) { - success(createEntryFromNative(entry)); - }, - function (dirError) { - //path cannot be resolved - if (fileError.code === FileError.INVALID_MODIFICATION_ERR && - options.exclusive) { - //mobile-spec expects this error code - fail(FileError.PATH_EXISTS_ERR); - } else { - fail(FileError.NOT_FOUND_ERR); - } - } - ); - } - ); - } - } - ); -} diff --git a/plugins/cordova-plugin-file/www/blackberry10/setMetadata.js b/plugins/cordova-plugin-file/www/blackberry10/setMetadata.js deleted file mode 100644 index 5254e868..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/setMetadata.js +++ /dev/null @@ -1,33 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * setMetadata - * - * BB10 OS does not support setting file metadata via HTML5 File System - */ - -module.exports = function (success, fail, args) { - console.error("setMetadata not supported on BB10", arguments); - if (typeof(fail) === 'function') { - fail(); - } -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/truncate.js b/plugins/cordova-plugin-file/www/blackberry10/truncate.js deleted file mode 100644 index ba7f77f1..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/truncate.js +++ /dev/null @@ -1,74 +0,0 @@ -/* - * - * 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]); -}; diff --git a/plugins/cordova-plugin-file/www/blackberry10/write.js b/plugins/cordova-plugin-file/www/blackberry10/write.js deleted file mode 100644 index 386ec670..00000000 --- a/plugins/cordova-plugin-file/www/blackberry10/write.js +++ /dev/null @@ -1,73 +0,0 @@ -/* - * - * 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. - * -*/ - -/* - * write - * - * IN: - * args - * 0 - URL of file to write - * 1 - data to write - * 2 - offset - * 3 - isBinary - * OUT: - * success - bytes written - * 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], - data = args[1], - offset = args[2], - isBinary = args[3], - 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 if (error && error.target && error.target.code) { - fail(error.target.code); - } else { - fail(error); - } - } - }; - resolve(function (fs) { - requestAnimationFrame(function () { - fs.nativeEntry.createWriter(function (writer) { - var blob = new Blob([data]); - if (offset) { - writer.seek(offset); - } - writer.onwriteend = onSuccess; - writer.onerror = onFail; - writer.write(blob); - }, onFail); - }); - }, fail, [uri, { create: true }]); -}; diff --git a/plugins/cordova-plugin-file/www/browser/FileSystem.js b/plugins/cordova-plugin-file/www/browser/FileSystem.js deleted file mode 100644 index 27373d11..00000000 --- a/plugins/cordova-plugin-file/www/browser/FileSystem.js +++ /dev/null @@ -1,31 +0,0 @@ -/* - * - * 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. - * -*/ - -/*global FILESYSTEM_PREFIX: true, module*/ - -FILESYSTEM_PREFIX = "file:///"; - -module.exports = { - __format__: function(fullPath) { - return (FILESYSTEM_PREFIX + this.name + (fullPath[0] === '/' ? '' : '/') + encodeURI(fullPath)); - } -}; - diff --git a/plugins/cordova-plugin-file/www/browser/Preparing.js b/plugins/cordova-plugin-file/www/browser/Preparing.js deleted file mode 100644 index 13957e02..00000000 --- a/plugins/cordova-plugin-file/www/browser/Preparing.js +++ /dev/null @@ -1,187 +0,0 @@ -/* - * - * 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. - * -*/ - -/*global require*/ - -//Only Chrome uses this file. -var isChrome = window.webkitRequestFileSystem && window.webkitResolveLocalFileSystemURL; -if (!isChrome) { - return; -} - -var channel = require('cordova/channel'); -var FileError = require('./FileError'); -var PERSISTENT_FS_QUOTA = 5 * 1024 * 1024; -var filePluginIsReadyEvent = new Event('filePluginIsReady'); - -var entryFunctionsCreated = false; -var quotaWasRequested = false; -var eventWasThrown = false; - -if (!window.requestFileSystem) { - window.requestFileSystem = function(type, size, win, fail) { - if (fail) { - fail("Not supported"); - } - }; -} else { - window.requestFileSystem(window.TEMPORARY, 1, createFileEntryFunctions, function() {}); -} - -if (!window.resolveLocalFileSystemURL) { - window.resolveLocalFileSystemURL = function(url, win, fail) { - if(fail) { - fail("Not supported"); - } - }; -} - -// Resolves a filesystem entry by its path - which is passed either in standard (filesystem:file://) or -// Cordova-specific (cdvfile://) universal way. -// Aligns with specification: http://www.w3.org/TR/2011/WD-file-system-api-20110419/#widl-LocalFileSystem-resolveLocalFileSystemURL -var nativeResolveLocalFileSystemURL = window.resolveLocalFileSystemURL || window.webkitResolveLocalFileSystemURL; -window.resolveLocalFileSystemURL = function(url, win, fail) { - /* If url starts with `cdvfile` then we need convert it to Chrome real url first: - cdvfile://localhost/persistent/path/to/file -> filesystem:file://persistent/path/to/file */ - if (url.trim().substr(0,7) === "cdvfile") { - /* Quirk: - Plugin supports cdvfile://localhost (local resources) only. - I.e. external resources are not supported via cdvfile. */ - if (url.indexOf("cdvfile://localhost") !== -1) { - // Browser supports temporary and persistent only - var indexPersistent = url.indexOf('persistent'); - var indexTemporary = url.indexOf('temporary'); - - /* Chrome urls start with 'filesystem:' prefix. See quirk: - toURL function in Chrome returns filesystem:-prefixed path depending on application host. - For example, filesystem:file:///persistent/somefile.txt, - filesystem:http://localhost:8080/persistent/somefile.txt. */ - var prefix = 'filesystem:file:///'; - if (location.protocol !== 'file:') { - prefix = 'filesystem:' + location.origin + '/'; - } - - var result; - if (indexPersistent !== -1) { - // cdvfile://localhost/persistent/path/to/file -> filesystem:file://persistent/path/to/file - // or filesystem:http://localhost:8080/persistent/path/to/file - result = prefix + 'persistent' + url.substr(indexPersistent + 10); - nativeResolveLocalFileSystemURL(result, win, fail); - return; - } - - if (indexTemporary !== -1) { - // cdvfile://localhost/temporary/path/to/file -> filesystem:file://temporary/path/to/file - // or filesystem:http://localhost:8080/temporary/path/to/file - result = prefix + 'temporary' + url.substr(indexTemporary + 9); - nativeResolveLocalFileSystemURL(result, win, fail); - return; - } - } - - // cdvfile other than local file resource is not supported - fail && fail(new FileError(FileError.ENCODING_ERR)); - } else { - nativeResolveLocalFileSystemURL(url, win, fail); - } -}; - -function createFileEntryFunctions(fs) { - fs.root.getFile('todelete_658674_833_4_cdv', {create: true}, function(fileEntry) { - var fileEntryType = Object.getPrototypeOf(fileEntry); - var entryType = Object.getPrototypeOf(fileEntryType); - - // Save the original method - var origToURL = entryType.toURL; - entryType.toURL = function () { - var origURL = origToURL.call(this); - if (this.isDirectory && origURL.substr(-1) !== '/') { - return origURL + '/'; - } - return origURL; - }; - - entryType.toNativeURL = function () { - console.warn("DEPRECATED: Update your code to use 'toURL'"); - return this.toURL(); - }; - - entryType.toInternalURL = function() { - if (this.toURL().indexOf("persistent") > -1) { - return "cdvfile://localhost/persistent" + this.fullPath; - } - - if (this.toURL().indexOf("temporary") > -1) { - return "cdvfile://localhost/temporary" + this.fullPath; - } - }; - - entryType.setMetadata = function(win, fail /*, metadata*/) { - fail && fail("Not supported"); - }; - - fileEntry.createWriter(function(writer) { - var originalWrite = writer.write; - var writerProto = Object.getPrototypeOf(writer); - writerProto.write = function(blob) { - if(blob instanceof Blob) { - originalWrite.apply(this, [blob]); - } else { - var realBlob = new Blob([blob]); - originalWrite.apply(this, [realBlob]); - } - }; - - fileEntry.remove(function(){ entryFunctionsCreated = true; }, function(){ /* empty callback */ }); - }); - }); -} - -window.initPersistentFileSystem = function(size, win, fail) { - if (navigator.webkitPersistentStorage) { - navigator.webkitPersistentStorage.requestQuota(size, win, fail); - return; - } - - fail("This browser does not support this function"); -}; - -window.isFilePluginReadyRaised = function () { return eventWasThrown; }; - -window.initPersistentFileSystem(PERSISTENT_FS_QUOTA, function() { - console.log('Persistent fs quota granted'); - quotaWasRequested = true; -}, function(e){ - console.log('Error occured while trying to request Persistent fs quota: ' + JSON.stringify(e)); -}); - -channel.onCordovaReady.subscribe(function () { - function dispatchEventIfReady() { - if (entryFunctionsCreated && quotaWasRequested) { - window.dispatchEvent(filePluginIsReadyEvent); - eventWasThrown = true; - } else { - setTimeout(dispatchEventIfReady, 100); - } - } - - dispatchEventIfReady(); -}, false); diff --git a/plugins/cordova-plugin-file/www/fileSystemPaths.js b/plugins/cordova-plugin-file/www/fileSystemPaths.js deleted file mode 100644 index c332f481..00000000 --- a/plugins/cordova-plugin-file/www/fileSystemPaths.js +++ /dev/null @@ -1,63 +0,0 @@ -/* - * - * 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. - * -*/ - -var exec = require('cordova/exec'); -var channel = require('cordova/channel'); - -exports.file = { - // Read-only directory where the application is installed. - applicationDirectory: null, - // Root of app's private writable storage - applicationStorageDirectory: null, - // Where to put app-specific data files. - dataDirectory: null, - // Cached files that should survive app restarts. - // Apps should not rely on the OS to delete files in here. - cacheDirectory: null, - // Android: the application space on external storage. - externalApplicationStorageDirectory: null, - // Android: Where to put app-specific data files on external storage. - externalDataDirectory: null, - // Android: the application cache on external storage. - externalCacheDirectory: null, - // Android: the external storage (SD card) root. - externalRootDirectory: null, - // iOS: Temp directory that the OS can clear at will. - tempDirectory: null, - // iOS: Holds app-specific files that should be synced (e.g. to iCloud). - syncedDataDirectory: null, - // iOS: Files private to the app, but that are meaningful to other applciations (e.g. Office files) - documentsDirectory: null, - // BlackBerry10: Files globally available to all apps - sharedDirectory: null -}; - -channel.waitForInitialization('onFileSystemPathsReady'); -channel.onCordovaReady.subscribe(function() { - function after(paths) { - for (var k in paths) { - exports.file[k] = paths[k]; - } - channel.initializationComplete('onFileSystemPathsReady'); - } - exec(after, null, 'File', 'requestAllPaths', []); -}); - diff --git a/plugins/cordova-plugin-file/www/fileSystems-roots.js b/plugins/cordova-plugin-file/www/fileSystems-roots.js deleted file mode 100644 index ff77d944..00000000 --- a/plugins/cordova-plugin-file/www/fileSystems-roots.js +++ /dev/null @@ -1,44 +0,0 @@ -/* - * - * 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. - * -*/ - -// Map of fsName -> FileSystem. -var fsMap = null; -var FileSystem = require('./FileSystem'); -var exec = require('cordova/exec'); - -// Overridden by Android, BlackBerry 10 and iOS to populate fsMap. -require('./fileSystems').getFs = function(name, callback) { - if (fsMap) { - callback(fsMap[name]); - } else { - exec(success, null, "File", "requestAllFileSystems", []); - function success(response) { - fsMap = {}; - for (var i = 0; i < response.length; ++i) { - var fsRoot = response[i]; - var fs = new FileSystem(fsRoot.filesystemName, fsRoot); - fsMap[fs.name] = fs; - } - callback(fsMap[name]); - } - } -}; - diff --git a/plugins/cordova-plugin-file/www/fileSystems.js b/plugins/cordova-plugin-file/www/fileSystems.js deleted file mode 100644 index 8ecdec3e..00000000 --- a/plugins/cordova-plugin-file/www/fileSystems.js +++ /dev/null @@ -1,25 +0,0 @@ -/* - * - * 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. - * -*/ - -// Overridden by Android, BlackBerry 10 and iOS to populate fsMap. -module.exports.getFs = function(name, callback) { - callback(null); -}; diff --git a/plugins/cordova-plugin-file/www/firefoxos/FileSystem.js b/plugins/cordova-plugin-file/www/firefoxos/FileSystem.js deleted file mode 100644 index 8ff0ec4b..00000000 --- a/plugins/cordova-plugin-file/www/firefoxos/FileSystem.js +++ /dev/null @@ -1,29 +0,0 @@ -/* - * - * 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. - * -*/ - -FILESYSTEM_PREFIX = "file:///"; - -module.exports = { - __format__: function(fullPath) { - return (FILESYSTEM_PREFIX + this.name + (fullPath[0] === '/' ? '' : '/') + encodeURI(fullPath)); - } -}; - diff --git a/plugins/cordova-plugin-file/www/ios/FileSystem.js b/plugins/cordova-plugin-file/www/ios/FileSystem.js deleted file mode 100644 index b11d58f3..00000000 --- a/plugins/cordova-plugin-file/www/ios/FileSystem.js +++ /dev/null @@ -1,30 +0,0 @@ -/* - * - * 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. - * -*/ - -FILESYSTEM_PROTOCOL = "cdvfile"; - -module.exports = { - __format__: function(fullPath) { - var path = ('/'+this.name+(fullPath[0]==='/'?'':'/')+encodeURI(fullPath)).replace('//','/'); - return FILESYSTEM_PROTOCOL + '://localhost' + path; - } -}; - diff --git a/plugins/cordova-plugin-file/www/requestFileSystem.js b/plugins/cordova-plugin-file/www/requestFileSystem.js deleted file mode 100644 index 84715fa7..00000000 --- a/plugins/cordova-plugin-file/www/requestFileSystem.js +++ /dev/null @@ -1,76 +0,0 @@ -/* - * - * 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. - * -*/ - -//For browser platform: not all browsers use this file. -function checkBrowser() { - if (cordova.platformId === "browser" && navigator.userAgent.search(/Chrome/) > 0) { - var requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem; - module.exports = requestFileSystem; - return; - } -} -checkBrowser(); - -var argscheck = require('cordova/argscheck'), - FileError = require('./FileError'), - FileSystem = require('./FileSystem'), - exec = require('cordova/exec'); -var fileSystems = require('./fileSystems'); - -/** - * Request a file system in which to store application data. - * @param type local file system type - * @param size indicates how much storage space, in bytes, the application expects to need - * @param successCallback invoked with a FileSystem object - * @param errorCallback invoked if error occurs retrieving file system - */ -var requestFileSystem = function(type, size, successCallback, errorCallback) { - argscheck.checkArgs('nnFF', 'requestFileSystem', arguments); - var fail = function(code) { - errorCallback && errorCallback(new FileError(code)); - }; - - if (type < 0) { - fail(FileError.SYNTAX_ERR); - } else { - // if successful, return a FileSystem object - var success = function(file_system) { - if (file_system) { - if (successCallback) { - fileSystems.getFs(file_system.name, function(fs) { - // This should happen only on platforms that haven't implemented requestAllFileSystems (windows) - if (!fs) { - fs = new FileSystem(file_system.name, file_system.root); - } - successCallback(fs); - }); - } - } - else { - // no FileSystem object returned - fail(FileError.NOT_FOUND_ERR); - } - }; - exec(success, fail, "File", "requestFileSystem", [type, size]); - } -}; - -module.exports = requestFileSystem; diff --git a/plugins/cordova-plugin-file/www/resolveLocalFileSystemURI.js b/plugins/cordova-plugin-file/www/resolveLocalFileSystemURI.js deleted file mode 100644 index dd6f90cc..00000000 --- a/plugins/cordova-plugin-file/www/resolveLocalFileSystemURI.js +++ /dev/null @@ -1,87 +0,0 @@ -/* - * - * 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. - * -*/ - -//For browser platform: not all browsers use overrided `resolveLocalFileSystemURL`. -function checkBrowser() { - if (cordova.platformId === "browser" && navigator.userAgent.search(/Chrome/) > 0) { - var requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem; - module.exports = requestFileSystem; - return; - } -} -checkBrowser(); - -var argscheck = require('cordova/argscheck'), - DirectoryEntry = require('./DirectoryEntry'), - FileEntry = require('./FileEntry'), - FileError = require('./FileError'), - exec = require('cordova/exec'); -var fileSystems = require('./fileSystems'); - -/** - * Look up file system Entry referred to by local URI. - * @param {DOMString} uri URI referring to a local file or directory - * @param successCallback invoked with Entry object corresponding to URI - * @param errorCallback invoked if error occurs retrieving file system entry - */ -module.exports.resolveLocalFileSystemURL = function(uri, successCallback, errorCallback) { - argscheck.checkArgs('sFF', 'resolveLocalFileSystemURI', arguments); - // error callback - var fail = function(error) { - errorCallback && errorCallback(new FileError(error)); - }; - // sanity check for 'not:valid:filename' or '/not:valid:filename' - // file.spec.12 window.resolveLocalFileSystemURI should error (ENCODING_ERR) when resolving invalid URI with leading /. - if(!uri || uri.split(":").length > 2) { - setTimeout( function() { - fail(FileError.ENCODING_ERR); - },0); - return; - } - // if successful, return either a file or directory entry - var success = function(entry) { - if (entry) { - if (successCallback) { - // create appropriate Entry object - var fsName = entry.filesystemName || (entry.filesystem && entry.filesystem.name) || (entry.filesystem == window.PERSISTENT ? 'persistent' : 'temporary'); - fileSystems.getFs(fsName, function(fs) { - // This should happen only on platforms that haven't implemented requestAllFileSystems (windows) - if (!fs) { - fs = new FileSystem(fsName, {name:"", fullPath:"/"}); - } - var result = (entry.isDirectory) ? new DirectoryEntry(entry.name, entry.fullPath, fs, entry.nativeURL) : new FileEntry(entry.name, entry.fullPath, fs, entry.nativeURL); - successCallback(result); - }); - } - } - else { - // no Entry object returned - fail(FileError.NOT_FOUND_ERR); - } - }; - - exec(success, fail, "File", "resolveLocalFileSystemURI", [uri]); -}; - -module.exports.resolveLocalFileSystemURI = function() { - console.log("resolveLocalFileSystemURI is deprecated. Please call resolveLocalFileSystemURL instead."); - module.exports.resolveLocalFileSystemURL.apply(this, arguments); -}; diff --git a/plugins/cordova-plugin-file/www/ubuntu/FileSystem.js b/plugins/cordova-plugin-file/www/ubuntu/FileSystem.js deleted file mode 100644 index c43da824..00000000 --- a/plugins/cordova-plugin-file/www/ubuntu/FileSystem.js +++ /dev/null @@ -1,34 +0,0 @@ -/* - * - * 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. - * -*/ - -FILESYSTEM_PROTOCOL = "cdvfile"; - -module.exports = { - __format__: function(fullPath) { - if (this.name === 'content') { - return 'content:/' + fullPath; - } - var path = ('/' + this.name + (fullPath[0] === '/' ? '' : '/') + encodeURI(fullPath)).replace('//','/'); - - return FILESYSTEM_PROTOCOL + '://localhost' + path; - } -}; - diff --git a/plugins/cordova-plugin-file/www/ubuntu/FileWriter.js b/plugins/cordova-plugin-file/www/ubuntu/FileWriter.js deleted file mode 100644 index a75506b7..00000000 --- a/plugins/cordova-plugin-file/www/ubuntu/FileWriter.js +++ /dev/null @@ -1,135 +0,0 @@ -/* - * - * 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. - * -*/ - -var exec = require('cordova/exec'), - FileError = require('./FileError'), - ProgressEvent = require('./ProgressEvent'); - -function write(data) { - var that=this; - var supportsBinary = (typeof window.Blob !== 'undefined' && typeof window.ArrayBuffer !== 'undefined'); - var isBinary; - - // Check to see if the incoming data is a blob - if (data instanceof File || (supportsBinary && data instanceof Blob)) { - var fileReader = new FileReader(); - fileReader.onload = function() { - // Call this method again, with the arraybuffer as argument - FileWriter.prototype.write.call(that, this.result); - }; - if (supportsBinary) { - fileReader.readAsArrayBuffer(data); - } else { - fileReader.readAsText(data); - } - return; - } - - // Mark data type for safer transport over the binary bridge - isBinary = supportsBinary && (data instanceof ArrayBuffer); - - // Throw an exception if we are already writing a file - if (this.readyState === FileWriter.WRITING) { - throw new FileError(FileError.INVALID_STATE_ERR); - } - - // WRITING state - this.readyState = FileWriter.WRITING; - - var me = this; - - // If onwritestart callback - if (typeof me.onwritestart === "function") { - me.onwritestart(new ProgressEvent("writestart", {"target":me})); - } - - if (data instanceof ArrayBuffer || data.buffer instanceof ArrayBuffer) { - data = new Uint8Array(data); - var binary = ""; - for (var i = 0; i < data.byteLength; i++) { - binary += String.fromCharCode(data[i]); - } - data = binary; - } - - var prefix = "file://localhost"; - var path = this.localURL; - if (path.substr(0, prefix.length) == prefix) { - path = path.substr(prefix.length); - } - // Write file - exec( - // Success callback - function(r) { - // If DONE (cancelled), then don't do anything - if (me.readyState === FileWriter.DONE) { - return; - } - - // position always increases by bytes written because file would be extended - me.position += r; - // The length of the file is now where we are done writing. - - me.length = me.position; - - // DONE state - me.readyState = FileWriter.DONE; - - // If onwrite callback - if (typeof me.onwrite === "function") { - me.onwrite(new ProgressEvent("write", {"target":me})); - } - - // If onwriteend callback - if (typeof me.onwriteend === "function") { - me.onwriteend(new ProgressEvent("writeend", {"target":me})); - } - }, - // Error callback - function(e) { - // If DONE (cancelled), then don't do anything - if (me.readyState === FileWriter.DONE) { - return; - } - - // DONE state - me.readyState = FileWriter.DONE; - - // Save error - me.error = new FileError(e); - - // If onerror callback - if (typeof me.onerror === "function") { - me.onerror(new ProgressEvent("error", {"target":me})); - } - - // If onwriteend callback - if (typeof me.onwriteend === "function") { - me.onwriteend(new ProgressEvent("writeend", {"target":me})); - } - }, "File", "write", [path, data, this.position, isBinary]); -}; - -module.exports = { - write: write -}; - -require("cordova/exec/proxy").add("FileWriter", module.exports); diff --git a/plugins/cordova-plugin-file/www/ubuntu/fileSystems-roots.js b/plugins/cordova-plugin-file/www/ubuntu/fileSystems-roots.js deleted file mode 100644 index e132a959..00000000 --- a/plugins/cordova-plugin-file/www/ubuntu/fileSystems-roots.js +++ /dev/null @@ -1,53 +0,0 @@ -/* - * - * 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. - * -*/ - -var fsMap = null; -var FileSystem = require('./FileSystem'); -var LocalFileSystem = require('./LocalFileSystem'); -var exec = require('cordova/exec'); - -var requestFileSystem = function(type, size, successCallback) { - var success = function(file_system) { - if (file_system) { - if (successCallback) { - fs = new FileSystem(file_system.name, file_system.root); - successCallback(fs); - } - } - }; - exec(success, null, "File", "requestFileSystem", [type, size]); -}; - -require('./fileSystems').getFs = function(name, callback) { - if (fsMap) { - callback(fsMap[name]); - } else { - requestFileSystem(LocalFileSystem.PERSISTENT, 1, function(fs) { - requestFileSystem(LocalFileSystem.TEMPORARY, 1, function(tmp) { - fsMap = {}; - fsMap[tmp.name] = tmp; - fsMap[fs.name] = fs; - callback(fsMap[name]); - }); - }); - } -}; - diff --git a/plugins/cordova-plugin-file/www/wp/FileUploadOptions.js b/plugins/cordova-plugin-file/www/wp/FileUploadOptions.js deleted file mode 100644 index 696573ab..00000000 --- a/plugins/cordova-plugin-file/www/wp/FileUploadOptions.js +++ /dev/null @@ -1,49 +0,0 @@ -/* - * - * 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. - * -*/ - -/** - * Options to customize the HTTP request used to upload files. - * @constructor - * @param fileKey {String} Name of file request parameter. - * @param fileName {String} Filename to be used by the server. Defaults to image.jpg. - * @param mimeType {String} Mimetype of the uploaded file. Defaults to image/jpeg. - * @param params {Object} Object with key: value params to send to the server. - */ -var FileUploadOptions = function(fileKey, fileName, mimeType, params, headers, httpMethod) { - this.fileKey = fileKey || null; - this.fileName = fileName || null; - this.mimeType = mimeType || null; - this.headers = headers || null; - this.httpMethod = httpMethod || null; - - if(params && typeof params != typeof "") { - var arrParams = []; - for(var v in params) { - arrParams.push(v + "=" + params[v]); - } - this.params = encodeURIComponent(arrParams.join("&")); - } - else { - this.params = params || null; - } -}; - -module.exports = FileUploadOptions; |
