openEventsPlatformApp/plugins/cordova-plugin-file/www/ubuntu/fileSystems-roots.js
plugins/cordova-plugin-file/www/ubuntu/fileSystems-roots.jsRaw
1/*
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements. See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership. The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License. You may obtain a copy of the License at
10 *
11 * http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied. See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20*/
21
22var fsMap = null;
23var FileSystem = require('./FileSystem');
24var LocalFileSystem = require('./LocalFileSystem');
25var exec = require('cordova/exec');
26
27var requestFileSystem = function(type, size, successCallback) {
28 var success = function(file_system) {
29 if (file_system) {
30 if (successCallback) {
31 var fs = new FileSystem(file_system.name, file_system.root);
32 successCallback(fs);
33 }
34 }
35 };
36 exec(success, null, "File", "requestFileSystem", [type, size]);
37};
38
39require('./fileSystems').getFs = function(name, callback) {
40 if (fsMap) {
41 callback(fsMap[name]);
42 } else {
43 requestFileSystem(LocalFileSystem.PERSISTENT, 1, function(fs) {
44 requestFileSystem(LocalFileSystem.TEMPORARY, 1, function(tmp) {
45 fsMap = {};
46 fsMap[tmp.name] = tmp;
47 fsMap[fs.name] = fs;
48 callback(fsMap[name]);
49 });
50 });
51 }
52};
53