http://git-wip-us.apache.org/repos/asf/cloudstack/blob/d935d386/ui/scripts/system.js
----------------------------------------------------------------------
diff --git a/ui/scripts/system.js b/ui/scripts/system.js
index 315df5e..aa569fd 100644
--- a/ui/scripts/system.js
+++ b/ui/scripts/system.js
@@ -17916,35 +17916,55 @@
             jsonObj["redundantRouterState"] = "";
         }
     }
-
-    var refreshNspData = function(nspName) {
-        var array1 = [];
-        if (nspName != null)
-            array1.push("&name=" + nspName);
-
-        $.ajax({
-            url: createURL("listNetworkServiceProviders&physicalnetworkid=" + 
selectedPhysicalNetworkObj.id + array1.join("")),
-            dataType: "json",
-            async: false,
-            success: function(json) {
-                nspMap = {}; //reset
-
-                var items = 
json.listnetworkserviceprovidersresponse.networkserviceprovider;
-                if (items != null) {
-                    for (var i = 0; i < items.length; i++) {
-                        switch (items[i].name) {
-                            case "VirtualRouter":
-                                nspMap["virtualRouter"] = items[i];
-                                break;
-                            case "InternalLbVm":
-                                nspMap["InternalLbVm"] = items[i];
-                                break;
-                            case "VpcVirtualRouter":
-                                nspMap["vpcVirtualRouter"] = items[i];
-                                break;
-                            case "Netscaler":
-                                nspMap["netscaler"] = items[i];
-                                break;
+  };
+
+       var addExtraPropertiesToClusterObject = function(jsonObj) {
+               if(jsonObj.managedstate == "Managed") {
+                       jsonObj.state = jsonObj.allocationstate; 
//jsonObj.state == Enabled, Disabled
+               }
+               else {
+                       jsonObj.state = jsonObj.managedstate; //jsonObj.state 
== Unmanaged, PrepareUnmanaged, PrepareUnmanagedError
+               }
+  }
+       
+       var addExtraPropertiesToRouterInstanceObject = function(jsonObj) {      
        
+               if(jsonObj.isredundantrouter == true)
+                       jsonObj["redundantRouterState"] = 
jsonObj.redundantstate;
+               else
+                       jsonObj["redundantRouterState"] = "";                   
        
+  }    
+       
+       var refreshNspData = function(nspName) {          
+               var array1 = [];
+               if(nspName != null)
+                 array1.push("&name=" + nspName);
+               
+               $.ajax({
+                       url: 
createURL("listNetworkServiceProviders&physicalnetworkid=" + 
selectedPhysicalNetworkObj.id + array1.join("")),
+                       dataType: "json",
+                       async: false,
+                       success: function(json) {
+                         nspMap = {}; //reset 
+                       
+                               var items = 
json.listnetworkserviceprovidersresponse.networkserviceprovider;            
+        if(items != null) {                            
+                                       for(var i = 0; i < items.length; i++) {
+                                               switch(items[i].name) {
+                                                       case "VirtualRouter":
+                                                               
nspMap["virtualRouter"] = items[i];
+                                                               break;
+              case "Ovs":
+                nspMap["Ovs"] = items[i];
+                break;
+                                                       case "InternalLbVm":
+                                                         
nspMap["InternalLbVm"] = items[i];
+                                                         break;
+                                                       case "VpcVirtualRouter":
+                                                         
nspMap["vpcVirtualRouter"] = items[i];
+                                                         break;
+                                                       case "Netscaler":
+                                                               
nspMap["netscaler"] = items[i];
+                                                               break;
                             case "MidoNet":
                                 nspMap["midoNet"] = items[i];
                                 break;
@@ -17969,59 +17989,52 @@
                             case "NiciraNvp":
                                 nspMap["niciraNvp"] = items[i];
                                 break;
-                            case "BigSwitchVns":
-                                nspMap["bigswitchVns"] = items[i];
-                                break;
-                        }
-                    }
-                }
-            }
-        });
-
-        nspHardcodingArray = [{
-            id: 'netscaler',
-            name: 'NetScaler',
-            state: nspMap.netscaler ? nspMap.netscaler.state : 'Disabled'
-        }, {
-            id: 'virtualRouter',
-            name: 'Virtual Router',
-            state: nspMap.virtualRouter ? nspMap.virtualRouter.state : 
'Disabled'
-        }, {
-            id: 'niciraNvp',
-            name: 'Nicira Nvp',
-            state: nspMap.niciraNvp ? nspMap.niciraNvp.state : 'Disabled'
-        }, {
-            id: 'bigswitchVns',
-            name: 'BigSwitch Vns',
-            state: nspMap.bigswitchVns ? nspMap.bigswitchVns.state : 'Disabled'
-        }, {
-            id: 'BaremetalDhcpProvider',
-            name: 'Baremetal DHCP',
-            state: nspMap.BaremetalDhcpProvider ? 
nspMap.BaremetalDhcpProvider.state : 'Disabled'
-        }, {
-            id: 'BaremetalPxeProvider',
-            name: 'Baremetal PXE',
-            state: nspMap.BaremetalPxeProvider ? 
nspMap.BaremetalPxeProvider.state : 'Disabled'
-        }];
-
-        
$(window).trigger('cloudStack.system.serviceProviders.makeHarcodedArray', {
-            nspHardcodingArray: nspHardcodingArray,
-            selectedZoneObj: selectedZoneObj,
-            selectedPhysicalNetworkObj: selectedPhysicalNetworkObj
-        });
-
-        if (selectedZoneObj.networktype == "Basic") {
-            nspHardcodingArray.push({
-                id: 'securityGroups',
-                name: 'Security Groups',
-                state: nspMap.securityGroups ? nspMap.securityGroups.state : 
'Disabled'
-            });
-        } else if (selectedZoneObj.networktype == "Advanced") {
-            nspHardcodingArray.push({
-                id: 'midoNet',
-                name: 'MidoNet',
-                state: nspMap.midoNet ? nspMap.midoNet.state : 'Disabled'
-            });
+                                                        case "BigSwitchVns":
+                                                                
nspMap["bigswitchVns"] = items[i];
+                                                                break;
+                                               }
+                                       }
+                               }
+                       }
+               });
+   
+               nspHardcodingArray = [
+                       {
+                               id: 'netscaler',
+                               name: 'NetScaler',
+                               state: nspMap.netscaler? nspMap.netscaler.state 
: 'Disabled'
+                       },
+                       {
+                               id: 'virtualRouter',
+                               name: 'Virtual Router',
+                               state: nspMap.virtualRouter ? 
nspMap.virtualRouter.state : 'Disabled'
+                       },
+      {
+        id: 'Ovs',
+        name: 'Ovs',
+        state: nspMap.Ovs ? nspMap.Ovs.state : 'Disabled'
+      },
+            {
+                id: 'niciraNvp',
+                name: 'Nicira Nvp',
+                state: nspMap.niciraNvp ? nspMap.niciraNvp.state : 'Disabled'
+            },
+                        {
+                                id: 'bigswitchVns',
+                                name: 'BigSwitch Vns',
+                                state: nspMap.bigswitchVns ? 
nspMap.bigswitchVns.state : 'Disabled'
+                        },
+      {
+        id: 'BaremetalDhcpProvider',
+        name: 'Baremetal DHCP',
+        state: nspMap.BaremetalDhcpProvider ? 
nspMap.BaremetalDhcpProvider.state : 'Disabled'
+      },
+      {
+        id: 'BaremetalPxeProvider',
+        name: 'Baremetal PXE',
+        state: nspMap.BaremetalPxeProvider ? nspMap.BaremetalPxeProvider.state 
: 'Disabled'
+      }
+               ];
 
             nspHardcodingArray.push({
                 id: 'InternalLbVm',

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/d935d386/ui/scripts/zoneWizard.js
----------------------------------------------------------------------
diff --git a/ui/scripts/zoneWizard.js b/ui/scripts/zoneWizard.js
index 5437fe4..000bed3 100755
--- a/ui/scripts/zoneWizard.js
+++ b/ui/scripts/zoneWizard.js
@@ -219,6 +219,7 @@
             },
 
             storageTrafficIPRange: function(args) {
+
                 var multiEditData = [];
                 var totalIndex = 0;
 
@@ -3056,6 +3057,7 @@
                                                             return;
                                                         }
 
+                                                        var 
virtualRouterElementId;
                                                         $.ajax({
                                                             url: 
createURL("configureInternalLoadBalancerElement&enabled=true&id=" + 
internalLbElementId),
                                                             dataType: "json",
@@ -3119,6 +3121,202 @@
                                                                 }, 
g_queryAsyncJobResultInterval);
                                                             }
                                                         });
