airavata-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sma...@apache.org
Subject svn commit: r1509067 - in /airavata/sandbox/gsoc2013/app: ./ scripts/ scripts/controllers/ styles/ views/
Date Thu, 01 Aug 2013 01:59:48 GMT
Author: smarru
Date: Thu Aug  1 01:59:47 2013
New Revision: 1509067

URL: http://svn.apache.org/r1509067
Log:
Sanchit's patch for AIRAVATA-889

Added:
    airavata/sandbox/gsoc2013/app/scripts/controllers/FileTransfer.js
    airavata/sandbox/gsoc2013/app/scripts/controllers/WorkflowLaunch.js
    airavata/sandbox/gsoc2013/app/scripts/controllers/WorkflowMonitoring.js
    airavata/sandbox/gsoc2013/app/views/builder.addHost.html
    airavata/sandbox/gsoc2013/app/views/builder.globusFileTransfer.html
    airavata/sandbox/gsoc2013/app/views/builder.launchWorkflow.html
    airavata/sandbox/gsoc2013/app/views/builder.newApplicationDeployment.html
    airavata/sandbox/gsoc2013/app/views/builder.workflowMonitoring.html
    airavata/sandbox/gsoc2013/app/views/builder.workflowProperties.html
    airavata/sandbox/gsoc2013/app/views/monitor.navbar.html
    airavata/sandbox/gsoc2013/app/views/monitor.sidenavbar.html
Removed:
    airavata/sandbox/gsoc2013/app/views/exec.launchWorkflow.html
Modified:
    airavata/sandbox/gsoc2013/app/index.html
    airavata/sandbox/gsoc2013/app/scripts/app.js
    airavata/sandbox/gsoc2013/app/scripts/controllers/RegistryConnection.js
    airavata/sandbox/gsoc2013/app/scripts/controllers/RegistryDescriptors.js
    airavata/sandbox/gsoc2013/app/styles/main.scss
    airavata/sandbox/gsoc2013/app/views/exec.canvas.html
    airavata/sandbox/gsoc2013/app/views/exec.navbar.html
    airavata/sandbox/gsoc2013/app/views/exec.sidenavbar.html
    airavata/sandbox/gsoc2013/app/views/index.canvas.html
    airavata/sandbox/gsoc2013/app/views/index.navbar.html
    airavata/sandbox/gsoc2013/app/views/index.sidenavbar.html

Modified: airavata/sandbox/gsoc2013/app/index.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/index.html?rev=1509067&r1=1509066&r2=1509067&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/index.html (original)
+++ airavata/sandbox/gsoc2013/app/index.html Thu Aug  1 01:59:47 2013
@@ -91,8 +91,12 @@ under the License.
   <script src="scripts/controllers/RegistryConnection.js"></script>
   <script src="scripts/controllers/WorkflowCreator.js"></script>
   <script src="scripts/registryAPI.js"></script>
-  <script src="scripts/controllers/executionInterfaceCntl.js"></script>
+  <script src="scripts/controllers/WorkflowLaunch.js"></script>
   <script src="scripts/controllers/RegistryDescriptors.js"></script>
+  <script src="scripts/controllers/FileTransfer.js"></script>
+  <script src="scripts/controllers/WorkflowMonitoring.js"></script>
+  <script src="scripts/NodeSubscriber.js"></script>
+  <script src="scripts/workflowAPI.js"></script>
   <!-- endbuild -->
 
   <!-- build:js scripts/plugins.js -->

Modified: airavata/sandbox/gsoc2013/app/scripts/app.js
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/scripts/app.js?rev=1509067&r1=1509066&r2=1509067&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/scripts/app.js (original)
+++ airavata/sandbox/gsoc2013/app/scripts/app.js Thu Aug  1 01:59:47 2013
@@ -74,13 +74,68 @@ app.config(function ($stateProvider, $ro
         templateUrl: 'views/exec.canvas.html'
       }
     }
+  })
+  .state('exec.addhost', {
+    url:'/addHost',
+      views:{
+        'addHost':{
+          templateUrl: 'views/builder.addHost.html'
+      }
+    }
+  })
+  .state('exec.launchWorkflow', {
+    url:'/launchWorkflow',
+    views:{
+      'builder':{
+        templateUrl: 'views/builder.launchWorkflow.html'
+      }
+    }
+  })
+  .state('exec.newApplicationDeployment', {
+    url:'/newApplicationDeployment',
+    views:{
+      'builder':{
+          templateUrl: 'views/builder.newApplicationDeployment.html'
+      }
+    }
+  })
+  .state('exec.globusFileTransfer', {
+    url:'/globusFileTransfer',
+    views:{
+      'builder':{
+        templateUrl: 'views/builder.globusFileTransfer.html'
+      }
+    }
+  })
+  .state('exec.workflowMonitoring', {
+      url:'/workflowMonitoring',
+      views:{
+        'builder':{
+          templateUrl: 'views/builder.workflowMonitoring.html'
+        }
+      }
+    })
+  .state('exec.workflowProperties', {
+    url:'/workflowProperties',
+    views:{
+      'builder':{
+        templateUrl: 'views/builder.workflowProperties.html'
+      }
+    }
   });
