airavata-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sma...@apache.org
Subject svn commit: r1524604 - in /airavata/sandbox/gsoc2013: ./ app/ app/img/ app/scripts/ app/scripts/controllers/ app/scripts/model/ app/styles/ app/views/
Date Thu, 19 Sep 2013 00:54:03 GMT
Author: smarru
Date: Thu Sep 19 00:54:02 2013
New Revision: 1524604

URL: http://svn.apache.org/r1524604
Log:
commiting Sanchit's contribution for AIRAVATA-916

Added:
    airavata/sandbox/gsoc2013/app/scripts/controllers/executionInterfaceCntl.js
    airavata/sandbox/gsoc2013/app/scripts/regisrtyAPIService.js
    airavata/sandbox/gsoc2013/app/scripts/workflowAPIService.js
    airavata/sandbox/gsoc2013/package.json
Removed:
    airavata/sandbox/gsoc2013/app/img/
    airavata/sandbox/gsoc2013/app/scripts/model/
Modified:
    airavata/sandbox/gsoc2013/app/index.html
    airavata/sandbox/gsoc2013/app/scripts/registryAPI.js
    airavata/sandbox/gsoc2013/app/styles/main.scss
    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.registerApplication.html
    airavata/sandbox/gsoc2013/app/views/builder.workflowMonitoring.html
    airavata/sandbox/gsoc2013/app/views/builder.workflowProperties.html
    airavata/sandbox/gsoc2013/app/views/create.canvas.html
    airavata/sandbox/gsoc2013/app/views/create.sidenavbar.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
    airavata/sandbox/gsoc2013/app/views/monitor.sidenavbar.html
    airavata/sandbox/gsoc2013/bower.json

Modified: airavata/sandbox/gsoc2013/app/index.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/index.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/index.html (original)
+++ airavata/sandbox/gsoc2013/app/index.html Thu Sep 19 00:54:02 2013
@@ -47,30 +47,34 @@ under the License.
 <![endif]-->
 
 <!-- The Navbar -->
-<div class="navbar navbar-fixed-top">
-    <div class="navbar-inner">
-        <div class="container">
-            <!-- Responsive Navbar -->
-            <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
-                <span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span>
-            </a>
-            <!-- Brand -->
-            <span class="brand" href="#">Apache Airavata WebUI</span>
-            <!-- Navbar -->
-            <div class="nav-collapse collapse" ui-view="navbar"></div>
-        </div>
-    </div>
-</div>
+
+<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
+  <!-- Brand and toggle get grouped for better mobile display -->
+  <div class="navbar-header">
+    <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".mainnavbar">
+      <span class="sr-only">Toggle navigation</span>
+      <span class="icon-bar"></span>
+      <span class="icon-bar"></span>
+      <span class="icon-bar"></span>
+    </button>
+    <a class="navbar-brand" href="#">Apache Airavata WebUI</a>
+  </div>
+
+  <!-- The Meat -->
+  <div class="collapse navbar-collapse mainnavbar" ui-view="navbar"></div>
+</nav>
 
   <!-- The Content -->
-  <div class="container-fluid" style="padding-top: 60px;">
-    <div class="row-fluid">
-      <div class="span3">
-        <div class="well sidebar-nav" ui-view="sidenavbar"></div>
+  <div class="container" style="padding-top: 60px;">
+    <div class="row">
+      <div class="col-md-3">
+        <div class="well sidebar-nav">
+          <div class="container" ui-view="sidenavbar"></div>
+        </div>
       </div>
-      <div class="span9">
+      <div class="col-md-9">
         <!-- Alerts -->
-        <div class="row"ng-controller="Alert">
+        <div class="row" ng-controller="Alert">
           <div ng-repeat="alert in alerts" class="alert alert-block alert-{{alert.type}} fade in">
             <button type="button" class="close" data-dismiss="alert" ng-click="closeAlert($index)">&times;</button>
             <h4 class="alert-heading">{{alert.head}}</h4>
@@ -93,7 +97,7 @@ under the License.
   <script src="scripts/registryAPI.js"></script>
   <script src="scripts/controllers/WorkflowLaunch.js"></script>
   <script src="scripts/controllers/HostDescriptor.js"></script>
-  <script src="scripts/controllers/ApplicationDescriptor.js"></script>  
+  <script src="scripts/controllers/ApplicationDescriptor.js"></script>
   <script src="scripts/controllers/FileTransfer.js"></script>
   <script src="scripts/controllers/WorkflowMonitoring.js"></script>
   <script src="scripts/NodeSubscriber.js"></script>
@@ -106,19 +110,19 @@ under the License.
   <script src="scripts/vendor/jquery.base64.min.js"></script>
   <script src="bower_components/raphael/raphael.js"></script>
   <script src="scripts/vendor/bandit.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-affix.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-alert.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-dropdown.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-tooltip.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-modal.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-transition.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-button.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-popover.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-typeahead.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-carousel.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-scrollspy.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-collapse.js"></script>
-  <script src="bower_components/bootstrap-sass/js/bootstrap-tab.js"></script>
+  <script src="bower_components/bootstrap-sass/js/affix.js"></script>
+  <script src="bower_components/bootstrap-sass/js/alert.js"></script>
+  <script src="bower_components/bootstrap-sass/js/dropdown.js"></script>
+  <script src="bower_components/bootstrap-sass/js/tooltip.js"></script>
+  <script src="bower_components/bootstrap-sass/js/modal.js"></script>
+  <script src="bower_components/bootstrap-sass/js/transition.js"></script>
+  <script src="bower_components/bootstrap-sass/js/button.js"></script>
+  <script src="bower_components/bootstrap-sass/js/popover.js"></script>
+  <script src="bower_components/bootstrap-sass/js/typeahead.js"></script>
+  <script src="bower_components/bootstrap-sass/js/carousel.js"></script>
+  <script src="bower_components/bootstrap-sass/js/scrollspy.js"></script>
+  <script src="bower_components/bootstrap-sass/js/collapse.js"></script>
+  <script src="bower_components/bootstrap-sass/js/tab.js"></script>
   <!-- endbuild -->
 
   <!-- build:js scripts/modules.js -->

Added: airavata/sandbox/gsoc2013/app/scripts/controllers/executionInterfaceCntl.js
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/scripts/controllers/executionInterfaceCntl.js?rev=1524604&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/scripts/controllers/executionInterfaceCntl.js (added)
+++ airavata/sandbox/gsoc2013/app/scripts/controllers/executionInterfaceCntl.js Thu Sep 19 00:54:02 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.
+ */
+
+/*
+ *
+ * Controllers for the execution interface
+ *
+ */
+
+//Main Controller for execution Interface
+
+angular.module('WebUI')
+    .controller('executionInterfaceCntl', function ($scope) {
+
+        //Variables related to Run Workflow
+
+        $scope.isWorkflowOpen=true;
+        $scope.isWorkflowRunning=false;
+        $scope.workflowInputs=[];
+        $scope.experimentName='';
+        $scope.workflowInterpreterURL='';
+        $scope.gfacURL='';
+        $scope.templateId=$routeParams.templateId;
+
+        //$scope.workflowInputs.push({"id":$scope.experimentName,"name":$scope.experimentName,"datatype":"","value":"Experiment Name"});
+        //$scope.workflowInputs.push({"id":$scope.workflowInterpreterURL,"name":$scope.workflowInterpreterURL,"datatype":"","value":"Workflow Interpreter URL"});
+        //$scope.workflowInputs.push({"id":$scope.gfacURL,"name":$scope.gfacURL,"datatype":"","value":"gfacURL"});
+
+        //get the inputs for the open workflow to render run workflow modal
+        $scope.getWorkflowInputs=function($scope){
+            //Airavata Client API call to get number of inputs for given template id
+        };
+
+        //validate the inputs
+        $scope.validateInputs=function($scope){
+
+        };
+
+        //run experiment
+        $scope.runExperiment=function($scope){
+            //Airavata client API call to run experiment with
+        };
+
+    });

