cloudstack 3.0 UI - infrastructure - physical network - network service providers - when clicking Netscaler/F5/SRX, get fresh data from API call instead of cache.

This commit is contained in:
Jessica Wang 2012-04-11 10:50:09 -07:00
parent 0deff8618b
commit 40f198c24a
1 changed files with 110 additions and 90 deletions

View File

@ -9,8 +9,14 @@
// See the License for the specific language governing permissions and
// limitations under the License.
//
// Automatically generated by addcopyright.py at 04/03/2012
(function($, cloudStack) {
// Automatically generated by addcopyright.py at 04/02/2012
(function($, cloudStack) {
var zoneObjs, podObjs, clusterObjs, domainObjs, networkOfferingObjs, physicalNetworkObjs;
var selectedClusterObj, selectedZoneObj, selectedPublicNetworkObj, selectedManagementNetworkObj, selectedPhysicalNetworkObj, selectedGuestNetworkObj;
var nspMap = {}; //from listNetworkServiceProviders API
var nspHardcodingArray = []; //for service providers listView (hardcoding, not from listNetworkServiceProviders API)
cloudStack.publicIpRangeAccount = {
dialog: function(args) {
return function(args) {
@ -70,13 +76,7 @@
};
}
};
var zoneObjs, podObjs, clusterObjs, domainObjs, networkOfferingObjs, physicalNetworkObjs;
var selectedClusterObj, selectedZoneObj, selectedPublicNetworkObj, selectedManagementNetworkObj, selectedPhysicalNetworkObj, selectedGuestNetworkObj;
var nspMap = {}; //from listNetworkServiceProviders API
var nspHardcodingArray = []; //for service providers listView (hardcoding, not from listNetworkServiceProviders API)
var getTrafficType = function(physicalNetwork, typeID) {
var trafficType = {};
@ -299,74 +299,7 @@
}
},
dataProvider: function(args) {
$.ajax({
url: createURL("listNetworkServiceProviders&physicalnetworkid=" + selectedPhysicalNetworkObj.id),
dataType: "json",
async: false,
success: function(json) {
var items = json.listnetworkserviceprovidersresponse.networkserviceprovider;
nspMap = {}; //empty the map
for(var i = 0; i < items.length; i++) {
switch(items[i].name) {
case "VirtualRouter":
nspMap["virtualRouter"] = items[i];
break;
case "Netscaler":
nspMap["netscaler"] = items[i];
break;
case "F5BigIp":
nspMap["f5"] = items[i];
break;
case "JuniperSRX":
nspMap["srx"] = items[i];
break;
case "SecurityGroupProvider":
nspMap["securityGroups"] = 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'
}
];
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: 'f5',
name: 'F5',
state: nspMap.f5 ? nspMap.f5.state : 'Disabled'
}
);
nspHardcodingArray.push(
{
id: 'srx',
name: 'SRX',
state: nspMap.srx ? nspMap.srx.state : 'Disabled'
}
);
}
refreshNspData();
args.response.success({
data: nspHardcodingArray
})
@ -2397,6 +2330,7 @@
}
],
dataProvider: function(args) {
refreshNspData("Netscaler");
var providerObj;
$(nspHardcodingArray).each(function(){
if(this.id == "netscaler") {
@ -2631,6 +2565,7 @@
}
],
dataProvider: function(args) {
refreshNspData("F5BigIp");
var providerObj;
$(nspHardcodingArray).each(function(){
if(this.id == "f5") {
@ -2863,6 +2798,7 @@
}
],
dataProvider: function(args) {
refreshNspData("JuniperSRX");
var providerObj;
$(nspHardcodingArray).each(function(){
if(this.id == "srx") {
@ -3110,6 +3046,7 @@
}
],
dataProvider: function(args) {
refreshNspData("SecurityGroupProvider");
var providerObj;
$(nspHardcodingArray).each(function(){
if(this.id == "securityGroups") {
@ -6077,20 +6014,27 @@
networkkbsread: { label: 'label.network.read' },
networkkbswrite: { label: 'label.network.write' }
},
dataProvider: function(args) {
var jsonObj = args.context.hosts[0];
args.response.success({
data: {
totalCPU: jsonObj.cpunumber + " x " + cloudStack.converters.convertHz(jsonObj.cpuspeed),
cpuused: jsonObj.cpuused,
cpuallocated: (jsonObj.cpuallocated == null || jsonObj.cpuallocated == 0)? "N/A": jsonObj.cpuallocated,
memorytotal: (jsonObj.memorytotal == null || jsonObj.memorytotal == 0)? "N/A": cloudStack.converters.convertBytes(jsonObj.memorytotal * 1024),
memoryallocated: (jsonObj.memoryallocated == null || jsonObj.memoryallocated == 0)? "N/A": cloudStack.converters.convertBytes(jsonObj.memoryallocated * 1024),
memoryused: (jsonObj.memoryused == null || jsonObj.memoryused == 0)? "N/A": cloudStack.converters.convertBytes(jsonObj.memoryused * 1024),
networkkbsread: (jsonObj.networkkbsread == null || jsonObj.networkkbsread == 0)? "N/A": cloudStack.converters.convertBytes(jsonObj.networkkbsread * 1024),
networkkbswrite: (jsonObj.networkkbswrite == null || jsonObj.networkkbswrite == 0)? "N/A": cloudStack.converters.convertBytes(jsonObj.networkkbswrite * 1024)
dataProvider: function(args) {
$.ajax({
url: createURL("listHosts&id=" + args.context.hosts[0].id),
dataType: "json",
async: true,
success: function(json) {
var jsonObj = json.listhostsresponse.host[0];
args.response.success({
data: {
totalCPU: jsonObj.cpunumber + " x " + cloudStack.converters.convertHz(jsonObj.cpuspeed),
cpuused: jsonObj.cpuused,
cpuallocated: (jsonObj.cpuallocated == null || jsonObj.cpuallocated == 0)? "N/A": jsonObj.cpuallocated,
memorytotal: (jsonObj.memorytotal == null || jsonObj.memorytotal == 0)? "N/A": cloudStack.converters.convertBytes(jsonObj.memorytotal * 1024),
memoryallocated: (jsonObj.memoryallocated == null || jsonObj.memoryallocated == 0)? "N/A": cloudStack.converters.convertBytes(jsonObj.memoryallocated * 1024),
memoryused: (jsonObj.memoryused == null || jsonObj.memoryused == 0)? "N/A": cloudStack.converters.convertBytes(jsonObj.memoryused * 1024),
networkkbsread: (jsonObj.networkkbsread == null || jsonObj.networkkbsread == 0)? "N/A": cloudStack.converters.convertBytes(jsonObj.networkkbsread * 1024),
networkkbswrite: (jsonObj.networkkbswrite == null || jsonObj.networkkbswrite == 0)? "N/A": cloudStack.converters.convertBytes(jsonObj.networkkbswrite * 1024)
}
});
}
});
});
}
}
}
@ -7842,4 +7786,80 @@
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) {
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 "Netscaler":
nspMap["netscaler"] = items[i];
break;
case "F5BigIp":
nspMap["f5"] = items[i];
break;
case "JuniperSRX":
nspMap["srx"] = items[i];
break;
case "SecurityGroupProvider":
nspMap["securityGroups"] = 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'
}
];
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: 'f5',
name: 'F5',
state: nspMap.f5 ? nspMap.f5.state : 'Disabled'
}
);
nspHardcodingArray.push(
{
id: 'srx',
name: 'SRX',
state: nspMap.srx ? nspMap.srx.state : 'Disabled'
}
);
}
}
})($, cloudStack);