Refactor the file-system-access API to be synchronous. Added *Sync equivalents of the file-system APIs. Removed usage of file-system-access within the code.

This commit is contained in:
atanasovg
2015-08-04 16:52:27 +03:00
parent 114118bc7a
commit c683ea44e6
13 changed files with 370 additions and 361 deletions

View File

@@ -1,7 +1,6 @@
import view = require("ui/core/view");
import fs = require("file-system");
import xml = require("xml");
import file_access_module = require("file-system/file-system-access");
import types = require("utils/types");
import componentBuilder = require("ui/builder/component-builder");
import templateBuilderDef = require("ui/builder/template-builder");
@@ -261,15 +260,12 @@ function loadInternal(fileName: string, context?: any): componentBuilder.Compone
// Check if the XML file exists.
if (fs.File.exists(fileName)) {
var fileAccess = new file_access_module.FileSystemAccess();
// Read the XML file.
fileAccess.readText(fileName, result => {
componentModule = parseInternal(result, context);
}, (e) => {
throw new Error("Error loading file " + fileName + " :" + e.message);
});
var file = fs.File.fromPath(fileName);
var onError = function (error) {
throw new Error("Error loading file " + fileName + " :" + error.message);
}
var text = file.readTextSync(onError);
componentModule = parseInternal(text, context);
}
if (componentModule && componentModule.component) {

View File

@@ -5,7 +5,6 @@ import frame = require("ui/frame");
import styleModule = require("ui/styling/style");
import styleScope = require("ui/styling/style-scope");
import fs = require("file-system");
import fileSystemAccess = require("file-system/file-system-access");
import frameCommon = require("ui/frame/frame-common");
import actionBar = require("ui/action-bar");
import dependencyObservable = require("ui/core/dependency-observable");
@@ -131,10 +130,12 @@ export class Page extends contentView.ContentView implements dts.Page {
}
if (!this._cssFiles[cssFileName]) {
if (fs.File.exists(cssFileName)) {
new fileSystemAccess.FileSystemAccess().readText(cssFileName, r => {
var file = fs.File.fromPath(cssFileName);
var text = file.readTextSync();
if (text) {
this._addCssInternal(r, cssFileName);
this._cssFiles[cssFileName] = true;
});
}
}
}
}

View File

@@ -7,9 +7,7 @@ import application = require("application");
import utils = require("utils/utils");
import types = require("utils/types");
import fs = require("file-system");
import file_access_module = require("file-system/file-system-access");
var fileAccess = new file_access_module.FileSystemAccess();
var pattern: RegExp = /url\(('|")(.*?)\1\)/;
export class StyleScope {
@@ -89,9 +87,13 @@ export class StyleScope {
fileName = fs.path.join(fs.knownFolders.currentApp().path, fileName.replace("~/", ""));
}
fileAccess.readText(fileName, result => {
selectors = StyleScope._joinCssSelectorsArrays([selectors, StyleScope.createSelectorsFromCss(result, fileName)]);
});
if (fs.File.exists(fileName)) {
var file = fs.File.fromPath(fileName);
var text = file.readTextSync();
if (text) {
selectors = StyleScope._joinCssSelectorsArrays([selectors, StyleScope.createSelectorsFromCss(text, fileName)]);
}
}
}
}
}