Added: airavata/sandbox/gsoc2013/app/scripts/regisrtyAPIService.js
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/scripts/regisrtyAPIService.js?rev=1524604&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/scripts/regisrtyAPIService.js (added)
+++ airavata/sandbox/gsoc2013/app/scripts/regisrtyAPIService.js Thu Sep 19 00:54:02 2013
@@ -0,0 +1,160 @@
+/**
+ 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.
+ */
+
+//        url headers type data onSuccess
+
+'use strict';
+
+// Angular Service for the Registry API
+angular.module('WebUI').factory('registryAPI', function($http){
+  // Listen to all updates about updates from modules
+  // TODO - Inter service communication how?
+  var apiPath = '/airavata-registry/api';
+  var setResourcePaths = function (url) { // This has to go into a callback for the global message queue
+    apiPath = url + '/airavata-registry/api';
+  };
+  return {
+    //=====================================================
+    'setResourcePaths': setResourcePaths,
+
+    //=====================================================
+    'workflow': { // Registry API dealing with the workflow
+      'user': { // UserWorkflow Registry
+        'exists': function (name) { // Check if a workflow exists in registry
+          var promise = $http.get({
+            'url': apiPath + '/userwfregistry/workflow/exist',
+            'params': {'workflowName': name}
+          }).success(function (response) {
+            return response.data.responseText;
+          });
+          return promise;
+        },
+        'getAll': function () { // Get a all workflows
+          var promise = $http.get({
+            'url': apiPath + '/userwfregistry/get/workflows'
+          }).success(function (response) {
+            return response.data.responseJSON;
+          });
+          return promise;
+        },
+        'add': function (name, desc) { // Add a workflow
+          var promise = $http.post({
+            'url': apiPath + '/userwfregistry/add/workflow' + '?workflowName=' + name + '&workflowGraphXml=' + desc
+          }).success(function (response) {
+            return response.data.responseText;
+          });
+          return promise;
+        },
+        'update': function (name, desc) { // Update an already added workflow
+          var promise = $http.post({
+            'url': apiPath + '/userwfregistry/update/workflow' + '?workflowName=' + name + '&workflowGraphXml=' + desc
+          }).success(function (response) {
+            return response.data.responseText;
+          });
+          return promise;
+        },
+        'delete': function (name) { // Delete a workflow from the registry
+          var promise = $http.delete({
+            'url': apiPath + '/userwfregistry/remove/workflow',
+            'params': {'workflowName': name}
+          }).success(function (response) {
+            return response.data.responseText;
+          });
+          return promise;
+        },
+        'getGraphXML': function () { // Get a XML? description of graph
+          var promise = $http.get({
+            'url': apiPath + '/userwfregistry/get/workflowgraph',
+            'params': {'workflowName': name}
+          }).success(function (response) {
+            return response.data.responseText;
+          });
+          return promise;
+        }
+      },
+      //-----------------------------------------------------
+      'publish': { // PublishWorkflow Registry
+        'exists': function (name) { // Check if a workflow exists in registry
+          var promise = $http.get({
+            'url': apiPath + '/publishwfregistry/publishwf/exist',
+            'params': {'workflowName': name}
+          }).success(function (response) {
+            return response.data.responseText;
+          });
+          return promise;
+        },
+        'getAll': function () { // Get a all workflows
+          var promise = $http.get({
+            'url': apiPath + '/publishwfregistry/get/publishworkflows'
+          }).success(function (response) {
+            return response.data.responseJSON;
+          });
+          return promise;
+        },
+        'getAllNames': function () { // Get names of all workflows
+          var promise = $http.get({
+            'url': apiPath + '/publishwfregistry/get/publishworkflownames'
+          }).success(function (response) {
+            return response.data.responseJSON;
+          });
+          return promise;
+        },
+        'add': function (name, pName) { // Publish a workflow
+          var promise = $http.post({
+            'url': apiPath + '/publishwfregistry/publish/workflow' + '?workflowName=' + name + '&publishWorkflowName=' + pName
+          }).success(function (response) {
+            return response.data.responseText;
+          });
+          return promise;
+        },
+        'addDefault': function (name) {
+          var promise = $http.post({
+            'url': apiPath + '/publishwfregistry/publish/workflow' + '?workflowName=' + name
+          }).success(function (response) {
+            return response.data.responseText;
+          });
+          return promise;
+        },
+        'delete': function (name) { // Delete a workflow from the registry
+          var promise = $http.delete({
+            'url': apiPath + '/publishwfregistry/remove/workflow',
+            'params': {'workflowName': name}
+          }).success(function (response) {
+            return response.data.responseText;
+          });
+          return promise;
+        },
+        'getGraphXML': function () { // Get a XML? description of graph
+          var promise = $http.get({
+            'url': apiPath + '/publishwfregistry/get/publishworkflowgraph',
+            'params': {'workflowName': name}
+          }).success(function (response) {
+            return response.data.responseText;
+          });
+          return promise;
+        }
+      }
+    },
+
+    //=====================================================
+    'descriptor': { // Registry API dealing with the defined descriptors
+
+    }
+  };
+});

