aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Antonio Marquez2012-01-29 17:27:29 -0800
committerJose Antonio Marquez2012-01-29 17:27:29 -0800
commit4d5f9c451524829f55ddf26642cb9fc28228b6ce (patch)
tree9d416a5554ee88f4571b79fde8f025a1da0fa326
parente9939af9ea90ff74859af21d2029621f8e8f8252 (diff)
downloadninja-4d5f9c451524829f55ddf26642cb9fc28228b6ce.tar.gz
Core API clean up
Cleaning up File IO core API and setting up to use URL from welcome screen or local storage. Class will perform an automatic check for IO API to be active, otherwise prompt user.
-rwxr-xr-xjs/io/system/coreioapi.js127
-rwxr-xr-xjs/ninja.reel/ninja.html6
2 files changed, 113 insertions, 20 deletions
diff --git a/js/io/system/coreioapi.js b/js/io/system/coreioapi.js
index c920d8cd..1585fc33 100755
--- a/js/io/system/coreioapi.js
+++ b/js/io/system/coreioapi.js
@@ -16,16 +16,103 @@ var Montage = require("montage/core/core").Montage,
16//Exporting as Project I/O 16//Exporting as Project I/O
17exports.CoreIoApi = Montage.create(Component, { 17exports.CoreIoApi = Montage.create(Component, {
18 //////////////////////////////////////////////////////////////////// 18 ////////////////////////////////////////////////////////////////////
19 // private property containing the file service URL to use for all file IO calls 19 //
20 deserializedFromTemplate: {
21 enumerable: false,
22 value: function () {
23 ////////////////////////////////////////////////////////////
24
25 //TODO: Add logic for getting rooUrl from local storage
26
27 ////////////////////////////////////////////////////////////
28
29
30
31 //Checking for status of I/O API
32 this.ioDetected = this.isActive();
33 //TODO: Add welcome screen logic, probably externally
34 }
35 },
36 ////////////////////////////////////////////////////////////////////
37 //Method to check status of I/O API, will return false if not active
38 isActive: {
39 enumerable: false,
40 value: function () {
41 //Doing a directory root check, a 200 status means running
42 if (this.getDirectoryContents({uri:'/'}).status === 200) {
43 return true;
44 } else {
45 return false;
46 }
47 }
48 },
49 ////////////////////////////////////////////////////////////////////
50 //Root API URL
51 _ioDetected: {
52 enumerable: false,
53 value: false
54 },
55 ////////////////////////////////////////////////////////////////////
56 //
57 ioDetected: {
58 enumerable: false,
59 get: function() {
60 return this._ioDetected;
61 },
62 set: function(value) {
63 this._ioDetected = value;
64 }
65 },
66 ////////////////////////////////////////////////////////////////////
67 //Root API URL
68 _rootUrl: {
69 enumerable: false,
70 value: 'http://localhost:16380'
71 },
72 ////////////////////////////////////////////////////////////////////
73 //
74 rootUrl: {
75 enumerable: false,
76 get: function() {
77 return this._rootUrl;
78 },
79 set: function(value) {
80 this._rootUrl = value;
81 }
82 },
83 ////////////////////////////////////////////////////////////////////
84 //File service API URL
20 _fileServiceURL: { 85 _fileServiceURL: {
21 enumerable: false, 86 enumerable: false,
22 value: "http://localhost:16380/file" 87 value: '/file'
88 },
89 ////////////////////////////////////////////////////////////////////
90 //
91 fileServiceURL: {
92 enumerable: false,
93 get: function() {
94 return this.rootUrl+this._fileServiceURL;
95 },
96 set: function(value) {
97 this._fileServiceURL = value;
98 }
23 }, 99 },
24 //////////////////////////////////////////////////////////////////// 100 ////////////////////////////////////////////////////////////////////
25 // private property containing the directory service URL to use for all file IO calls 101 //Directory service API URL
26 _directoryServiceURL: { 102 _directoryServiceURL: {
27 enumerable: false, 103 enumerable: false,
28 value: "http://localhost:16380/directory" 104 value: '/directory'
105 },
106 ////////////////////////////////////////////////////////////////////
107 //
108 directoryServiceURL: {
109 enumerable: false,
110 get: function() {
111 return this.rootUrl+this._directoryServiceURL;
112 },
113 set: function(value) {
114 this._directoryServiceURL = value;
115 }
29 }, 116 },
30 //////////////////////////////////////////////////////////////////// 117 ////////////////////////////////////////////////////////////////////
31 // private helper to parse URIs and append them to the service URL 118 // private helper to parse URIs and append them to the service URL
@@ -68,7 +155,7 @@ exports.CoreIoApi = Montage.create(Component, {
68 // 155 //
69 if(file && file.uri && file.uri.length) { 156 if(file && file.uri && file.uri.length) {
70 try { 157 try {
71 var serviceURL = this._prepareServiceURL(this._fileServiceURL, file.uri), 158 var serviceURL = this._prepareServiceURL(this.fileServiceURL, file.uri),
72 xhr = new XMLHttpRequest(); 159 xhr = new XMLHttpRequest();
73 // 160 //
74 xhr.open("GET", serviceURL, false); 161 xhr.open("GET", serviceURL, false);
@@ -111,7 +198,7 @@ exports.CoreIoApi = Montage.create(Component, {
111 var retValue = { success:null, status:null }; 198 var retValue = { success:null, status:null };
112 if(file && file.uri && file.uri.length) { 199 if(file && file.uri && file.uri.length) {
113 try { 200 try {
114 var serviceURL = this._prepareServiceURL(this._fileServiceURL, file.uri), 201 var serviceURL = this._prepareServiceURL(this.fileServiceURL, file.uri),
115 xhr = new XMLHttpRequest(); 202 xhr = new XMLHttpRequest();
116 // 203 //
117 xhr.open("POST", serviceURL, false); 204 xhr.open("POST", serviceURL, false);
@@ -161,7 +248,7 @@ exports.CoreIoApi = Montage.create(Component, {
161 var retValue = { success:null, status:null }; 248 var retValue = { success:null, status:null };
162 if(file && file.uri && file.uri.length && file.contents && file.contents.length) { 249 if(file && file.uri && file.uri.length && file.contents && file.contents.length) {
163 try { 250 try {
164 var serviceURL = this._prepareServiceURL(this._fileServiceURL, file.uri), 251 var serviceURL = this._prepareServiceURL(this.fileServiceURL, file.uri),
165 xhr = new XMLHttpRequest(); 252 xhr = new XMLHttpRequest();
166 // 253 //
167 xhr.open("PUT", serviceURL, false); 254 xhr.open("PUT", serviceURL, false);
@@ -208,7 +295,7 @@ exports.CoreIoApi = Montage.create(Component, {
208 var retValue = { success:null, status:null }; 295 var retValue = { success:null, status:null };
209 if(file && file.sourceUri && file.sourceUri.length && file.destUri && file.destUri.length) { 296 if(file && file.sourceUri && file.sourceUri.length && file.destUri && file.destUri.length) {
210 try { 297 try {
211 var serviceURL = this._prepareServiceURL(this._fileServiceURL, file.destUri), 298 var serviceURL = this._prepareServiceURL(this.fileServiceURL, file.destUri),
212 xhr = new XMLHttpRequest(); 299 xhr = new XMLHttpRequest();
213 // 300 //
214 xhr.open("PUT", serviceURL, false); 301 xhr.open("PUT", serviceURL, false);
@@ -256,7 +343,7 @@ exports.CoreIoApi = Montage.create(Component, {
256 var retValue = { success:null, status:null }; 343 var retValue = { success:null, status:null };
257 if(file && file.sourceUri && file.sourceUri.length && file.destUri && file.destUri.length) { 344 if(file && file.sourceUri && file.sourceUri.length && file.destUri && file.destUri.length) {
258 try { 345 try {
259 var serviceURL = this._prepareServiceURL(this._fileServiceURL, file.destUri), 346 var serviceURL = this._prepareServiceURL(this.fileServiceURL, file.destUri),
260 xhr = new XMLHttpRequest(); 347 xhr = new XMLHttpRequest();
261 // 348 //
262 xhr.open("PUT", serviceURL, false); 349 xhr.open("PUT", serviceURL, false);
@@ -302,7 +389,7 @@ exports.CoreIoApi = Montage.create(Component, {
302 var retValue = { success:null, status:null }; 389 var retValue = { success:null, status:null };
303 if(file && file.uri && file.uri.length) { 390 if(file && file.uri && file.uri.length) {
304 try { 391 try {
305 var serviceURL = this._prepareServiceURL(this._fileServiceURL, file.uri), 392 var serviceURL = this._prepareServiceURL(this.fileServiceURL, file.uri),
306 xhr = new XMLHttpRequest(); 393 xhr = new XMLHttpRequest();
307 // 394 //
308 xhr.open("DELETE", serviceURL, false); 395 xhr.open("DELETE", serviceURL, false);
@@ -344,7 +431,7 @@ exports.CoreIoApi = Montage.create(Component, {
344 // 431 //
345 if(file && file.uri && file.uri.length) { 432 if(file && file.uri && file.uri.length) {
346 try { 433 try {
347 var serviceURL = this._prepareServiceURL(this._fileServiceURL, file.uri), 434 var serviceURL = this._prepareServiceURL(this.fileServiceURL, file.uri),
348 xhr = new XMLHttpRequest(); 435 xhr = new XMLHttpRequest();
349 // 436 //
350 xhr.open("GET", serviceURL, false); 437 xhr.open("GET", serviceURL, false);
@@ -386,7 +473,7 @@ exports.CoreIoApi = Montage.create(Component, {
386 var retValue = { success:null, status:null }; 473 var retValue = { success:null, status:null };
387 if(dir && dir.uri && dir.uri.length) { 474 if(dir && dir.uri && dir.uri.length) {
388 try { 475 try {
389 var serviceURL = this._prepareServiceURL(this._directoryServiceURL, dir.uri), 476 var serviceURL = this._prepareServiceURL(this.directoryServiceURL, dir.uri),
390 xhr = new XMLHttpRequest(); 477 xhr = new XMLHttpRequest();
391 // 478 //
392 xhr.open("POST", serviceURL, false); 479 xhr.open("POST", serviceURL, false);
@@ -425,7 +512,7 @@ exports.CoreIoApi = Montage.create(Component, {
425 var retValue = { success:null, status:null }; 512 var retValue = { success:null, status:null };
426 if(dir && dir.uri && dir.uri.length) { 513 if(dir && dir.uri && dir.uri.length) {
427 try { 514 try {
428 var serviceURL = this._prepareServiceURL(this._directoryServiceURL, dir.uri), 515 var serviceURL = this._prepareServiceURL(this.directoryServiceURL, dir.uri),
429 xhr = new XMLHttpRequest(); 516 xhr = new XMLHttpRequest();
430 // 517 //
431 xhr.open("DELETE", serviceURL, false); 518 xhr.open("DELETE", serviceURL, false);
@@ -468,7 +555,7 @@ exports.CoreIoApi = Montage.create(Component, {
468 var retValue = { success:null, content:null, status:null }; 555 var retValue = { success:null, content:null, status:null };
469 if(!!dir && (typeof dir.uri !== "undefined") && (dir.uri !== null) ) { 556 if(!!dir && (typeof dir.uri !== "undefined") && (dir.uri !== null) ) {
470 try { 557 try {
471 var serviceURL = this._prepareServiceURL(this._directoryServiceURL, dir.uri), 558 var serviceURL = this._prepareServiceURL(this.directoryServiceURL, dir.uri),
472 xhr = new XMLHttpRequest(); 559 xhr = new XMLHttpRequest();
473 //