X-Git-Url: http://git.roojs.org/?p=app.Builder.js;a=blobdiff_plain;f=File.js;h=2726e0ebd5aea9feaaee9243ad3cbe543d9f6c8c;hp=a741c15743148b8ded779f41b1a2eb7fd5a0e528;hb=a2128b349140be7a014ce977f171abb7377e1157;hpb=e70637eb241e7344ec01ceba23444633bad31584 diff --git a/File.js b/File.js index a741c1574..2726e0ebd 100644 --- a/File.js +++ b/File.js @@ -22,20 +22,41 @@ var File = { SEPARATOR : '/', - join : function () { - // fixme! - imports['String.js'].load(String); + // fixme - this needs a bitter location.. + // they where in a string class before, but overriding String methods is not a good normally a good idea.. + + rtrim : function (s,toTrim) { + if (s.substr(s.length - toTrim.length) == toTrim) { + return s.slice(0, s.length - toTrim.length); + } + + return s; + }, + trim : function (s,toTrim) { + var out = s.ltrim(toTrim); + out = out.rtrim(toTrim); + return out; + }, + + ltrim : function (s, toTrim) { + if (s.substr(0, toTrim.length) == toTrim) { + return s.slice(toTrim.length); + } + return s; + }, + + join : function () { var out = ""; for (var i = 0; i < arguments.length; i++) { if (i == 0) { - out += arguments[i].rtrim(File.SEPARATOR); + out += this.rtrim(arguments[i], File.SEPARATOR); } else if (i == arguments.length - 1) { - out += File.SEPARATOR + arguments[i].ltrim(File.SEPARATOR); + out += File.SEPARATOR + this.ltrim(arguments[i], File.SEPARATOR); } else { - out += File.SEPARATOR + arguments[i].trim(File.SEPARATOR); + out += File.SEPARATOR + this.trim(arguments[i], File.SEPARATOR); } } return out; @@ -107,13 +128,12 @@ var File = { * */ write : function (path, string) { + var d = new Date(); var f = Gio.file_new_for_path(String(path)); - var data_out = new Gio.DataOutputStream({ - //base_stream: f.replace(null, false, Gio.FileCreateFlags.NONE, null) - base_stream: f.replace_async(null, false, Gio.FileCreateFlags.NONE, 0, null) - }); + var data_out = new Gio.DataOutputStream({base_stream:f.replace(null, false, Gio.FileCreateFlags.NONE, null)}); data_out.put_string(string, null); data_out.close(null); + print("WRITE : " + path + " in " + ((new Date()) - d) + 'ms'); }, /**