Modified: airavata/sandbox/gsoc2013/app/scripts/registryAPI.js
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/scripts/registryAPI.js?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/scripts/registryAPI.js (original)
+++ airavata/sandbox/gsoc2013/app/scripts/registryAPI.js Thu Sep 19 00:54:02 2013
@@ -70,7 +70,7 @@ function ApplicationDescriptor() {
     this.stdOut;
     this.stdError;
     this.staticWorkingDir;
-    // int set 
+    // int set
     this.maxWallTime;
     this.cpuCount;
     this.nodeCount;

Added: airavata/sandbox/gsoc2013/app/scripts/workflowAPIService.js
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/scripts/workflowAPIService.js?rev=1524604&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/app/scripts/workflowAPIService.js (added)
+++ airavata/sandbox/gsoc2013/app/scripts/workflowAPIService.js Thu Sep 19 00:54:02 2013
@@ -0,0 +1,762 @@
+/**
+ 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';
+
+// Service for Workflow API
+angular.module('WebUI').factory('workflowAPI', function(){
+
+  var ContextHeader = function  (){
+
+    var userIdentifier;
+    var soa_service_epr = new SOAServiceEPR();
+    var workflow_monitoring_context = new WorkflowMonitoringContext();
+    var workflow_scheduling_context = new WorkflowSchedulingContext();
+    var workflow_output_data_handling = new WorkflowOutputDataHandling();
+    var security_context = new SecurityContext();
+
+    this.getUserIdentifier = function (){
+      return userIdentifier;
+    };
+    this.setUserIdentifier = function (param){
+      userIdentifier = param;
+    };
+
+    this.getSOAServiceEPR = function (){
+      return soa_service_epr;
+    };
+    this.setSOAServiceEPR = function (param){
+      if(param instanceof SOAServiceEPR){
+        soa_service_epr = param;
+      }
+    };
+
+    this.getWorkflowMonitoringContext = function (){
+      return workflow_monitoring_context;
+    };
+    this.setWorkflowMonitoringContext = function (param){
+      if(param instanceof  WorkflowMonitoringContext){
+        workflow_monitoring_context = param;
+      }
+    };
+
+    this.getWorkflowSchedulingContext = function (){
+      return workflow_scheduling_context;
+    };
+    this.setWorkflowSchedulingContext = function (param){
+      if(param instanceof WorkflowSchedulingContext){
+        workflow_scheduling_context = param;
+      }
+    };
+
+    this.getWorkflowOutputDataHandling = function (){
+      return workflow_output_data_handling;
+    };
+    this.setWorkflowOutputDataHandling = function (param){
+      if( param instanceof WorkflowOutputDataHandling) {
+        workflow_output_data_handling = param;
+      }
+    };
+
+    this.getSecurityContext = function () {
+      return security_context;
+    };
+    this.setSecurityContext = function (param) {
+      if(param instanceof SecurityContext){
+        security_context = param;
+      }
+    };
+  }
+  var SOAServiceEPR = function (){
+    var gfacURL;
+    var registryURL;
+    var resourceSchedulerURL;
+    var hostDescriptor;
+
+    this.getGfacURL = function (){
+      return gfacURL;
+    };
+    this.setGfacURL = function (url){
+      gfacURL = url;
+    };
+
+    this.getRegistryURL = function (){
+      return registryURL;
+    };
+    this.setRegistryURL = function (regURL){
+      registryURL = regURL;
+    };
+
+    this.getResorceSchedulerURL = function (){
+      return resourceSchedulerURL;
+    };
+    this.setResourceSchedulerURL = function (resURL) {
+      resourceSchedulerURL = resURL;
+    };
+
+    this.getHostDescriptor = function (){
+      return hostDescriptor;
+    };
+    this.setHostDescriptor = function (hostDes){
+      hostDescriptor = hostDes;
+    };
+
+  }
+  var WorkflowMonitoringContext = function (){
+    var experimentId,
+      workflowInstanceId,
+      workflowTemplateId,
+      workflowNodeId,
+      workflowTimeStep,
+      serviceInstanceId,
+      serviceReplicaId,
+      eventPublishEPR,
+      notificationTopic,
+      errorPublishEPR,
+      msgBoxEPR;
+
+    this.getExperimentId   = function (){
+      return experimentId;
+    };
+    this.setExperimentId  = function (exId){
+      experimentId = exId;
+    };
+
+    this.getWorkflowInstanceId   = function (){
+      return workflowInstanceId;
+    };
+    this.setWorkflowInstanceId  = function (wfId){
+      workflowInstanceId = wfId;
+    };
+
+    this.getWorkflowTemplateId   = function (){
+      return    workflowTemplateId;
+    };
+    this.setWorkflowTemplateId  = function (wfTemplateId){
+      workflowTemplateId = wfTemplateId;
+    };
+
+    this.getWorkflowNodeId   = function (){
+      return  workflowNodeId;
+    };
+    this.setWorkflowNodeId  = function (wfNodeId){
+      workflowNodeId = wfNodeId;
+    };
+
+    this.getWorkflowTimeStep   = function (){
+      return  workflowTimeStep;
+    };
+    this.setWorkflowTimeStep  = function (wts){
+      workflowTimeStep =  wts;
+    };
+
+    this.getServiceInstanceId   = function (){
+      return serviceInstanceId;
+    };
+    this.setServiceInstanceId  = function (serInsId){
+      serviceInstanceId = serInsId;
+    };
+
+    this.getServiceReplicaId   = function (){
+      return  serviceReplicaId;
+    };
+    this.setServiceReplicaId  = function (serRepId){
+      serviceReplicaId = serRepId;
+    };
+
+    this.getEventPublishEPR   = function (){
+      return   eventPublishEPR;
+    };
+    this.setEventPublishEPR  = function (eventPubEPR){
+      eventPublishEPR = eventPubEPR;
+    };
+
+    this.getNotificationTopic   = function (){
+      return  notificationTopic;
+    };
+    this.setNotificationTopic  = function (notTopic){
+      notificationTopic = notTopic;
+    };
+
+    this.getErrorPublishEPR   = function (){
+      return errorPublishEPR;
+    };
+    this.setErrorPublishEPR  = function (errorPubEPR){
+      errorPublishEPR = errorPubEPR;
+    };
+
+    this.getMsgBoxEPR   = function (){
+      return msgBoxEPR;
+    };
+    this.setMsgBoxEPR  = function (msgBoxEpr){
+      msgBoxEPR = msgBoxEpr;
+    };
+
+  }
+  var WorkflowSchedulingContext = function  (){
+    var appSchedulingContexts = [];
+    var nameValuePairs = [];
+
+    this.getApplicationSchedulingContexts =  function (){
+      return appSchedulingContexts;
+    };
+
+    this.addApplicationSchedulingContext = function (appScheContext){
+      if(appScheContext instanceof ApplicationSchedulingContext) {
+        appSchedulingContexts.push(appScheContext);
+      }else{
+        // TODO handle this.
+      }
+    };
+
+    this.getNameValuePairs = function (){
+      return nameValuePairs;
+    };
+    this.addNameValuePair = function (nvPair) {
+      if(nvPair instanceof NameValuePair) {
+        nameValuePairs.push(nvPair)
+      }else{
+        // TODO handle this.
+      }
+    };
+
+  }
+  var WorkflowOutputDataHandling = function (){
+    var appOutputDataHandles = [];
+
+    this.getApplicationOutputDataHandles =  function (){
+      return appOutputDataHandles;
+    };
+
+    this.addApplicationOutputDataHandle = function (appOutputDataContext){
+      if(appOutputDataContext instanceof ApplicationOutputDataContext) {
+        appOutputDataHandles.push(appOutputDataContext);
+      }else{
+        // TODO handle this.
+      }
+    };
+
+
+
+  }
+  var SecurityContext = function (){
+    var gridProxy,
+      gridMyProxyRepo = new GridProxyRepository(),
+      sshAuthentication = new SSHAuthentication(),
+      credentialManagementService = new CredentialManagementService(),
+      amazonWebservice = new AmazonWebservice();
+
+    this.getGridProxy = function (){
+      return gridProxy;
+    };
+    this.setGridProxy = function (param){
+      gridProxy = param;
+    };
+
+    this.getGridMyProxyRepo = function (){
+      return gridMyProxyRepo;
+    };
+    this.setGridMyProxyRepo = function (param){
+      if(param instanceof GridProxyRepository){
+        gridMyProxyRepo = param;
+      }
+    };
+
+    this.getSSHAuthentication = function (){
+      return sshAuthentication;
+    };
+    this.setSSHAuthentication = function (param){
+      if(param instanceof SSHAuthentication){
+        sshAuthentication = param;
+      }
+    };
+
+    this.getCredentialManagementService = function (){
+      return credentialManagementService;
+    };
+    this.setCredentialManagementService = function (param){
+      if(param instanceof  CredentialManagementService){
+        credentialManagementService  = param;
+      }
+    };
+
+    this.getAmazonWebservice = function (){
+      return amazonWebservice;
+    };
+    this.setAmazonWebservice = function (param){
+      if(param instanceof AmazonWebservice) {
+        amazonWebservice = param;
+      }
+    };
+
+  }
+  var ApplicationSchedulingContext = function (){
+    var workflowNodeId,
+      serviceId,
+      hostName,
+      wsgramPreferred,
+      gatekeeperEPR,
+      jobManager,
+      cpuCount,
+      nodeCount,
+      queueName,
+      maxWallTime;
+
+    this.getWorkflowNodeId = function (){
+      return  workflowNodeId;
+    };
+    this.setWorkflowNodeId = function (param){
+      workflowNodeId  = param;
+    };
+    this.getServiceId = function (){
+      return  serviceId;
+    };
+    this.setServiceId = function (param){
+      serviceId  = param;
+    };
+    this.getHostName = function (){
+      return hostName;
+    };
+    this.setHostName = function (param){
+      hostName = param;
+    };
+    this.getWsgramPreferred = function (){
+      return wsgramPreferred;
+    };
+    this.setWsgramPreferred = function (param){
+      wsgramPreferred = param;
+    };
+    this.getGatekeeperEPR = function (){
+      return  gatekeeperEPR;
+    };
+    this.setGatekeeperEPR = function (param){
+      gatekeeperEPR = param;
+    };
+    this.getJobManager = function (){
+      return  jobManager;
+    };
+    this.setJobManager = function (param){
+      jobManager = param;
+    };
+    this.getCpuCount = function (){
+      return cpuCount;
+    };
+    this.setCpuCount = function (param){
+      cpuCount = param;
+    };
+    this.getNodeCount = function (){
+      return nodeCount;
+    };
+    this.setNodeCount = function (param){
+      nodeCount = param;
+    };
+    this.getQueueName = function (){
+      return  queueName
+    };
+    this.setQueueName = function (param){
+      queueName = param;
+    };
+    this.getMaxWallTime = function (){
+      return  maxWallTime;
+    };
+    this.setMaxWallTime = function (param){
+      maxWallTime = param;
+    };
+  }
+  var NameValuePair = function  (){
+    var workflowNodeId,
+      name,
+      value,
+      description;
+
+    this.getWorkflowNodeId = function (){
+      return workflowNodeId;
+    };
+    this.setWorkflowNodeId = function (param){
+      workflowNodeId = param;
+    };
+
+    this.getName = function (){
+      return name;
+    };
+    this.setName = function (param){
+      name = param;
+    };
+
+    this.getValue = function (){
+      return value;
+    };
+    this.setValue = function (param){
+      value = param;
+    };
+
+    this.getDescription = function (){
+      return description;
+    };
+    this.setDescription = function (param){
+      description = param;
+    };
+
+  }
+  var ApplicationOutputDataContext = function  () {
+    var nodeId,
+      dataRegistryURL,
+      outputDataDirectory,
+      dataPersistence;
+
+    this.getNodeId = function (){
+      return nodeId;
+    };
+    this.setNodeId = function (param){
+      nodeId  = param;
+    };
+
+    this.getDataRegistryURL = function (){
+      return dataRegistryURL;
+    };
+    this.setDataRegistryURL = function (param){
+      dataRegistryURL = param;
+    };
+
+    this.getOutputDataDirectory = function (){
+      return outputDataDirectory;
+    };
+    this.setOutputDataDirectory = function (param){
+      outputDataDirectory  = param;
+    };
+
+    this.getDataPersistence = function (){
+      return dataPersistence;
+    };
+    this.setDataPersistence = function (param){
+      dataPersistence = param;
+    };
+
+  }
+  var GridProxyRepository= function  (){
+    var myproxyServer,
+      username,
+      password,
+      lifeTimeInHours;
+
+    this.getMyproxyServer = function (){
+      return myproxyServer;
+    };
+    this.setMyproxyServer = function (param){
+      myproxyServer = param;
+    };
+
+    this.getUsername = function (){
+      return username;
+    };
+    this.setUsername = function (param){
+      username = param;
+    };
+
+    this.getPassword = function (){
+      return password;
+    };
+    this.setPassword = function (param){
+      password = param;
+    };
+
+    this.getLifeTimeInHours = function (){
+      return lifeTimeInHours;
+    };
+    this.setLifeTimeInHours = function (param){
+      lifeTimeInHours = param;
+    };
+
+  }
+  var SSHAuthentication = function (){
+    var accessKeyId,
+      secretAccessKey;
+
+    this.getAccessKeyId = function (){
+      return accessKeyId;
+    };
+    this.setAccessKeyId = function (param){
+      accessKeyId = param;
+    };
+
+    this.getSecretAccessKey = function (){
+      return secretAccessKey;
+    };
+    this.setSecretAccessKey = function (param){
+      secretAccessKey = param;
+    };
+
+  }
+  var CredentialManagementService = function (){
+    var tokenId,
+      portalUser;
+
+    this.getTokenId = function (){
+      return tokenId;
+    };
+    this.setTokenId = function (param){
+      tokenId = param;
+    };
+
+    this.getPortalUser = function (){
+      return portalUser;
+    };
+    this.setPortalUser = function (param){
+      portalUser = param;
+    };
+
+  }
+  var AmazonWebservice = function  (){
+    var accessKeyId,
+      secretAccessKey,
+      amiId,
+      instanceId,
+      instanceType,
+      username;
+
+    this.getAccessKeyId = function (){
+      return accessKeyId;
+    };
+    this.setAccessKeyId = function (param){
+      accessKeyId = param;
+    };
+
+    this.getSecretAccessKey = function (){
+      return secretAccessKey;
+    };
+    this.setSecretAccessKey = function (param){
+      secretAccessKey = param;
+    };
+
+    this.getAmiId = function (){
+      return amiId;
+    };
+    this.setAmiId = function (param){
+      amiId = param;
+    };
+
+    this.getInstanceId = function (){
+      return instanceId;
+    };
+    this.setInstanceId = function (param){
+      instanceId = param;
+    };
+
+    this.getInstanceType = function (){
+      return instanceType;
+    };
+    this.setInstanceType = function (param){
+      instanceType = param;
+    };
+
+    this.getUsername = function (){
+      return username;
+    };
+    this.setUsername = function (param){
+      username = param;
+    };
+
+  }
+  var WorkflowContextHeader = function  (){
+
+    this.getContextHeader_JSON = function (contextHeader){
+      if(contextHeader instanceof ContextHeader) {
+        var json_contextHeader = {"context-header" :{
+          "user-identifier" : contextHeader.getUserIdentifier(),
+          "soa-service-eprs": getSOAServiceEPR_JSON(contextHeader.getSOAServiceEPR()),
+          "workflow-monitoring-context": getWorkflowMonitoringContext_JSON(contextHeader.getWorkflowMonitoringContext()),
+          "workflow-scheduling-context": getWorkflowSchedulingContext_JSON(contextHeader.getWorkflowSchedulingContext()),
+          "workflow-output-data-handling": getWorkflowOutputDataHandling_JSON(contextHeader.getWorkflowOutputDataHandling()),
+          "security-context": getSecurityContext_JSON(contextHeader.getSecurityContext())
+        }};
+        return JSON.stringify(json_contextHeader);
+      }
+    };
+
+    var getSOAServiceEPR_JSON = function (soaServiceEPR){
+      if(soaServiceEPR instanceof SOAServiceEPR){
+        return {"gfac-url": soaServiceEPR.getGfacURL(),
+          "registry-url": soaServiceEPR.getRegistryURL(),
+          "resource-scheduler-url": soaServiceEPR.getResorceSchedulerURL(),
+          "hostDescriptor": soaServiceEPR.getHostDescriptor()
+        };
+
+      }
+    };
+
+    var getWorkflowMonitoringContext_JSON = function (wfMonitoringContext){
+      if(wfMonitoringContext instanceof WorkflowMonitoringContext) {
+        return {"experiment-id" :wfMonitoringContext.getExperimentId(),
+          "workflow-instance-id": wfMonitoringContext.getWorkflowInstanceId(),
+          "workflow-template-id": wfMonitoringContext.getWorkflowTemplateId(),
+          "workflow-node-id": wfMonitoringContext.getWorkflowNodeId(),
+          "workflow-time-step": wfMonitoringContext.getWorkflowTimeStep(),
+          "service-instance-id": wfMonitoringContext.getServiceInstanceId(),
+          "service-replica-id": wfMonitoringContext.getServiceReplicaId(),
+          "event-publish-epr": wfMonitoringContext.getEventPublishEPR(),
+          "notification-topic": wfMonitoringContext.getNotificationTopic(),
+          "error-publish-epr": wfMonitoringContext.getErrorPublishEPR(),
+          "msg-box-epr": wfMonitoringContext.getMsgBoxEPR()
+        };
+      }
+
+    };
+
+    var getWorkflowSchedulingContext_JSON = function(wfSchedulingContext){
+      if(wfSchedulingContext instanceof WorkflowSchedulingContext) {
+        var applicationArray = getApplicationSchedulingContexts_JSON(wfSchedulingContext.getApplicationSchedulingContexts());
+        var nameValueArray = getNameValuePairs_JSON(wfSchedulingContext.getNameValuePairs());
+
+        var test = {"application-scheduling-context": eval(applicationArray),
+          "nameValuePairType":eval(nameValueArray)
+        };
+        return (test);
+      }
+    };
+
+    var getWorkflowOutputDataHandling_JSON = function (wfoDataHandling){
+      if(wfoDataHandling instanceof WorkflowOutputDataHandling) {
+        return {"application-output-data-handling": eval(getApplicationOutputDataHandlings_JSON(wfoDataHandling.getApplicationOutputDataHandles()))}
+
+      }
+    };
+
+    var getSecurityContext_JSON = function (secContext){
+      if(secContext instanceof SecurityContext) {
+        return {
+          "grid-proxy": secContext.getGridProxy(),
+          "grid-myproxy-repository":{
+            "myproxy-server": secContext.getGridMyProxyRepo().getMyproxyServer(),
+            "username": secContext.getGridMyProxyRepo().getUsername(),
+            "password": secContext.getGridMyProxyRepo().getPassword(),
+            "life-time-inhours": secContext.getGridMyProxyRepo().getLifeTimeInHours()
+          },
+          "ssh-authentication":{
+            "access-key-id": secContext.getSSHAuthentication().getAccessKeyId(),
+            "secret-access-key": secContext.getSSHAuthentication().getSecretAccessKey()
+          },
+          "credential-management-service": {
+            "token_id": secContext.getCredentialManagementService().getTokenId(),
+            "portal-user": secContext.getCredentialManagementService().getPortalUser()
+          },
+          "amazon-webservices": {
+            "access-key-id": secContext.getAmazonWebservice().getAccessKeyId(),
+            "secret-access-key": secContext.getAmazonWebservice().getSecretAccessKey(),
+            "ami-id": secContext.getAmazonWebservice().getAmiId(),
+            "instance-id": secContext.getAmazonWebservice().getInstanceId(),
+            "instance-type": secContext.getAmazonWebservice().getInstanceType(),
+            "username": secContext.getAmazonWebservice().getUsername()
+          }
+        }
+      }
+    };
+
+    var getApplicationSchedulingContexts_JSON = function (appContexts){
+      var buffer =[];
+      if(appContexts){
+        for(var i=0; i < appContexts.length; i++) {
+          buffer.push(eval(getApplicationScheduleContext_JSON(appContexts[i])))
+        }
+      }
+      var j = buffer;
+      return j;
+
+
+
+    };
+
+    var getApplicationScheduleContext_JSON = function (appContext){
+      if(appContext instanceof ApplicationSchedulingContext){
+        return {
+          "@workflow-node-id": appContext.getWorkflowNodeId(),
+          "@service-id": appContext.getServiceId(),
+          "@host-name": appContext.getHostName(),
+          "@wsgram-preferred": appContext.getWsgramPreferred(),
+          "@gatekeeper-epr": appContext.getGatekeeperEPR(),
+          "@job-manager": appContext.getJobManager(),
+          "@cpu-count": appContext.getCpuCount(),
+          "@node-count": appContext.getNodeCount(),
+          "@queue-name": appContext.getQueueName(),
+          "@max-wall-time": appContext.getMaxWallTime()
+        };
+      }
+    };
+
+    var getNameValuePairs_JSON = function (nameValuePairs){
+      var buffer=[];
+      if(nameValuePairs){
+        for(var i=0; i < nameValuePairs.length; i++) {
+          buffer.push(eval(getNameValuePair_JSON(nameValuePairs[i])))
+        }
+      }
+      return buffer;
+    };
+
+    var getNameValuePair_JSON = function (nameValue){
+      if(nameValue instanceof NameValuePair) {
+        return {
+          "@workflow-node-id": nameValue.getWorkflowNodeId(),
+          "@name": nameValue.getName(),
+          "@value": nameValue.getValue(),
+          "@description": nameValue.getDescription()
+        }
+      }
+
+    };
+
+    var getApplicationOutputDataHandlings_JSON = function (appOutputDataHandlings){
+      var buffer =[];
+      if(appOutputDataHandlings){
+        for(var i =0 ; i < appOutputDataHandlings.length; i ++) {
+          buffer.push(eval(getApplicationOutputData_JSON(appOutputDataHandlings[i])))
+        }
+      }
+      return buffer;
+    };
+
+    var getApplicationOutputData_JSON = function (appOutputData){
+      if(appOutputData instanceof ApplicationOutputDataContext) {
+        return {
+          "node-id": appOutputData.getNodeId(),
+          "data-registry-url": appOutputData.getDataRegistryURL(),
+          "output-data-directory": appOutputData.getOutputDataDirectory(),
+          "data-persistance": appOutputData.getDataPersistence()
+        }
+      }
+    };
+  }
+
+  //Workflow API , returns instance of objects
+  return{
+    ContextHeader: ContextHeader,
+    SOAServiceEPR: SOAServiceEPR,
+    WorkflowMonitoringContext: WorkflowMonitoringContext,
+    WorkflowSchedulingContext: WorkflowSchedulingContext,
+    WorkflowOutputDataHandling: WorkflowOutputDataHandling,
+    SecurityContext: SecurityContext,
+    ApplicationSchedulingContext: ApplicationSchedulingContext,
+    NameValuePair: NameValuePair,
+    ApplicationOutputDataContext: ApplicationOutputDataContext,
+    GridProxyRepository: GridProxyRepository,
+    SSHAuthentication: SSHAuthentication,
+    CredentialManagementService: CredentialManagementService,
+    AmazonWebservice: AmazonWebservice,
+    WorkflowContextHeader: WorkflowContextHeader
+  };
+});
\ No newline at end of file

Modified: airavata/sandbox/gsoc2013/app/styles/main.scss
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/styles/main.scss?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/styles/main.scss (original)
+++ airavata/sandbox/gsoc2013/app/styles/main.scss Thu Sep 19 00:54:02 2013
@@ -18,7 +18,6 @@
 */
 
 @import "bootstrap-sass/lib/bootstrap";
-@import "bootstrap-sass/lib/responsive";
 $FontAwesomePath: "/bower_components/font-awesome/font";
 @import "font-awesome/scss/font-awesome";
 

Modified: airavata/sandbox/gsoc2013/app/views/builder.addHost.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.addHost.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.addHost.html (original)
+++ airavata/sandbox/gsoc2013/app/views/builder.addHost.html Thu Sep 19 00:54:02 2013
@@ -75,8 +75,8 @@ under the License.
 
       <div class="control-group">
         <div class="controls">
-          <button type="submit" ng-disabled="addhostForm.$invalid" class="btn">Save</button>
-          <a class="btn" href="#/exec">Cancel</a>
+          <button type="submit" ng-disabled="addhostForm.$invalid" class="btn btn-default">Save</button>
+          <a class="btn btn-default" href="#/exec">Cancel</a>
         </div>
       </div>
     </fieldset>

Modified: airavata/sandbox/gsoc2013/app/views/builder.globusFileTransfer.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.globusFileTransfer.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.globusFileTransfer.html (original)
+++ airavata/sandbox/gsoc2013/app/views/builder.globusFileTransfer.html Thu Sep 19 00:54:02 2013
@@ -110,8 +110,8 @@ under the License.
 
       <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>
+          <button type="submit" ng-disabled="fileTransferForm.$invalid" class="btn btn-default">Save</button>
+          <a class="btn btn-default" href="#/exec">Cancel</a>
         </div>
       </div>
     </fieldset>

Modified: airavata/sandbox/gsoc2013/app/views/builder.launchWorkflow.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.launchWorkflow.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.launchWorkflow.html (original)
+++ airavata/sandbox/gsoc2013/app/views/builder.launchWorkflow.html Thu Sep 19 00:54:02 2013
@@ -52,7 +52,7 @@ under the License.
         <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>
+          <a class="btn btn-default" href="#/exec">Cancel</a>
         </div>
       </div>
     </fieldset>

Modified: airavata/sandbox/gsoc2013/app/views/builder.newApplicationDeployment.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.newApplicationDeployment.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.newApplicationDeployment.html (original)
+++ airavata/sandbox/gsoc2013/app/views/builder.newApplicationDeployment.html Thu Sep 19 00:54:02 2013
@@ -16,61 +16,23 @@ KIND, either express or implied.  See th
 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>
+<form role="form">
+  <div class="form-group">
+    <label for="applicationHost">Application Host</label>
+    <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 class="form-group">
+    <label for="executablePath">Executable Path</label>
+    <input type="url" id="executablePath" placeholder="Executable Path" ng-model="executablePath" required> <i class=" icon-folder-open icon-white"></i>
   </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 class="form-group">
+    <label for="scratchWorkingDirectory">Scratch Working Directory</label>
+    <input type="url" id="scratchWorkingDirectory" placeholder="Scratch Working Directory" ng-model="scratchWorkingDirectory" required> <i class=" icon-folder-open icon-white"></i>
   </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 class="checkbox">
+    <label>
+      <input type="checkbox"> Check me out
+    </label>
   </div>
-</div> -->
+  <button type="submit" class="btn btn-default">Submit</button>
+</form>

Modified: airavata/sandbox/gsoc2013/app/views/builder.registerApplication.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.registerApplication.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.registerApplication.html (original)
+++ airavata/sandbox/gsoc2013/app/views/builder.registerApplication.html Thu Sep 19 00:54:02 2013
@@ -42,23 +42,23 @@ under the License.
             </thead>
             <tbody>
             <tr ng-repeat="parameter in serviceDescriptor.parameters">
-              <td class="span2">
+              <td class="col-md-2">
                 <select style="width: 80px;" id="parameterIO" name="ParameterIO" ng-model="parameter.io" ng-options="io for io in parameterIO" required>
                   <option value="">-Select-</option>
                 </select>
               </td>
-              <td class="span3">
+              <td class="col-md-3">
                 <input type="text" id="inputParameterName" name="ParameterName" placeholder="Parameter Name" ng-model="parameter.name" required>
               </td>
-              <td class="span3">
+              <td class="col-md-3">
                 <select id="parameterType" name="ParameterType" ng-model="parameter.type" ng-options="type for type in parameterType" required>
                   <option value="">-Select-</option>
                 </select>
               </td>
-              <td class="span3">
+              <td class="col-md-3">
                 <input type="text" id="parameterDescription" name="ParameterDescription" placeholder="Parameter Description" ng-model="parameter.description">
               </td>
-              <td class="span1">
+              <td class="col-md-1">
                 <a href ng-click="serviceDescriptor.parameters.splice($index, 1)"><i class="icon-remove-sign"></i></a>
               </td>
             </tr>
@@ -82,9 +82,9 @@ under the License.
             </thead>
             <tbody>
             <tr ng-repeat="appDesc in serviceDescriptor.applicationDescriptors">
-              <td class="span4">{{appDesc.hostDescName}}</td>
-              <td class="span4"><a href ng-click=""><i class="icon-edit-sign"></i></a></td>
-              <td class="span4"><a href ng-click="serviceDescriptor.applicationDescriptors.splice($index, 1)"><i class="icon-remove-sign"></i></a></td>
+              <td class="col-md-4">{{appDesc.hostDescName}}</td>
+              <td class="col-md-4"><a href ng-click=""><i class="icon-edit-sign"></i></a></td>
+              <td class="col-md-4"><a href ng-click="serviceDescriptor.applicationDescriptors.splice($index, 1)"><i class="icon-remove-sign"></i></a></td>
             </tr>
             </tbody>
           </table>
@@ -98,7 +98,7 @@ under the License.
         <div class="controls">
           <button type="submit" class="btn btn-primary">Register</button>
           <!--button type="submit" ng-disabled="launchWorkflowForm.$invalid" class="btn btn-primary">Run</button-->
-          <a class="btn" href="#/exec">Cancel</a>
+          <a class="btn btn-default" href="#/exec">Cancel</a>
         </div>
       </div>
     </fieldset>
@@ -106,7 +106,7 @@ under the License.
   <form name="newAppDeployFrom" ng-show="isNewDeployment" class="form-horizontal">
     <fieldset>
       <div class="row">
-        <div class="span4">
+        <div class="col-md-4">
           <legend>{{newAppDeployFromLegend}}</legend>
           <div class="control-group">
             <label class="control-label" for="applicationHost"> Application Host</label>
@@ -168,7 +168,7 @@ under the License.
             </div>
           </div>
         </div>
-        <div class="span4">
+        <div class="col-md-4">
           <!--<legend>Locations</legend>
           <div class="control-group">
             <label class="control-label" for="inputDirectory">Input Directory</label>
@@ -193,7 +193,7 @@ under the License.
       <div class="row control-group">
         <div class="controls">
           <a href ng-click="addApplicationDeployment();" class="btn btn-primary">Update</a>
-          <a href ng-click="isNewDeployment=false" class="btn">Cancel</a>
+          <a href ng-click="isNewDeployment=false" class="btn btn-default">Cancel</a>
         </div>
       </div>
     </fieldset>
@@ -216,4 +216,4 @@ $scope.applicationDescriptor = {
 'minMemory':'',
 'maxMemory':'',
 '
-};-->
\ No newline at end of file
+};-->