+                                                        // ***** Virtual 
Router ***** (end) *****
+
+                                                        // ***** Ovs ***** 
(begin) *****
+                                                        var ovsProviderId =  
null;
+                                                        $.ajax({
+                                                            url: 
createURL("listNetworkServiceProviders&name=Ovs&physicalNetworkId=" + 
thisPhysicalNetwork.id),
+                                                            dataType: "json",
+                                                            async: false,
+                                                            success: function 
(json) {
+                                                                var items = 
json.listnetworkserviceprovidersresponse.networkserviceprovider;
+                                                                if (items != 
null && items.length > 0) {
+                                                                    
ovsProviderId = items[0].id;
+                                                                }
+                                                            }
+                                                        });
+                                                        if (ovsProviderId != 
null) {
+                                                            var ovsElementId = 
null;
+                                                            $.ajax({
+                                                                url: 
createURL("listOvsElements&nspid=" + ovsProviderId),
+                                                                dataType: 
"json",
+                                                                async: false,
+                                                                success: 
function (json) {
+                                                                    var items 
= json.listovselementsresponse.ovselement;
+                                                                    if (items 
!= null && items.length > 0) {
+                                                                        
ovsElementId = items[0].id;
+                                                                    }
+                                                                }
+                                                            });
+                                                            if (ovsElementId 
!= null) {
+                                                                $.ajax({
+                                                                    url: 
createURL("configureOvsElement&enabled=true&id=" + ovsElementId),
+                                                                    dataType: 
"json",
+                                                                    async: 
false,
+                                                                    success: 
function (json) {
+                                                                        var 
jobId = json.configureovselementresponse.jobid;
+                                                                        var 
enableOvsElementIntervalID = setInterval(function () {
+                                                                            
$.ajax({
+                                                                               
 url: createURL("queryAsyncJobResult&jobId=" + jobId),
+                                                                               
 dataType: "json",
+                                                                               
 success: function (json) {
+                                                                               
     var result = json.queryasyncjobresultresponse;
+                                                                               
     if (result.jobstatus == 0) {
+                                                                               
         return; //Job has not completed
+                                                                               
     } else {
+                                                                               
         clearInterval(enableOvsElementIntervalID);
+
+                                                                               
         if (result.jobstatus == 1) { //configureOvsElement succeeded
+                                                                               
             $.ajax({
+                                                                               
                 url: 
createURL("updateNetworkServiceProvider&state=Enabled&id=" + ovsProviderId),
+                                                                               
                 dataType: "json",
+                                                                               
                 async: false,
+                                                                               
                 success: function (json) {
+                                                                               
                     var jobId = 
json.updatenetworkserviceproviderresponse.jobid;
+                                                                               
                     var enableOvsProviderIntervalID = setInterval(function () {
+                                                                               
                         $.ajax({
+                                                                               
                             url: createURL("queryAsyncJobResult&jobId=" + 
jobId),
+                                                                               
                             dataType: "json",
+                                                                               
                             success: function (json) {
+                                                                               
                                 var result = json.queryasyncjobresultresponse;
+                                                                               
                                 if (result.jobstatus == 0) {
+                                                                               
                                     return; //Job has not completed
+                                                                               
                                 } else {
+                                                                               
                                     clearInterval(enableOvsProviderIntervalID);
+
+                                                                               
                                     if (result.jobstatus == 2) {
+                                                                               
                                         alert("failed to enable Ovs Provider. 
Error: " + _s(result.jobresult.errortext));
+                                                                               
                                     }
+                                                                               
                                 }
+                                                                               
                             },
+                                                                               
                             error: function (XMLHttpResponse) {
+                                                                               
                                 var errorMsg = 
parseXMLHttpResponse(XMLHttpResponse);
+                                                                               
                                 alert("updateNetworkServiceProvider failed. 
Error: " + errorMsg);
+                                                                               
                             }
+                                                                               
                         });
+                                                                               
                     }, g_queryAsyncJobResultInterval);
+                                                                               
                 }
+                                                                               
             });
+                                                                               
         } else if (result.jobstatus == 2) {
+                                                                               
             alert("configureOvsElement failed. Error: " + 
_s(result.jobresult.errortext));
+                                                                               
         }
+                                                                               
     }
+                                                                               
 },
+                                                                               
 error: function (XMLHttpResponse) {
+                                                                               
     var errorMsg = parseXMLHttpResponse(XMLHttpResponse);
+                                                                               
     alert("configureOvsElement failed. Error: " + errorMsg);
+                                                                               
 }
+                                                                            });
+                                                                        }, 
g_queryAsyncJobResultInterval);
+                                                                    }
+                                                                });
+                                                            }
+
+
+                                                        }
+
+
+                                                        // ***** Ovs ***** 
(end) *****
+
+                                                        // ***** Internal LB 
***** (begin) *****
+                                                        var 
internalLbProviderId;
+                                                        $.ajax({
+                                                            url: 
createURL("listNetworkServiceProviders&name=Internallbvm&physicalNetworkId=" + 
thisPhysicalNetwork.id),
+                                                            dataType: "json",
+                                                            async: false,
+                                                            success: function 
(json) {
+                                                                var items = 
json.listnetworkserviceprovidersresponse.networkserviceprovider;
+                                                                if (items != 
null && items.length > 0) {
+                                                                    
internalLbProviderId = items[0].id;
+                                                                }
+                                                            }
+                                                        });
+                                                        if 
(internalLbProviderId == null) {
+                                                            alert("error: 
listNetworkServiceProviders API doesn't return internalLb provider ID");
+                                                            return;
+                                                        }
+
+                                                        var 
internalLbElementId;
+                                                        $.ajax({
+                                                            url: 
createURL("listInternalLoadBalancerElements&nspid=" + internalLbProviderId),
+                                                            dataType: "json",
+                                                            async: false,
+                                                            success: function 
(json) {
+                                                                var items = 
json.listinternalloadbalancerelementsresponse.internalloadbalancerelement;
+                                                                if (items != 
null && items.length > 0) {
+                                                                    
internalLbElementId = items[0].id;
+                                                                }
+                                                            }
+                                                        });
+                                                        if 
(internalLbElementId == null) {
+                                                            alert("error: 
listInternalLoadBalancerElements API doesn't return Internal LB Element Id");
+                                                            return;
+                                                        }
+
+                                                        $.ajax({
+                                                            url: 
createURL("configureInternalLoadBalancerElement&enabled=true&id=" + 
internalLbElementId),
+                                                            dataType: "json",
+                                                            async: false,
+                                                            success: function 
(json) {
+                                                                var jobId = 
json.configureinternalloadbalancerelementresponse.jobid;
+                                                                var 
enableInternalLbElementIntervalID = setInterval(function () {
+                                                                    $.ajax({
+                                                                        url: 
createURL("queryAsyncJobResult&jobId=" + jobId),
+                                                                        
dataType: "json",
+                                                                        
success: function (json) {
+                                                                            
var result = json.queryasyncjobresultresponse;
+                                                                            if 
(result.jobstatus == 0) {
+                                                                               
 return; //Job has not completed
+                                                                            } 
else {
+                                                                               
 clearInterval(enableInternalLbElementIntervalID);
+
+                                                                               
 if (result.jobstatus == 1) { //configureVirtualRouterElement succeeded
+                                                                               
     $.ajax({
+                                                                               
         url: createURL("updateNetworkServiceProvider&state=Enabled&id=" + 
internalLbProviderId),
+                                                                               
         dataType: "json",
+                                                                               
         async: false,
+                                                                               
         success: function (json) {
+                                                                               
             var jobId = json.updatenetworkserviceproviderresponse.jobid;
+                                                                               
             var enableInternalLbProviderIntervalID = setInterval(function () {
+                                                                               
                 $.ajax({
+                                                                               
                     url: createURL("queryAsyncJobResult&jobId=" + jobId),
+                                                                               
                     dataType: "json",
+                                                                               
                     success: function (json) {
+                                                                               
                         var result = json.queryasyncjobresultresponse;
+                                                                               
                         if (result.jobstatus == 0) {
+                                                                               
                             return; //Job has not completed
+                                                                               
                         } else {
+                                                                               
                             clearInterval(enableInternalLbProviderIntervalID);
+
+                                                                               
                             if (result.jobstatus == 1) { //Internal LB has 
been enabled successfully
+                                                                               
                                 //don't need to do anything here
+                                                                               
                             } else if (result.jobstatus == 2) {
+                                                                               
                                 alert("failed to enable Internal LB Provider. 
Error: " + _s(result.jobresult.errortext));
+                                                                               
                             }
+                                                                               
                         }
+                                                                               
                     },
+                                                                               
                     error: function (XMLHttpResponse) {
+                                                                               
                         var errorMsg = parseXMLHttpResponse(XMLHttpResponse);
+                                                                               
                         alert("failed to enable Internal LB Provider. Error: " 
+ errorMsg);
+                                                                               
                     }
+                                                                               
                 });
+                                                                               
             }, g_queryAsyncJobResultInterval);
+                                                                               
         }
+                                                                               
     });
+                                                                               
 } else if (result.jobstatus == 2) {
+                                                                               
     alert("configureVirtualRouterElement failed. Error: " + 
_s(result.jobresult.errortext));
+                                                                               
 }
+                                                                            }
+                                                                        },
+                                                                        error: 
function (XMLHttpResponse) {
+                                                                            
var errorMsg = parseXMLHttpResponse(XMLHttpResponse);
+                                                                            
alert("configureVirtualRouterElement failed. Error: " + errorMsg);
+                                                                        }
+                                                                    });
+                                                                }, 
g_queryAsyncJobResultInterval);
+                                                            }
+                                                        });
                                                         // ***** Internal LB 
***** (end) *****
 
                                                         if 
(args.data.zone.sgEnabled != true) { //Advanced SG-disabled zone
@@ -3128,7 +3326,7 @@
                                                                 url: 
createURL("listNetworkServiceProviders&name=VpcVirtualRouter&physicalNetworkId="
 + thisPhysicalNetwork.id),
                                                                 dataType: 
"json",
                                                                 async: false,
-                                                                success: 
function(json) {
+                                                                success: 
function (json) {
                                                                     var items 
= json.listnetworkserviceprovidersresponse.networkserviceprovider;
                                                                     if (items 
!= null && items.length > 0) {
                                                                         
vpcVirtualRouterProviderId = items[0].id;
@@ -3145,7 +3343,7 @@
                                                                 url: 
createURL("listVirtualRouterElements&nspid=" + vpcVirtualRouterProviderId),
                                                                 dataType: 
"json",
                                                                 async: false,
-                                                                success: 
function(json) {
+                                                                success: 
function (json) {
                                                                     var items 
= json.listvirtualrouterelementsresponse.virtualrouterelement;
                                                                     if (items 
!= null && items.length > 0) {
                                                                         
vpcVirtualRouterElementId = items[0].id;
@@ -3161,13 +3359,13 @@
                                                                 url: 
createURL("configureVirtualRouterElement&enabled=true&id=" + 
vpcVirtualRouterElementId),
                                                                 dataType: 
"json",
                                                                 async: false,
-                                                                success: 
function(json) {
+                                                                success: 
function (json) {
                                                                     var jobId 
= json.configurevirtualrouterelementresponse.jobid;
-                                                                    var 
enableVpcVirtualRouterElementIntervalID = setInterval(function() {
+                                                                    var 
enableVpcVirtualRouterElementIntervalID = setInterval(function () {
                                                                         
$.ajax({
                                                                             
url: createURL("queryAsyncJobResult&jobId=" + jobId),
                                                                             
dataType: "json",
-                                                                            
success: function(json) {
+                                                                            
success: function (json) {
                                                                                
 var result = json.queryasyncjobresultresponse;
                                                                                
 if (result.jobstatus == 0) {
                                                                                
     return; //Job has not completed
@@ -3179,13 +3377,13 @@
                                                                                
             url: createURL("updateNetworkServiceProvider&state=Enabled&id=" + 
vpcVirtualRouterProviderId),
                                                                                
             dataType: "json",
                                                                                
             async: false,
-                                                                               
             success: function(json) {
+                                                                               
             success: function (json) {
                                                                                
                 var jobId = json.updatenetworkserviceproviderresponse.jobid;
-                                                                               
                 var enableVpcVirtualRouterProviderIntervalID = 
setInterval(function() {
+                                                                               
                 var enableVpcVirtualRouterProviderIntervalID = 
setInterval(function () {
                                                                                
                     $.ajax({
                                                                                
                         url: createURL("queryAsyncJobResult&jobId=" + jobId),
                                                                                
                         dataType: "json",
-                                                                               
                         success: function(json) {
+                                                                               
                         success: function (json) {
                                                                                
                             var result = json.queryasyncjobresultresponse;
                                                                                
                             if (result.jobstatus == 0) {
                                                                                
                                 return; //Job has not completed
@@ -3199,7 +3397,7 @@
                                                                                
                                 }
                                                                                
                             }
                                                                                
                         },
-                                                                               
                         error: function(XMLHttpResponse) {
+                                                                               
                         error: function (XMLHttpResponse) {
                                                                                
                             var errorMsg = 
parseXMLHttpResponse(XMLHttpResponse);
                                                                                
                             alert("failed to enable VPC Virtual Router 
Provider. Error: " + errorMsg);
                                                                                
                         }
@@ -3212,7 +3410,7 @@
                                                                                
     }
                                                                                
 }
                                                                             },
-                                                                            
error: function(XMLHttpResponse) {
+                                                                            
error: function (XMLHttpResponse) {
                                                                                
 var errorMsg = parseXMLHttpResponse(XMLHttpResponse);
                                                                                
 alert("configureVirtualRouterElement failed. Error: " + errorMsg);
                                                                             }
@@ -3221,7 +3419,7 @@
                                                                 }
                                                             });
                                                             // ***** VPC 
Virtual Router ***** (end) *****
-                                                        } else { 
//args.data.zone.sgEnabled == true  //Advanced SG-enabled zone
+                                                        } else { 
//args.data.zone.sgEnabled == true  //Advanced SG-enabled zone                  
                                       
                                                             
message(dictionary['message.enabling.security.group.provider']);
 
                                                             // get network 
service provider ID of Security Group
@@ -3230,7 +3428,7 @@
                                                                 url: 
createURL("listNetworkServiceProviders&name=SecurityGroupProvider&physicalNetworkId="
 + thisPhysicalNetwork.id),
                                                                 dataType: 
"json",
                                                                 async: false,
-                                                                success: 
function(json) {
+                                                                success: 
function (json) {
                                                                     var items 
= json.listnetworkserviceprovidersresponse.networkserviceprovider;
                                                                     if (items 
!= null && items.length > 0) {
                                                                         
securityGroupProviderId = items[0].id;
@@ -3291,6 +3489,7 @@
                 },
 
                 addNetscalerProvider: function(args) {
+
                     if (selectedNetworkOfferingHavingNetscaler == true) {
                         
message(dictionary['message.adding.Netscaler.provider']);
 
@@ -3961,7 +4160,6 @@
                             url = hostname;
                         url += "/" + dcName + "/" + clusterName;
                         array1.push("&url=" + todb(url));
-
                         clusterName = hostname + "/" + dcName + "/" + 
clusterName; //override clusterName
                     }
                     array1.push("&clustername=" + todb(clusterName));

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/d935d386/utils/conf/db.properties
----------------------------------------------------------------------
diff --git a/utils/conf/db.properties b/utils/conf/db.properties
index e1b5fe9..709d79e 100644
--- a/utils/conf/db.properties
+++ b/utils/conf/db.properties
@@ -25,7 +25,7 @@ region.id=1
 # CloudStack database settings
 db.cloud.username=cloud
 db.cloud.password=cloud
-db.root.password=
+db.root.password=123
 db.cloud.host=localhost
 db.cloud.port=3306
 db.cloud.name=cloud

Reply via email to