aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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 // 560 //
474 xhr.open("GET", serviceURL, false); 561 xhr.open("GET", serviceURL, false);
@@ -526,7 +613,7 @@ exports.CoreIoApi = Montage.create(Component, {
526 var retValue = { success:null, content:null, status:null }; 613 var retValue = { success:null, content:null, status:null };
527 if(dir && dir.uri && dir.uri.length) { 614 if(dir && dir.uri && dir.uri.length) {
528 try {