Modified: airavata/sandbox/gsoc2013/app/views/builder.workflowMonitoring.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.workflowMonitoring.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.workflowMonitoring.html (original)
+++ airavata/sandbox/gsoc2013/app/views/builder.workflowMonitoring.html Thu Sep 19 00:54:02 2013
@@ -17,40 +17,24 @@ specific language governing permissions 
 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 role="form" name="notificationConfigurationForm" style="padding:10px;" ng-submit="configureNotification();">
+    <legend>Notification Configuration</legend>
+    <div class="form-group">
+      <label for="inputBrokerURL">Broker URL</label>
+      <input class="form-control" style="width: 50%;" type="url" id="inputBrokerURL" name="Broker URL" placeholder="brokerURL" ng-model="notification.brokerURL" required>
+    </div>
+    <div class="form-group">
+      <label for="inputTopic">Topic</label>
+      <input class="form-control" style="width: 50%;" type="text" id="inputTopic" name="Topic" placeholder="Topic" ng-model="notification.topic" required>
+      <div class="checkbox"><label>
+        <input type="checkbox" ng-model="notification.pullMode"> Pull Mode
+      </label></div>
+    </div>
+    <div class="form-group">
+      <label for="inputMessageBoxURL">MessageBoxURL</label>
+      <input class="form-control" style="width: 50%;" type="url" id="inputMessageBoxURL" name="messageBoxURL" placeholder="MessageBoxURL" ng-model="notification.messageBoxURL" required>
+    </div>
+    <button type="submit" class="btn btn-default">Submit</button>
+    <a class="btn btn-default" href="#/exec">Cancel</a>
   </form>
 </div>