+  $stateProvider.state('contacts', {
+    templateUrl: function (stateParams){
+        return '/partials/contacts.' + stateParams.filterBy + '.html';
+    },
+    controller: 'ContactsCtrl'
+  });
+
   // Views corresponding to the workflow monitoring interface
   $stateProvider.state('monitor', {
     url: '/monitor',
     views: {
       'navbar': {
-        templateUrl: 'views/monitor.navbar.html'
+        templateUrl: 'views/exec.navbar.html'
       },
       'sidenavbar': {
         templateUrl: 'views/monitor.sidenavbar.html'

Added: airavata/sandbox/gsoc2013/app/scripts/controllers/FileTransfer.js
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/scripts/controllers/FileTransfer.js?rev=1509067&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/scripts/controllers/FileTransfer.js (added)
+++ airavata/sandbox/gsoc2013/app/scripts/controllers/FileTransfer.js Thu Aug  1 01:59:47 2013
@@ -0,0 +1,65 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * 'License'); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * 'AS IS' BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+'use strict';
+
+/*
+ * Controller for globus file transfer
+ *
+ */
+angular.module('WebUI').controller('FileTransfer', function ($scope, $http, MessageQueue) {
+
+  //To enable the Cross Origin Resource Sharing in application
+  $http.defaults.useXDomain = true;
+
+  // Data required for globus file tranfer
+  $scope.fileTransfer={
+    'userName':'',
+    'caFile':'',
+    'certificateFile':'',
+    'keyFile':'',
+    'sourceEndpoint':'',
+    'sourceFilePath':'',
+    'destinationEndPoint':'',
+    'destinationFilePath':''
+  };
+  // Callback to Add Globus File Transfer Details
+  $scope.saveGlobusFileTransfer = function () {
+    // Test connection to save globus file transfer details
+    // TODO: Call some API method to make HTTP request
+
+    // Alert user to the successful creation and on success notify all other controlers
+    if ($scope.fileTransferForm.$valid){
+      MessageQueue.publish('alerts', [{
+        'head': 'Host ' + $scope.fileTransfer.userName +' was added!',
+        'msg': 'File transfer details has been added to the registry.',
+        'type': 'success'
+      }]);
+    }
+    else{
+      MessageQueue.publish('alerts', [{
+        'head': 'Validation Error',
+        'msg': 'There is error in File Transfer Form validation.',
+        'type': 'error'
+      }]);
+    };
+  }
+});
+

Modified: airavata/sandbox/gsoc2013/app/scripts/controllers/RegistryConnection.js
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/scripts/controllers/RegistryConnection.js?rev=1509067&r1=1509066&r2=1509067&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/scripts/controllers/RegistryConnection.js (original)
+++ airavata/sandbox/gsoc2013/app/scripts/controllers/RegistryConnection.js Thu Aug  1 01:59:47 2013
@@ -35,6 +35,9 @@ angular.module('WebUI').controller('Regi
   // Is a new user being registered?
   $scope.newUserFlag = false;
   $scope.confirmPassword = 'admin';
+  // Is a new user being registered?
+  $scope.newUserFlag = false;
+  $scope.confirmPassword = 'admin';
 
   // Callback to test connection
   $scope.connectToRegistry = function () {
@@ -60,6 +63,7 @@ angular.module('WebUI').controller('Regi
     // TODO Check users connection to registry
     //$scope.basicRegistry= new BasicRegistry();
     //$scope.res=$scope.basicRegistry.setAiravataUser($scope.registry.username);
+    // TODO Check users connection to registry
     $http({ // Load the initial data
       url: 'http://localhost:8080/airavata-registry/api/basicregistry/set/serviceURL'+'?connectionurl='+$scope.registry.url,
       method: 'GET',

Modified: airavata/sandbox/gsoc2013/app/scripts/controllers/RegistryDescriptors.js
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/scripts/controllers/RegistryDescriptors.js?rev=1509067&r1=1509066&r2=1509067&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/scripts/controllers/RegistryDescriptors.js (original)
+++ airavata/sandbox/gsoc2013/app/scripts/controllers/RegistryDescriptors.js Thu Aug  1 01:59:47 2013
@@ -28,27 +28,42 @@ angular.module('WebUI').controller('Regi
 
   //To enable the Cross Origin Resource Sharing in application
   $http.defaults.useXDomain = true;
-
+  // Resource Protocols available for the host
+  $scope.protocols=[
+    {name:'Local',configuration:false},
+    {name:'SSH',configuration:false},
+    {name:'Globus',configuration:true},
+    {name:'Unicore',configuration:true},
+    {name:'Amazone EC2',configuration:false},
+    {name:'Hadoop',configuration:false}
+  ];
   // Data required to add new host descriptor to the registry
   $scope.addHost={
     'hostId':'',
     'hostAddress':'',
-    'resourceProtocol':['Local','SSH','Globus','Unicore','Amazone EC2','Hadoop'],
+    'resourceProtocol':'',
     'gramEndpoint':'',
     'gridFTPEndpoint':''
   };
-
   // Callback to Add Host Descriptor to Registry
   $scope.saveHostDescriptor = function () {
     // Test connection to register new user
     // TODO: Call some API method to make HTTP request
 
     // Alert user to the successful creation and on success notify all other controlers
-    MessageQueue.publish('Host Descriptor', $scope.addHost);
-    MessageQueue.publish('alerts', [{
-      'head': 'New Host Descriptor Added',
-      'msg': $scope.addHost.hostId +' added successfully',
-      'type': 'success'
-    }]);
-  };
+    if ($scope.addhostForm.$valid){
+      MessageQueue.publish('alerts', [{
+        'head': 'Host ' + $scope.addHost.hostId +' was added!',
+        'msg': 'A new Host Descriptor has been added to the registry.',
+        'type': 'success'
+      }]);
+    }
+    else{
+      MessageQueue.publish('alerts', [{
+        'head': 'Validation Error',
+        'msg': 'There is error in form validation.',
+        'type': 'error'
+      }]);
+    };
+  }
 });

Added: airavata/sandbox/gsoc2013/app/scripts/controllers/WorkflowLaunch.js
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/scripts/controllers/WorkflowLaunch.js?rev=1509067&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/scripts/controllers/WorkflowLaunch.js (added)
+++ airavata/sandbox/gsoc2013/app/scripts/controllers/WorkflowLaunch.js Thu Aug  1 01:59:47 2013
@@ -0,0 +1,116 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * 'License'); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * 'AS IS' BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+'use strict';
+
+/*
+ * Controller for workflow related task, edit properties, launch workflow.
+ *
+ */
+angular.module('WebUI').controller('WorkflowLaunch', function ($scope, $http, MessageQueue) {
+
+  //To enable the Cross Origin Resource Sharing in application
+  $http.defaults.useXDomain = true;
+
+  // Data required to launch experiment
+  $scope.isWorkflowOpen=true;
+  $scope.isWorkflowRunning=false;
+  $scope.workflowParams={
+    'workflowInputs':[
+      {"id":"x","name": "X","dataType":"int","value":0},
+      {"id":"y","name": "Y","dataType":"int","value":0}
+    ],
+    'experimentName':'',
+    'workflowInterpreterURL':'',
+    'gFacURL':''
+  };
+
+  //Data required for workflow properties
+  $scope.workflowId=1;
+  $scope.workflowProperties={
+    'name':'',
+    'templateId':'',
+    'instanceId':'',
+    'description':'',
+    'metadata':''
+  }
+
+  //Initial Values of workflow properties
+  $scope.workflowProperties.name='Workflow'+$scope.workflowId;
+  $scope.workflowProperties.templateId='http://extreme.indiana.edu/lead/workflow/'+$scope.workflowProperties.name;
+  $scope.workflowProperties.metadata="<appinfo xmlns="+"http://www.w3.org/2001/XMLSchema"+"></appinfo>";
+
+  //get the inputs for the open workflow to launch run Workflow
+  $scope.getWorkflowInputs=function($scope){
+    // Airavata Client API call to get number of inputs for given template id
+    // TODO: Call some API method to make HTTP request
+  };
+
+  //validate the inputs
+  $scope.validateInputs=function($scope){
+    // Validate the launch workflow parameters
+    // TODO: Call some API method to make HTTP request
+
+  };
+
+  // Callback to launch experiment
+  $scope.runExperiment = function () {
+    // Test connection to register new user
+    // TODO: Call some API method to make HTTP request
+
+    // Alert user to the successful creation and on success notify all other controlers
+    if ($scope.launchWorkflowForm.$valid){
+      MessageQueue.publish('alerts', [{
+        'head': 'Experiment ' + $scope.workflowParams.experimentName +' was Launched!',
+        'msg': 'Experiment was launched successfully.',
+        'type': 'success'
+      }]);
+    }
+    else{
+      MessageQueue.publish('alerts', [{
+        'head': 'Validation Error',
+        'msg': 'There is error in form validation.',
+        'type': 'error'
+      }]);
+    };
+  }
+
+  // Callback to edit workflow properties
+  $scope.saveWorkflowProperties = function () {
+    // Test connection to register new user
+    // TODO: Call some API method to make HTTP request
+
+    // Alert user to the successful creation and on success notify all other controlers
+    if ($scope.workflowPropertiesForm.$valid){
+      MessageQueue.publish('alerts', [{
+        'head': 'Workflow ' + $scope.workflowProperties.name +' was edited!',
+        'msg': 'workflow properties are saved.',
+        'type': 'success'
+      }]);
+    }
+    else{
+      MessageQueue.publish('alerts', [{
+        'head': 'Validation Error',
+        'msg': 'There is error in form validation.',
+        'type': 'error'
+      }]);
+    };
+  }
+});

Added: airavata/sandbox/gsoc2013/app/scripts/controllers/WorkflowMonitoring.js
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/scripts/controllers/WorkflowMonitoring.js?rev=1509067&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/scripts/controllers/WorkflowMonitoring.js (added)
+++ airavata/sandbox/gsoc2013/app/scripts/controllers/WorkflowMonitoring.js Thu Aug  1 01:59:47 2013
@@ -0,0 +1,61 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * 'License'); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * 'AS IS' BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+'use strict';
+
+/*
+ * Controller for workflow monitoring.
+ *
+ */
+angular.module('WebUI').controller('WorkflowMonitoring', function ($scope, $http, MessageQueue) {
+
+  //To enable the Cross Origin Resource Sharing in application
+  $http.defaults.useXDomain = true;
+
+  // Data required for notification configuration
+  $scope.notification={
+    'brokerURL':'http://10.1.66.76:8080/airavata-server/services/EventingService',
+    'topic':'',
+    'messageBoxURL':'http://10.1.66.76:8080/airavata-server/services/MsgBoxService',
+    'pullMode':''
+  }
+
+  // Callback to configure notification
+  $scope.configureNotification = function () {
+    // Test connection for configuration
+    // TODO: Call some API method to make HTTP request
+
+    // Alert user to the successful configuration and on success notify all other controlers
+    if ($scope.notificationConfigurationForm.$valid){
+      MessageQueue.publish('alerts', [{
+        'head': 'Notification Topic ' + $scope.notification.topic +' was configured!',
+        'msg': 'Notification nonfigured successfully.',
+        'type': 'success'
+      }]);
+    }
+    else{
+      MessageQueue.publish('alerts', [{
+        'head': 'Validation Error',
+        'msg': 'There is error in form validation.',
+        'type': 'error'
+      }]);
+    };
+  }
+});

Modified: airavata/sandbox/gsoc2013/app/styles/main.scss
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/styles/main.scss?rev=1509067&r1=1509066&r2=1509067&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/styles/main.scss (original)
+++ airavata/sandbox/gsoc2013/app/styles/main.scss Thu Aug  1 01:59:47 2013
@@ -39,6 +39,8 @@ body {
     float: none;
     padding-left: 5px;
     padding-right: 5px;
+    padding-bottom: 5px;
+    padding-top: 5px;
   }
 }
 
@@ -48,3 +50,8 @@ body {
   border-style: solid;
   border-width: 2px;
 }
+
+/* Styles relating to the executor */
+#executor {
+  padding-left: 35px;
+}

Added: airavata/sandbox/gsoc2013/app/views/builder.addHost.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.addHost.html?rev=1509067&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.addHost.html (added)
+++ airavata/sandbox/gsoc2013/app/views/builder.addHost.html Thu Aug  1 01:59:47 2013
@@ -0,0 +1,61 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<div ng-controller="RegistryDescriptors">
+  <form name="addhostForm" style="padding:10px;" novalidate ng-submit="saveHostDescriptor();">
+    <fieldset>
+      <legend>Register Host</legend>
+
+      <label for="inputHostId">Host Id</label>
+      <input type="text" id="inputHostId" name="hostId" placeholder="Host Id" ng-model="addHost.hostId" ng-pattern="/^[a-zA-Z0-9]{4,10}$/" required>
+      <div class="text-error" ng-show="addhostForm.hostId.$dirty && addhostForm.hostId.$invalid">
+        <small class="text-error" ng-show="addhostForm.hostId.$error.required"> *Required.</small>
+        <small class="text-error" ng-show="addhostForm.hostId.$error.pattern"> Alpha-Numeric values between 4-10 characters.</small>
+      </div>
+
+      <label for="inputHostAddress">Host Address</label>
+      <input type="url" id="inputHostAddress" name="hostAddress" placeholder="Host Address" ng-model="addHost.hostAddress" required>
+      <div class="text-error" ng-show="addhostForm.hostAddress.$dirty && addhostForm.hostAddress.$invalid">
+        <small class="text-error" ng-show="addhostForm.hostAddress.$error.required"> *Required.</small>
+        <small class="text-error" ng-show="addhostForm.hostAddress.$error.url"> URL Expected. </small>
+      </div>
+
+      <label for="resourceProtocol">Resource Protocol</label>
+      <select id="resourceProtocol" name="rp" ng-model="addHost.resourceProtocol" ng-options="protocol.name for protocol in protocols" required>
+        <option value="">-- Select Protocol --</option>
+      </select>
+
+      <label ng-show="addHost.resourceProtocol.configuration" for="gramEndpoint">Gram Endpoint</label>
+      <input type="url" id="gramEndpoint" name="gramep" placeholder="Gram Endpoint" ng-model="addHost.gramEndpoint" ng-show="addHost.resourceProtocol.configuration" ng-required="addHost.resourceProtocol.configuration">
+      <div class="text-error" ng-show="addhostForm.gramep.$dirty && addhostForm.gramep.$invalid">
+        <small class="text-error" ng-show="addhostForm.gramep.$error.required"> *Required.</small>
+        <small class="text-error" ng-show="addhostForm.gramep.$error.url"> URL Expected. </small>
+      </div>
+
+      <label ng-show="addHost.resourceProtocol.configuration" for="gridFTPEndpoint">Grid FTP Endpoint</label>
+      <input type="url" id="gridFTPEndpoint" name="gridep" placeholder="Grid FTP Endpoint" ng-model="addHost.gridFTPEndpoint" ng-show="addHost.resourceProtocol.configuration" ng-required="addHost.resourceProtocol.configuration">
+      <div class="text-error" ng-show="addhostForm.gridep.$dirty && addhostForm.gridep.$invalid">
+        <small class="text-error" ng-show="addhostForm.gridep.$error.required"> *Required.</small>
+        <small class="text-error" ng-show="addhostForm.gridep.$error.url"> URL Expected. </small>
+      </div>
+
+      <button type="submit" ng-disabled="addhostForm.$invalid" class="btn">Save</button>
+      <a class="btn" href="#/exec">Cancel</a>
+    </fieldset>
+  </form>
+</div>

Added: airavata/sandbox/gsoc2013/app/views/builder.globusFileTransfer.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.globusFileTransfer.html?rev=1509067&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.globusFileTransfer.html (added)
+++ airavata/sandbox/gsoc2013/app/views/builder.globusFileTransfer.html Thu Aug  1 01:59:47 2013
@@ -0,0 +1,119 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<div ng-controller="FileTransfer">
+  <form name="fileTransferForm" style="padding:10px;" novalidate ng-submit="saveGlobusFileTransfer();" class="form-horizontal">
+    <fieldset>
+      <legend>Globus File Transfer</legend>
+      <div class="control-group">
+        <label for="inputuserName" class="control-label">User Name</label>
+        <div class="controls">
+          <input type="text" id="inputuserName" name="userName" placeholder="User Name" ng-model="fileTransfer.userName" ng-pattern="/^[a-zA-Z0-9]{4,10}$/" required>
+          <div class="text-error" ng-show="fileTransferForm.userName.$dirty && fileTransferForm.userName.$invalid">
+            <small class="text-error" ng-show="fileTransferForm.userName.$error.required"> *Required.</small>
+            <small class="text-error" ng-show="fileTransferForm.userName.$error.pattern"> Alpha-Numeric values between 4-10 characters.</small>
+          </div>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label for="inputCaFile" class="control-label">CA File</label>
+        <div class="controls">
+          <input type="text" id="inputCaFile" name="caFile" placeholder="CA File" ng-model="fileTransfer.caFile" ng-pattern="/^[a-zA-Z0-9]{4,10}$/" required>
+          <div class="text-error" ng-show="fileTransferForm.caFile.$dirty && fileTransferForm.caFile.$invalid">
+            <small class="text-error" ng-show="fileTransferForm.caFile.$error.required"> *Required.</small>
+            <small class="text-error" ng-show="fileTransferForm.caFile.$error.pattern"> Alpha-Numeric values between 4-10 characters.</small>
+          </div>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label for="inputCertificateFile" class="control-label">Certificate File</label>
+        <div class="controls">
+          <input type="text" id="inputCertificateFile" name="certificateFile" placeholder="Certificate File" ng-model="fileTransfer.certificateFile" ng-pattern="/^[a-zA-Z0-9]{4,10}$/" required>
+          <div class="text-error" ng-show="fileTransferForm.certificateFile.$dirty && fileTransferForm.certificateFile.$invalid">
+            <small class="text-error" ng-show="fileTransferForm.certificateFile.$error.required"> *Required.</small>
+            <small class="text-error" ng-show="fileTransferForm.certificateFile.$error.pattern"> Alpha-Numeric values between 4-10 characters.</small>
+          </div>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label for="inputKeyFile" class="control-label">Key File</label>
+        <div class="controls">
+          <input type="text" id="inputKeyFile" name="keyFile" placeholder="Key File" ng-model="fileTransfer.keyFile" ng-pattern="/^[a-zA-Z0-9]{4,10}$/" required>
+          <div class="text-error" ng-show="fileTransferForm.keyFile.$dirty && fileTransferForm.keyFile.$invalid">
+            <small class="text-error" ng-show="fileTransferForm.keyFile.$error.required"> *Required.</small>
+            <small class="text-error" ng-show="fileTransferForm.keyFile.$error.pattern"> Alpha-Numeric values between 4-10 characters.</small>
+          </div>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label for="inputSourceEndpoint" class="control-label">Source Endpoint</label>
+        <div class="controls">
+          <input type="url" id="inputSourceEndpoint" name="sourceEndpoint" placeholder="Source Endpoint" ng-model="fileTransfer.sourceEndpoint" required>
+          <div class="text-error" ng-show="fileTransferForm.sourceEndpoint.$dirty && fileTransferForm.sourceEndpoint.$invalid">
+            <small class="text-error" ng-show="fileTransferForm.sourceEndpoint.$error.required"> *Required.</small>
+            <small class="text-error" ng-show="fileTransferForm.sourceEndpoint.$error.url"> URL Expected</small>
+          </div>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label for="inputSourceFilePath" class="control-label">Source File Path</label>
+        <div class="controls">
+          <input type="text" id="inputSourceFilePath" name="sourceFilePath" placeholder="Source File Path" ng-model="fileTransfer.sourceFilePath" ng-pattern="/^[a-zA-Z0-9]{4,10}$/" required>
+          <div class="text-error" ng-show="fileTransferForm.sourceFilePath.$dirty && fileTransferForm.sourceFilePath.$invalid">
+            <small class="text-error" ng-show="fileTransferForm.sourceFilePath.$error.required"> *Required.</small>
+            <small class="text-error" ng-show="fileTransferForm.sourceFilePath.$error.pattern"> Alpha-Numeric values between 4-10 characters.</small>
+          </div>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label for="inputDestinationEndpoint" class="control-label">Destination Endpoint</label>
+        <div class="controls">
+          <input type="url" id="inputDestinationEndpoint" name="destinationEndpoint" placeholder="Destination Endpoint" ng-model="fileTransfer.destinationEndpoint" required>
+          <div class="text-error" ng-show="fileTransferForm.destinationEndpoint.$dirty && fileTransferForm.destinationEndpoint.$invalid">
+            <small class="text-error" ng-show="fileTransferForm.destinationEndpoint.$error.required"> *Required.</small>
+            <small class="text-error" ng-show="fileTransferForm.destinationEndpoint.$error.url"> URL expected.</small>
+          </div>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label for="inputDestinationFilePath" class="control-label">Destination File Path</label>
+        <div class="controls">
+          <input type="text" id="inputDestinationFilePath" name="destinationFilePath" placeholder="Destination File Path" ng-model="fileTransfer.destinationFilePath" ng-pattern="/^[a-zA-Z0-9]{4,10}$/" required>
+          <div class="text-error" ng-show="fileTransferForm.destinationFilePath.$dirty && fileTransferForm.destinationFilePath.$invalid">
+            <small class="text-error" ng-show="fileTransferForm.destinationFilePath.$error.required"> *Required.</small>
+            <small class="text-error" ng-show="fileTransferForm.destinationFilePath.$error.pattern"> Alpha-Numeric values between 4-10 characters.</small>
+          </div>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <div class="controls">
+          <button type="submit" ng-disabled="fileTransferForm.$invalid" class="btn">Save</button>
+          <a class="btn" href="#/exec">Cancel</a>
+        </div>
+      </div>
+    </fieldset>
+  </form>
+</div>

Added: airavata/sandbox/gsoc2013/app/views/builder.launchWorkflow.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.launchWorkflow.html?rev=1509067&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.launchWorkflow.html (added)
+++ airavata/sandbox/gsoc2013/app/views/builder.launchWorkflow.html Thu Aug  1 01:59:47 2013
@@ -0,0 +1,60 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<div ng-controller="WorkflowLaunch">
+  <form name="launchWorkflowForm" style="padding:10px;" ng-submit="runExperiment();" class="form-horizontal">
+    <fieldset>
+      <legend>Launch Workflow</legend>
+      <div class="control-group" ng-repeat="input in workflowParams.workflowInputs">
+        <label class="control-label"for={{input.id}}>{{input.name}}  {{input.dataType}}</label>
+        <div class="controls">
+          <input type="text" id={{input.id}} name={{input.name}} placeholder={{input.name}} ng-model="input.value" required>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label class="control-label" for="inputExperimentName">Experiment Name</label>
+        <div class="controls">
+          <input type="text" id="inputExperimentName" placeholder="Experiment Name" ng-model="workflowParams.experimentName" required>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label class="control-label" for="inputWorkflowInterpreterURL">Workflow Interpreter URL</i></label>
+        <div class="controls">
+          <input type="url" id="inputWorkflowInterpreterURL" placeholder="Workflow Interpreter URL" ng-model="workflowParams.workflowInterpreterURL" required>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label class="control-label" for="inputGFacURL">GFac URL</label>
+        <div class="controls">
+          <input type="url" id="inputGFacURL" placeholder="GFac URL" ng-model="workflowParams.gFacURL" required="">
+        </div>
+      </div>
+
+      <div class="control-group">
+        <div class="controls">
+          <button type="submit" class="btn btn-primary">Run</button>
+          <!--button type="submit" ng-disabled="launchWorkflowForm.$invalid" class="btn btn-primary">Run</button-->
+          <a class="btn" href="#/exec">Cancel</a>
+        </div>
+      </div>
+    </fieldset>
+  </form>
+</div>

Added: airavata/sandbox/gsoc2013/app/views/builder.newApplicationDeployment.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.newApplicationDeployment.html?rev=1509067&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.newApplicationDeployment.html (added)
+++ airavata/sandbox/gsoc2013/app/views/builder.newApplicationDeployment.html Thu Aug  1 01:59:47 2013
@@ -0,0 +1,76 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<form>
+  <div class="control-group">
+        <label class="control-label" for="applicationHost">Application Host: </label>
+        <div class="controls">
+          <select id="applicationHost"  ng-model="applicationHost" ng-options="host.name for host in hostList"></select> <a href="#addHost" role="button" data-toggle="modal" title="Create New Host"><i class="icon-plus-sign icon-white"></i></a>
+        </div>
+      </div>
+  <div class="control-group">
+        <label class="control-label" for="executablePath">Executable Path</label>
+        <div class="controls">
+          <input type="url" id="executablePath" placeholder="Executable Path" ng-model="executablePath" required> <i class=" icon-folder-open icon-white"></i>
+        </div>
+      </div>
+  <div class="control-group">
+        <label class="control-label" for="scratchWorkingDirectory">Scratch Working Directory</label>
+        <div class="controls">
+          <input type="url" id="scratchWorkingDirectory" placeholder="Scratch Working Directory" ng-model="scratchWorkingDirectory" required> <i class=" icon-folder-open icon-white"></i>
+        </div>
+      </div>
+  <div>
+        <a href="#" class="btn btn-primary">Advance Application Configuration</a>
+      </div>
+</form>
+<!--<div class="modal hide fade" id="newApplicationDeploy" aria-labelledby="newApplicationDeploy" tabindex="-1" role="dialog" aria-hidden="true">
+  <div class="modal-header">
+    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
+    <h3>New Application Deployment</h3>
+  </div>
+  <div class="modal-body">
+    <form class="form-horizontal">
+      <div class="control-group">
+        <label class="control-label" for="applicationHost">Application Host: </label>
+        <div class="controls">
+          <select id="applicationHost"  ng-model="applicationHost" ng-options="host.name for host in hostList"></select> <a href="#addHost" role="button" data-toggle="modal" title="Create New Host"><i class="icon-plus-sign icon-white"></i></a>
+        </div>
+      </div>
+      <div class="control-group">
+        <label class="control-label" for="executablePath">Executable Path</label>
+        <div class="controls">
+          <input type="url" id="executablePath" placeholder="Executable Path" ng-model="executablePath" required> <i class=" icon-folder-open icon-white"></i>
+        </div>
+      </div>
+      <div class="control-group">
+        <label class="control-label" for="scratchWorkingDirectory">Scratch Working Directory</label>
+        <div class="controls">
+          <input type="url" id="scratchWorkingDirectory" placeholder="Scratch Working Directory" ng-model="scratchWorkingDirectory" required> <i class=" icon-folder-open icon-white"></i>
+        </div>
+      </div>
+      <div>
+        <a href="#" class="btn btn-primary">Advance Application Configuration</a>
+      </div>
+    </form>
+  </div>
+  <div class="modal-footer">
+    <a href="#" class="btn btn-primary">Add</a>
+    <a href="#" class="btn " data-dismiss="modal" aria-hidden="true">Cancel</a>
+  </div>
+</div> -->

Added: airavata/sandbox/gsoc2013/app/views/builder.workflowMonitoring.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.workflowMonitoring.html?rev=1509067&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.workflowMonitoring.html (added)
+++ airavata/sandbox/gsoc2013/app/views/builder.workflowMonitoring.html Thu Aug  1 01:59:47 2013
@@ -0,0 +1,56 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<div ng-controller="WorkflowMonitoring">
+  <form name="notificationConfigurationForm" style="padding:10px;" ng-submit="configureNotification();" class="form-horizontal">
+    <fieldset>
+      <legend>Notification Configuration</legend>
+      <div class="control-group">
+        <label class="control-label" for="inputBrokerURL">Broker URL</label>
+        <div class="controls">
+          <input style="width: 50%;" type="url" id="inputBrokerURL" name="Broker URL" placeholder="brokerURL" ng-model="notification.brokerURL" required>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label class="control-label" for="inputTopic">Topic</label>
+        <div class="controls">
+          <input style="width: 50%;" type="text" id="inputTopic" name="Topic" placeholder="Topic" ng-model="notification.topic" required>
+          <label class="checkbox">
+            <input type="checkbox" ng-model="notification.pullMode"> Pull Mode
+          </label>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label class="control-label" for="inputMessageBoxURL">MessageBoxURL</label>
+        <div class="controls">
+          <input style="width: 50%;" type="url" id="inputMessageBoxURL" name="messageBoxURL" placeholder="MessageBoxURL" ng-model="notification.messageBoxURL" required>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <div class="controls">
+          <button type="submit" class="btn btn-primary">Save</button>
+          <!--button type="submit" ng-disabled="launchWorkflowForm.$invalid" class="btn btn-primary">Run</button-->
+          <a class="btn" href="#/exec">Cancel</a>
+        </div>
+      </div>
+    </fieldset>
+  </form>
+</div>

Added: airavata/sandbox/gsoc2013/app/views/builder.workflowProperties.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.workflowProperties.html?rev=1509067&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.workflowProperties.html (added)
+++ airavata/sandbox/gsoc2013/app/views/builder.workflowProperties.html Thu Aug  1 01:59:47 2013
@@ -0,0 +1,67 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<div ng-controller="WorkflowLaunch">
+  <form name="workflowPropertiesForm" style="padding:10px;" ng-submit="saveWorkflowProperties();" class="form-horizontal">
+    <fieldset>
+      <legend>Workflow Properties</legend>
+      <div class="control-group">
+        <label class="control-label" for="inputName">Name</label>
+        <div class="controls">
+          <input style="width: 35%;" type="text" id="inputName" name="name" placeholder="name" ng-model="workflowProperties.name" required>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label class="control-label" for="inputTemplateId">Template Id</label>
+        <div class="controls">
+          <input style="width: 35%;" type="url" id="inputTemplateId" name="templateId" placeholder="Template Id" ng-model="workflowProperties.templateId" disabled>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label class="control-label" for="inputInstanceId">Instance Id</label>
+        <div class="controls">
+          <input style="width: 35%;" type="url" id="inputInstanceId" name="instanceId" placeholder="Instance Id" ng-model="workflowProperties.instanceId" disabled>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label class="control-label" for="inputDescription">Description</label>
+        <div class="controls">
+          <textarea style="width: 35%;"  id="inputDescription" name="description" placeholder="Description" ng-model="workflowProperties.description"></textarea>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <label class="control-label" for="inputMetadata">Metadata</label>
+        <div class="controls">
+          <textarea rows="5" style="width: 35%;"  id="inputMetadata" name="metadata" placeholder="Metadata" ng-model="workflowProperties.metadata"></textarea>
+        </div>
+      </div>
+
+      <div class="control-group">
+        <div class="controls">
+          <button type="submit" class="btn btn-primary">Save</button>
+          <!--button type="submit" ng-disabled="launchWorkflowForm.$invalid" class="btn btn-primary">Run</button-->
+          <a class="btn" href="#/exec">Cancel</a>
+        </div>
+      </div>
+    </fieldset>
+  </form>
+</div>

Modified: airavata/sandbox/gsoc2013/app/views/exec.canvas.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/exec.canvas.html?rev=1509067&r1=1509066&r2=1509067&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/exec.canvas.html (original)
+++ airavata/sandbox/gsoc2013/app/views/exec.canvas.html Thu Aug  1 01:59:47 2013
@@ -17,4 +17,4 @@ specific language governing permissions 
 under the License.
 -->
 
-canvas for composed workflow
\ No newline at end of file
+<div class="container" id="executor" ui-view="builder"></div>
\ No newline at end of file

Modified: airavata/sandbox/gsoc2013/app/views/exec.navbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/exec.navbar.html?rev=1509067&r1=1509066&r2=1509067&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/exec.navbar.html (original)
+++ airavata/sandbox/gsoc2013/app/views/exec.navbar.html Thu Aug  1 01:59:47 2013
@@ -21,33 +21,33 @@ under the License.
   <li class="active"><a href="#"><i class="icon-home"></i> Home</a></li>
   <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-edit"></i> Edit</a>
     <ul class="dropdown-menu">
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-gears"></i> Workflow Properties</a></li>
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-star"></i> Parameter Properties</a></li>
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-desktop"></i> Host</a></li>
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-gear"></i> Applications</a></li>
+      <li><a ng-href="#/exec/workflowProperties" role="button" data-toggle="modal"><i class="icon-gears"></i> Workflow Properties</a></li>
+      <li><a ng-href="#" role="button" data-toggle="modal"><i class="icon-star"></i> Parameter Properties</a></li>
+      <li><a ng-href="#" role="button" data-toggle="modal"><i class="icon-desktop"></i> Host</a></li>
+      <li><a ng-href="#/exec/newApplicationDeployment" role="button" data-toggle="modal"><i class="icon-gear"></i> Applications</a></li>
     </ul>
   </li>
   <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-bullseye"></i> View</a>
     <ul class="dropdown-menu">
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Airavata Registry</a></li>
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Components</a></li>
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Monitoring</a></li>
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Paramaeters</a></li>
+      <li><a ng-href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Airavata Registry</a></li>
+      <li><a ng-href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Components</a></li>
+      <li><a ng-href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Monitoring</a></li>
+      <li><a ng-href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Paramaeters</a></li>
     </ul>
   </li>
   <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-caret-right"></i> Run</a>
     <ul class="dropdown-menu">
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-play"></i> Run On Interpreter Server</a></li>
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-pause"></i> Stop Running Workflow</a></li>
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-eye-open"></i> Configure Monitoring</a></li>
+      <li><a ng-href="#/exec/launchWorkflow" role="button" data-toggle="modal"><i class="icon-play"></i> Run On Interpreter Server</a></li>
+      <li><a ng-href="#" role="button" data-toggle="modal"><i class="icon-pause"></i> Stop Running Workflow</a></li>
+      <li><a ng-href="#/exec/workflowMonitoring" role="button" data-toggle="modal"><i class="icon-eye-open"></i> Configure Monitoring</a></li>
     </ul>
   </li>
   <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-wrench"></i> Tools</a>
     <ul class="dropdown-menu">
-      <li><a href="#" role="button" data-toggle="modal"><i class="icon-file"></i> Globus File Transfer</a></li>
+      <li><a ng-href="#/exec/globusFileTransfer" role="button" data-toggle="modal"><i class="icon-file"></i> Globus File Transfer</a></li>
     </ul>
   </li>
-  <li><a href="#"><i class="icon-question"></i> Help</a></li>
+  <li><a ng-href="#"><i class="icon-question"></i> Help</a></li>
 </ul>
 <ul class="nav pull-right">
   <li><a href="http://airavata.apache.org/"><i class="icon-globe"></i> Airavata</a></li>

Modified: airavata/sandbox/gsoc2013/app/views/exec.sidenavbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/exec.sidenavbar.html?rev=1509067&r1=1509066&r2=1509067&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/exec.sidenavbar.html (original)
+++ airavata/sandbox/gsoc2013/app/views/exec.sidenavbar.html Thu Aug  1 01:59:47 2013
@@ -16,40 +16,35 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-
-<div class="accordion" id="executionSidebar" ng-controller="RegistryDescriptors">
+<ul class="nav nav-list">
+  <li>
+    <a ng-href="#/exec/addHost"><i class="icon-plus-sign"></i> Add Host</a>
+    <div ui-view="addHost"></div>
+  </li>
+  <li>
+    <a ng-href="#/exec/newApplicationDeployment"><i class="icon-plus-sign"></i> New Application Deployment</a>
+    <div ui-view="registerApplication"></div>
+  </li>
+  <li>
+    <a ng-href="#/exec/launchWorkflow"><i class="icon-play"></i> Run Experiment</a>
+  </li>
+</ul>
+<!--<div class="accordion" id="executionSidebar" ng-controller="RegistryDescriptors">
   <ul class="nav nav-list">
   <li>
     <div class="accordion-group">
       <div class="accordion-heading">
-        <a class="accordion-toggle" data-toggle="collapse" data-parent="#executionSidebar" href="#addHost">
+        <a class="accordion-toggle" data-toggle="collapse" data-parent="#executionSidebar" href="#/exec/addHost">
           <i class="icon-plus-sign"></i> Add Host
         </a>
-      </div>
+      </div> <div ui-view="addHost"></div>
       <div id="addHost" class="accordion-body collapse">
         <div class="accordion-inner">
-          <form style="padding:10px;" >
-            <fieldset>
-              <legend>Register Host</legend>
-              <label for="inputHostId">Host Id</label>
-              <input type="text" id="inputHostId" placeholder="Host Id" ng-model="addHost.hostId" required>
-              <label for="inputHostAddress">Host Address</label>
-              <input type="url" id="inputHostAddress" placeholder="Host Address" ng-model="addHost.hostAddress">
-              <label for="resourceProtocol">Resource Protocol</label>
-              <select id="resourceProtocol" ng-model="addHost.resourceProtocol" ng-options="k as p for (k,p) in addHost.resourceProtocol"></select>
-              <label for="gramEndpoint">Gram Endpoint</label>
-              <input type="url" id="gramEndpoint" placeholder="Gram Endpoint" ng-model="addHost.gramEndpoint">
-              <label for="gridFTPEndpoint">Grid FTP Endpoint</label>
-              <input type="url" id="gridFTPEndpoint" placeholder="Grid FTP Endpoint" ng-model="addHost.gridFTPEndpoint">
-              <br>
-              <button type="submit" class="btn" ng-click="saveHostDescriptor()">Save</button>
-              <a class="accordion-toggle btn" data-toggle="collapse" data-parent="#executionSidebar" href="#addHost">Cancel</a>
-            </fieldset>
-          </form>
+
         </div>
       </div>
     </div>
   </li>
   <li><a href="#newApplicationDeploy" role="button" data-toggle="modal"><i class="icon-plus-sign"></i> New Application Deployment</a></li>
 </ul>
-</div>
+</div>-->

Modified: airavata/sandbox/gsoc2013/app/views/index.canvas.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/index.canvas.html?rev=1509067&r1=1509066&r2=1509067&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/index.canvas.html (original)
+++ airavata/sandbox/gsoc2013/app/views/index.canvas.html Thu Aug  1 01:59:47 2013
@@ -2,7 +2,7 @@
   <h1>Apache Airavata WebUI</h1>
   <p>Connect to a registry to begin.</p>
 </div>
-<div class="container">
+<div class="container" style="padding-left:35px;">
   <section class="row">
     <p>Apache Airavata is a software framework for executing and managing computational jobs and workflows on distributed computing resources including local clusters, supercomputers, national grids, academic and commercial clouds. Airavata is dominantly used to build Web-based science gateways and assist to compose, manage, execute, and monitor large scale applications (wrapped as Web services) and workflows composed of these services.</p>
     <p>Airavata, (pronounced <em>I-rAa-Va-Thah</em>) is a mythical multi-tasked elephant with three heads and six ivory tusks, it is often depicted at the Gateway to Clouds. Airavata is choosen as the name for this multifaceted software which builds gateways to clouds and grids.</p>

Modified: airavata/sandbox/gsoc2013/app/views/index.navbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/index.navbar.html?rev=1509067&r1=1509066&r2=1509067&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/index.navbar.html (original)
+++ airavata/sandbox/gsoc2013/app/views/index.navbar.html Thu Aug  1 01:59:47 2013
@@ -2,6 +2,7 @@
   <li class="active"><a href="#"><i class="icon-home"></i> Home</a></li>
   <li><a href="#/create"><i class="icon-sitemap"></i> Creation Interface</a></li>
   <li><a href="#/exec"><i class="icon-cogs"></i> Execution Interface</a></li>
+  <li><a href="#/monitor"><i class="icon-eye-open"></i> Monitoring Interface</a></li>
 </ul>
 <ul class="nav pull-right">
   <li><a href="#"><i class="icon-question"></i> Help</a></li>

Modified: airavata/sandbox/gsoc2013/app/views/index.sidenavbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/index.sidenavbar.html?rev=1509067&r1=1509066&r2=1509067&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/index.sidenavbar.html (original)
+++ airavata/sandbox/gsoc2013/app/views/index.sidenavbar.html Thu Aug  1 01:59:47 2013
@@ -36,3 +36,35 @@
     </fieldset>
   </form>
 </div>
+<div class="modal hide fade" id="createNweUserModal" aria-labelledby="createNweUserModal" tabindex="-1" role="dialog" aria-hidden="true" ng-controller="RegistryConnection">
+  <div class="modal-header">
+    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
+    <h3>Register New User</h3>
+  </div>
+  <div class="modal-body">
+    <form class="form-horizontal">
+      <div class="control-group">
+        <label class="control-label" for="field-newUserName"><i class=" icon-pencil"></i></label>
+        <div class="controls">
+          <input type="text" id="field-newUserName" placeholder="User Name" ng-model="newUser.username" required>
+        </div>
+      </div>
+      <div class="control-group">
+        <label class="control-label" for="field-password2"><i class=" icon-key"></i></label>
+        <div class="controls">
+          <input type="password" id="field-password2" placeholder="Password" ng-model="newUser.password" required>
+        </div>
+      </div>
+      <div class="control-group">
+        <label class="control-label" for="field-confirmPassword"><i class=" icon-key"></i></label>
+        <div class="controls">
+          <input type="password" id="field-confirmPassword" placeholder="Confirm Password" ng-model="newUser.confirmPassword" required>
+        </div>
+      </div>
+    </form>
+  </div>
+  <div class="modal-footer">
+    <button type="submit" class="btn btn-primary" ng-click="newUserRegistry()">Add</button>
+    <a href="#" class="btn " data-dismiss="modal" aria-hidden="true">Cancel</a>
+  </div>
+</div>

Added: airavata/sandbox/gsoc2013/app/views/monitor.navbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/monitor.navbar.html?rev=1509067&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/monitor.navbar.html (added)
+++ airavata/sandbox/gsoc2013/app/views/monitor.navbar.html Thu Aug  1 01:59:47 2013
@@ -0,0 +1,54 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<ul class="nav">
+  <li class="active"><a href="#"><i class="icon-home"></i> Home</a></li>
+  <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-edit"></i> Edit</a>
+    <ul class="dropdown-menu">
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-gears"></i> Workflow Properties</a></li>
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-star"></i> Parameter Properties</a></li>
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-desktop"></i> Host</a></li>
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-gear"></i> Applications</a></li>
+    </ul>
+  </li>
+  <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-bullseye"></i> View</a>
+    <ul class="dropdown-menu">
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Airavata Registry</a></li>
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Components</a></li>
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Monitoring</a></li>
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-caret-right"></i> Paramaeters</a></li>
+    </ul>
+  </li>
+  <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-caret-right"></i> Run</a>
+    <ul class="dropdown-menu">
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-play"></i> Run On Interpreter Server</a></li>
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-pause"></i> Stop Running Workflow</a></li>
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-eye-open"></i> Configure Monitoring</a></li>
+    </ul>
+  </li>
+  <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-wrench"></i> Tools</a>
+    <ul class="dropdown-menu">
+      <li><a href="#" role="button" data-toggle="modal"><i class="icon-file"></i> Globus File Transfer</a></li>
+    </ul>
+  </li>
+  <li><a href="#"><i class="icon-question"></i> Help</a></li>
+</ul>
+<ul class="nav pull-right">
+  <li><a href="http://airavata.apache.org/"><i class="icon-globe"></i> Airavata</a></li>
+</ul>

Added: airavata/sandbox/gsoc2013/app/views/monitor.sidenavbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/monitor.sidenavbar.html?rev=1509067&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/monitor.sidenavbar.html (added)
+++ airavata/sandbox/gsoc2013/app/views/monitor.sidenavbar.html Thu Aug  1 01:59:47 2013
@@ -0,0 +1,22 @@
+<ul class="nav nav-list">
+  <li class="nav-header">Sidebar</li>
+  <li class="active"><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li class="nav-header">Sidebar</li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li class="nav-header">Sidebar</li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+  <li><a href="#/monitor">Link</a></li>
+</ul>
+



Mime
View raw message