aboutsummaryrefslogtreecommitdiff
path: root/js/io/system
diff options
context:
space:
mode:
authorJose Antonio Marquez2012-01-30 18:19:00 -0800
committerJose Antonio Marquez2012-01-30 18:19:00 -0800
commit3b4291c783c4b8fb07f111a240049069277f3c49 (patch)
tree71ebcb715ac1d394b9d36822176cc44c60f74294 /js/io/system
parent2f61dfca4466661e1ea23888675a86b601b58c63 (diff)
downloadninja-3b4291c783c4b8fb07f111a240049069277f3c49.tar.gz
Core API initialization routine
Setting up the core API routine to check for cloud API availability. Also cleaned up template files for IO and set up initial string contents.
Diffstat (limited to 'js/io/system')
-rwxr-xr-xjs/io/system/coreioapi.js58
-rwxr-xr-xjs/io/system/fileio.js8
2 files changed, 51 insertions, 15 deletions
diff --git a/js/io/system/coreioapi.js b/js/io/system/coreioapi.js
index a10063f5..33c7bc28 100755
--- a/js/io/system/coreioapi.js
+++ b/js/io/system/coreioapi.js
@@ -24,7 +24,7 @@ exports.CoreIoApi = Montage.create(Component, {
24 //Getting URL from local storage 24 //Getting URL from local storage
25 this.rootUrl = window.localStorage['ioRootUrl']; 25 this.rootUrl = window.localStorage['ioRootUrl'];
26 //Checks for IO API to be active 26 //Checks for IO API to be active
27 this.ioServiceDetected = this.isIoServiceActive(); 27 this.ioServiceDetected = this.cloudAvailable();
28 // 28 //
29 console.log('FileIO: localStorage URL detected | IO Service Detected: '+ this.ioServiceDetected); 29 console.log('FileIO: localStorage URL detected | IO Service Detected: '+ this.ioServiceDetected);
30 // 30 //
@@ -32,7 +32,7 @@ exports.CoreIoApi = Montage.create(Component, {
32 //TODO: Remove, automatically prompt user on welcome 32 //TODO: Remove, automatically prompt user on welcome
33 this.rootUrl = 'http://localhost:16380'; 33 this.rootUrl = 'http://localhost:16380';
34 //TODO: Changed to false, welcome screen prompts user 34 //TODO: Changed to false, welcome screen prompts user
35 this.ioServiceDetected = this.isIoServiceActive(); 35 this.ioServiceDetected = this.cloudAvailable();
36 // 36 //
37 console.log('FileIO: localStorage URL NOT detected | IO Service Detected: '+ this.ioServiceDetected); 37 console.log('FileIO: localStorage URL NOT detected | IO Service Detected: '+ this.ioServiceDetected);
38 // 38 //
@@ -41,13 +41,16 @@ exports.CoreIoApi = Montage.create(Component, {
41 }, 41 },
42 //////////////////////////////////////////////////////////////////// 42 ////////////////////////////////////////////////////////////////////
43 //Method to check status of I/O API, will return false if not active 43 //Method to check status of I/O API, will return false if not active
44 isIoServiceActive: { 44 cloudAvailable: {
45 enumerable: false, 45 enumerable: false,
46 value: function () { 46 value: function () {
47 //Doing a directory root check, a 200 status means running 47 //
48 if (this.getDirectoryContents({uri:'/'}).status === 200) { 48 if (this.getCloudStatus().status === 200) {
49 //Active
49 return true; 50 return true;
50 } else { 51 } else {
52 //Inactive
53 //TODO: Logic to prompt the user for cloud, otherwise return false
51 return false; 54 return false;
52 } 55 }
53 } 56 }
@@ -83,22 +86,21 @@ exports.CoreIoApi = Montage.create(Component, {
83 return this._rootUrl; 86 return this._rootUrl;
84 }, 87 },
85 set: function(value) { 88 set: function(value) {
86 this._rootUrl = value; 89 this._rootUrl = window.localStorage["ioRootUrl"] = value;
87 window.localStorage["ioRootUrl"] = value;
88 } 90 }
89 }, 91 },
90 //////////////////////////////////////////////////////////////////// 92 ////////////////////////////////////////////////////////////////////
91 //API service URL 93 //API service URL
92 _apiServiceURL: { 94 _apiServiceURL: {
93 enumerable: false, 95 enumerable: false,
94 value: '/' 96 value: '/cloudstatus'
95 }, 97 },
96 //////////////////////////////////////////////////////////////////// 98 ////////////////////////////////////////////////////////////////////
97 // 99 //
98 apiServiceURL: { 100 apiServiceURL: {
99 enumerable: false, 101 enumerable: false,
100 get: function() { 102 get: function() {
101 return this.rootUrl+this._apiServiceURL; 103 return String(this.rootUrl+this._apiServiceURL);
102 }, 104 },
103 set: function(value) { 105 set: function(value) {
104 this._apiServiceURL = value; 106 this._apiServiceURL = value;
@@ -115,7 +117,7 @@ exports.CoreIoApi = Montage.create(Component, {
115 fileServiceURL: { 117 fileServiceURL: {
116 enumerable: false, 118 enumerable: false,
117 get: function() { 119 get: function() {
118 return this.rootUrl+this._fileServiceURL; 120 return String(this.rootUrl+this._fileServiceURL);
119 }, 121 },
120 set: function(value) { 122 set: function(value) {
121 this._fileServiceURL = value; 123 this._fileServiceURL = value;
@@ -132,7 +134,7 @@ exports.CoreIoApi = Montage.create(Component, {
132 directoryServiceURL: { 134 directoryServiceURL: {
133 enumerable: false, 135 enumerable: false,
134 get: function() { 136 get: function() {
135 return this.rootUrl+this._directoryServiceURL; 137 return String(this.rootUrl+this._directoryServiceURL);
136 }, 138 },
137 set: function(value) { 139 set: function(value) {
138 this._directoryServiceURL = value; 140 this._directoryServiceURL = value;
@@ -921,10 +923,38 @@ exports.CoreIoApi = Montage.create(Component, {
921 } 923 }
922 return retValue; 924 return retValue;
923 } 925 }
926 },
927 ////////////////////////////////////////////////////////////////////
928 //
929 getCloudStatus: {
930 enumerable: false,
931 writable:false,
932 value: function() {
933 //
934 var retValue = {success:null, status:null};
935 //
936 try {
937 var serviceURL = this._prepareServiceURL(this.apiServiceURL, '/'),
938 xhr = new XMLHttpRequest();
939 //
940 xhr.open("GET", serviceURL, false);
941 xhr.send();
942 //
943 if (xhr.readyState === 4) {
944 retValue.status = xhr.status;
945 retValue.success = true;
946 }
947 }
948 catch(error) {
949 xhr = null;
950 retValue.success = false;
951 }
952 //
953 return retValue;
954 }
924 } 955 }
925 956 ////////////////////////////////////////////////////////////////////
926 957 ////////////////////////////////////////////////////////////////////
927
928}); 958});
929//////////////////////////////////////////////////////////////////////// 959////////////////////////////////////////////////////////////////////////
930//////////////////////////////////////////////////////////////////////// \ No newline at end of file 960//////////////////////////////////////////////////////////////////////// \ No newline at end of file
diff --git a/js/io/system/fileio.js b/js/io/system/fileio.js
index b3158a68..38ab05e8 100755
--- a/js/io/system/fileio.js
+++ b/js/io/system/fileio.js
@@ -28,7 +28,7 @@ exports.FileIo = Montage.create(Object.prototype, {
28 enumerable: true, 28 enumerable: true,
29 value: function(file) { 29 value: function(file) {
30 //Checking for API to be available 30 //Checking for API to be available
31 if (!CoreIoApi.isIoServiceActive()) { 31 if (!CoreIoApi.cloudAvailable()) {
32 //API not available, no IO action taken 32 //API not available, no IO action taken
33 return null; 33 return null;
34 } 34 }
@@ -78,6 +78,12 @@ exports.FileIo = Montage.create(Object.prototype, {
78 value: function() { 78 value: function() {
79 // 79 //
80 } 80 }
81 },
82 infoFile: {
83 enumerable: true,
84 value: function() {
85 //
86 }
81 } 87 }
82 88
83 89