Modified: airavata/sandbox/gsoc2013/app/views/builder.workflowProperties.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/builder.workflowProperties.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/builder.workflowProperties.html (original)
+++ airavata/sandbox/gsoc2013/app/views/builder.workflowProperties.html Thu Sep 19 00:54:02 2013
@@ -17,51 +17,33 @@ specific language governing permissions 
 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 role="form" name="workflowPropertiesForm" style="padding:10px;" ng-submit="saveWorkflowProperties();">
+    <legend>Workflow Properties</legend>
+    <div class="form-group">
+      <label for="inputName">Name</label>
+      <input style="width: 35%;" type="text" id="inputName" name="name" placeholder="name" ng-model="workflowProperties.name" class="form-control" required>
+    </div>
+    <div class="form-group">
+      <label for="inputTemplateId">Template Id</label>
+      <input style="width: 35%;" type="url" id="inputTemplateId" name="templateId" placeholder="Template Id" ng-model="workflowProperties.templateId" class="form-control" disabled>
+    </div>
+    <div class="form-group">
+      <label for="inputInstanceId">Instance Id</label>
+      <input style="width: 35%;" type="url" id="inputInstanceId" name="instanceId" placeholder="Instance Id" ng-model="workflowProperties.instanceId" class="form-control" disabled>
+    </div>
+    <div class="form-group">
+      <label for="inputDescription">Description</label>
+      <textarea style="width: 35%;" class="form-control" id="inputDescription" name="description" placeholder="Description" ng-model="workflowProperties.description"></textarea>
+    </div>
+    <div class="form-group">
+      <label for="inputMetadata">Metadata</label>
+      <textarea rows="5" style="width: 35%;" class="form-control" id="inputMetadata" name="metadata" placeholder="Metadata" ng-model="workflowProperties.metadata"></textarea>disabled>
+    </div>
+    <div class="form-group">
+      <label for="inputInstanceId">Instance Id</label>
+      <input style="width: 35%;" type="url" class="form-control" id="inputInstanceId" name="instanceId" placeholder="Instance Id" ng-model="workflowProperties.instanceId" disabled>
+    </div>
+    <button type="submit" class="btn btn-default">Submit</button>
+    <a class="btn btn-default" href="#/exec">Cancel</a>
   </form>
 </div>

Modified: airavata/sandbox/gsoc2013/app/views/create.canvas.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/create.canvas.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/create.canvas.html (original)
+++ airavata/sandbox/gsoc2013/app/views/create.canvas.html Thu Sep 19 00:54:02 2013
@@ -1,8 +1,17 @@
 <div ng-controller="WorkflowCreator">
-  <div class="navbar">
-    <div class="navbar-inner">
-      <a class="brand" href="#">Workflow Creator</a>
-      <ul class="nav">
+  <nav class="navbar navbar-default" role="navigation">
+    <div class="navbar-header">
+      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".createnavbar">
+        <span class="sr-only">Toggle navigation</span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+      </button>
+      <a class="navbar-brand">Workflow Creator</a>
+    </div>
+
+    <div class="collapse navbar-collapse createnavbar">
+      <ul class="nav navbar-nav">
         <li><a ng-click="addNode()" title="Add Node"><i class="icon-plus"></i></a></li>
         <li><a ng-click="addContainer()"  title="Add Container"><i class="icon-dropbox"></i></a></li>
         <li class="{{buttonState.move}}"><a ng-click="move()" title="Move Nodes"><i class="icon-hand-up"></i></a></li>
@@ -21,6 +30,6 @@
         <li><a ng-click="panRight()" title="Pan Right"><i class="icon-arrow-right"></i></a></li>
       </ul>
     </div>
-  </div>
+  </nav>
   <div class="container" id="editor"></div>
 </div>

Modified: airavata/sandbox/gsoc2013/app/views/create.sidenavbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/create.sidenavbar.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/create.sidenavbar.html (original)
+++ airavata/sandbox/gsoc2013/app/views/create.sidenavbar.html Thu Sep 19 00:54:02 2013
@@ -1,9 +1,10 @@
-<ul class="nav nav-list">
+<ul class="nav nav-stacked">
   <li class="nav-header">Sidebar</li>
   <li class="active"><a href="#">Link</a></li>
   <li><a href="#/create">Link</a></li>
   <li><a href="#/create">Link</a></li>
   <li><a href="#/create">Link</a></li>
+  <br>
   <li class="nav-header">Sidebar</li>
   <li><a href="#/create">Link</a></li>
   <li><a href="#/create">Link</a></li>
@@ -12,6 +13,7 @@
   <li><a href="#/create">Link</a></li>
   <li><a href="#/create">Link</a></li>
   <li><a href="#/create">Link</a></li>
+  <br>
   <li class="nav-header">Sidebar</li>
   <li><a href="#/create">Link</a></li>
   <li><a href="#/create">Link</a></li>

Modified: airavata/sandbox/gsoc2013/app/views/exec.navbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/exec.navbar.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/exec.navbar.html (original)
+++ airavata/sandbox/gsoc2013/app/views/exec.navbar.html Thu Sep 19 00:54:02 2013
@@ -17,7 +17,7 @@ specific language governing permissions 
 under the License.
 -->
 
-<ul class="nav">
+<ul class="nav navbar-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">

Modified: airavata/sandbox/gsoc2013/app/views/exec.sidenavbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/exec.sidenavbar.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/exec.sidenavbar.html (original)
+++ airavata/sandbox/gsoc2013/app/views/exec.sidenavbar.html Thu Sep 19 00:54:02 2013
@@ -16,7 +16,7 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-<ul class="nav nav-list">
+<ul class="nav nav-stacked">
   <li>
     <a ng-href="#/exec/addHost"><i class="icon-plus-sign"></i> Add Host</a>
     <div ui-view="addHost"></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=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/index.canvas.html (original)
+++ airavata/sandbox/gsoc2013/app/views/index.canvas.html Thu Sep 19 00:54:02 2013
@@ -1,4 +1,23 @@
-<div class="hero-unit">
+<!--
+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 class="jumbotron">
   <h1>Apache Airavata WebUI</h1>
   <p>Connect to a registry to begin.</p>
 </div>

Modified: airavata/sandbox/gsoc2013/app/views/index.navbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/index.navbar.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/index.navbar.html (original)
+++ airavata/sandbox/gsoc2013/app/views/index.navbar.html Thu Sep 19 00:54:02 2013
@@ -1,9 +1,28 @@
-<ul class="nav">
+<!--
+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 navbar-nav">
   <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">
+<ul class="nav navbar-nav navbar-right">
   <li><a href="#"><i class="icon-question"></i> Help</a></li>
 </ul>

Modified: airavata/sandbox/gsoc2013/app/views/index.sidenavbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/index.sidenavbar.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/index.sidenavbar.html (original)
+++ airavata/sandbox/gsoc2013/app/views/index.sidenavbar.html Thu Sep 19 00:54:02 2013
@@ -16,23 +16,33 @@
   specific language governing permissions and limitations
   under the License.
 -->
-<div ng-controller="RegistryConnection">
-  <form style="padding:10px;" ng-submit="connectToRegistry()">
-    <fieldset>
-      <legend>Connect to Airavata</legend>
-      <label>Registry URL</label>
-      <input type="url" placeholder="http://localhost:8080/airavata-registry/api" ng-model="registry.url" required>
-      <label>Gateway</label>
-      <input type="text" placeholder="default" ng-model="registry.gateway" required>
-      <label>Username</label>
-      <input type="text" placeholder="admin" ng-model="registry.username" required>
-      <label>Password</label>
-      <input type="password" placeholder="Password" ng-model="registry.password" required>
-      <label class="checkbox"> <input type="checkbox" ng-model="newUserFlag">Create New User</label>
-      <label ng-show="newUserFlag">Confirm Password</label>
-      <input type="password" placeholder="Password" ng-model="confirmPassword" ng-show="newUserFlag" required>
-      <br>
-      <button type="submit" class="btn">Connect</button>
-    </fieldset>
-  </form>
-</div>
+
+<form role="form" ng-controller="RegistryConnection" ng-submit="connectToRegistry()">
+  <legend>Connect to Airavata</legend>
+  <div class="form-group">
+    <label for="registryURL">Registry URL</label>
+    <input type="url" class="form-control" id="registryURL" placeholder="http://localhost:8080/airavata-registry/api" ng-model="registry.url" required>
+  </div>
+  <div class="form-group">
+    <label for="gatewayName">Gateway</label>
+    <input type="text" class="form-control" id="gatewayName" placeholder="default" ng-model="registry.gateway" required>
+  </div>
+  <div class="form-group">
+    <label for="userName">Username</label>
+    <input type="text" class="form-control" id="userName" placeholder="admin" ng-model="registry.username" required>
+  </div>
+  <div class="form-group">
+    <label for="password">Password</label>
+    <input type="password" class="form-control" id="password" placeholder="Password" ng-model="registry.password" required>
+  </div>
+  <div class="checkbox">
+    <label>
+      <input type="checkbox" ng-model="newUserFlag">Create New User
+    </label>
+  </div>
+  <div class="form-group" ng-show="newUserFlag">
+    <label for="confirmPassword">Confirm Password</label>
+    <input type="confirmPassword" class="form-control" id="password" placeholder="Password" ng-model="confirmPassword" required>
+  </div>
+  <button type="submit" class="btn btn-default">Connect</button>
+</form>

Modified: airavata/sandbox/gsoc2013/app/views/monitor.sidenavbar.html
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/app/views/monitor.sidenavbar.html?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/app/views/monitor.sidenavbar.html (original)
+++ airavata/sandbox/gsoc2013/app/views/monitor.sidenavbar.html Thu Sep 19 00:54:02 2013
@@ -1,3 +1,22 @@
+<!--
+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 nav-list">
   <li class="nav-header">Sidebar</li>
   <li class="active"><a href="#/monitor">Link</a></li>

Modified: airavata/sandbox/gsoc2013/bower.json
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/bower.json?rev=1524604&r1=1524603&r2=1524604&view=diff
==============================================================================
--- airavata/sandbox/gsoc2013/bower.json (original)
+++ airavata/sandbox/gsoc2013/bower.json Thu Sep 19 00:54:02 2013
@@ -8,7 +8,7 @@
     "angular-sanitize": "~1.0.7",
     "json3": "~3.2.4",
     "jquery": "~1.10.2",
-    "bootstrap-sass": "~2.3.1",
+    "bootstrap-sass": ">=2.3.1",
     "es5-shim": "~2.0.8",
     "font-awesome": "~3.2.1",
     "tv4": "*",

Added: airavata/sandbox/gsoc2013/package.json
URL: http://svn.apache.org/viewvc/airavata/sandbox/gsoc2013/package.json?rev=1524604&view=auto
==============================================================================
--- airavata/sandbox/gsoc2013/package.json (added)
+++ airavata/sandbox/gsoc2013/package.json Thu Sep 19 00:54:02 2013
@@ -0,0 +1,41 @@
+{
+  "name": "ApacheAiravataWebUI",
+  "version": "0.0.0",
+  "private": true,
+  "keywords": [	"Apache Software Foundation", "Airavata", "Workflow" ],
+  "contributors": [
+    { "name": "Danushka Menikkumbura", "email": "danushka.menikkumbura@gmail.com" },
+    { "name": "Sanchit Aggarwal", "email": "sanchitagarwal108@gmail.com" },
+    { "name": "Shameera Rathnayaka", "email": "shameerainfo@gmail.com" },
+    { "name": "Subho Banerjee", "email": "subs.zero@gmail.com" },
+    { "name": "Vijayendra R Grampurohit", "email": "vijayendra.sdm@gmail.com"}
+  ],
+  "devDependencies": {
+    "grunt": "~0.4.1",
+    "grunt-contrib-copy": "~0.4.1",
+    "grunt-contrib-concat": "~0.3.0",
+    "grunt-contrib-coffee": "~0.7.0",
+    "grunt-contrib-uglify": "~0.2.0",
+    "grunt-contrib-compass": "~0.3.0",
+    "grunt-contrib-jshint": "~0.6.0",
+    "grunt-contrib-cssmin": "~0.6.0",
+    "grunt-contrib-connect": "~0.3.0",
+    "grunt-contrib-clean": "~0.4.1",
+    "grunt-contrib-htmlmin": "~0.1.3",
+    "grunt-contrib-imagemin": "~0.1.4",
+    "grunt-contrib-watch": "~0.4.0",
+    "grunt-usemin": "~0.1.11",
+    "grunt-rev": "~0.1.0",
+    "grunt-karma": "~0.4.3",
+    "grunt-open": "~0.2.0",
+    "grunt-concurrent": "~0.3.0",
+    "matchdep": "~0.1.2",
+    "connect-livereload": "~0.2.0",
+    "grunt-google-cdn": "~0.2.0",
+    "grunt-ngmin": "~0.0.2",
+    "yo": "*"
+  },
+  "engines": {
+    "node": ">=0.8.0"
+  }
+}



Mime
View raw message