Name

global.LoadBalancerCiDeleter

Description

No description available

Script

var LoadBalancerCiDeleter = Class.create();

LoadBalancerCiDeleter.prototype = Object.extendsObject(HardwareCiDeleter,{
  initialize: function() {
  	this.mainCiType = "cmdb_ci_lb";
  	this.loadBalancerCisModelConfiguration =
  	{
  		"mainCiType" : this.mainCiType,
  		"modelConnections":[]
  	};
  },

  getLoadBalancerModel: function(){
  	var modelConnections = [];

  modelConnections.push(CiDeleter.createConnection("cmdb_ci_lb_vlan",this.mainCiType,"load_balancer"));
  modelConnections.push(CiDeleter.createConnection("cmdb_ci_lb_service",this.mainCiType,"load_balancer"));
  	modelConnections.push(CiDeleter.createConnection("cmdb_ci_lb_interface",this.mainCiType,"load_balancer"));
  	modelConnections.push(CiDeleter.createConnection("cmdb_ci_lb_pool_member",this.mainCiType,"load_balancer"));
  	modelConnections.push(CiDeleter.createConnection("cmdb_ci_lb_pool",this.mainCiType,"load_balancer"));
  	modelConnections.push(CiDeleter.createConnection("cmdb_ci_lb_pool_member","cmdb_ci_lb_pool","pool"));
  	modelConnections.push(CiDeleter.createConnection("cmdb_ci_lb_service","cmdb_ci_lb_pool","pool"));

  	return modelConnections;

  },

  concatLbModelWithHardwareModel: function(loabBalancerConnection, hardwareConnection){
  	return hardwareConnection.concat(loabBalancerConnection);
  },

  getLoadBalancerModelConfiguration: function(){

  	var loadBalancerModelConnections = this.getLoadBalancerModel();
  	var hardwareModelConnections = HardwareCiDeleter.prototype.getHardwareModel.call(this,this.mainCiType);
  	var totalCiModel = this.concatLbModelWithHardwareModel(loadBalancerModelConnections,hardwareModelConnections);

  	this.loadBalancerCisModelConfiguration.modelConnections = totalCiModel;

  	return this.loadBalancerCisModelConfiguration;
  },

  compareAndDeleteUnusedCisFromDB: function(ciModelConfiguration, payloadFromIE){
  	(new CiDeleter(ciModelConfiguration)).compareAndDeleteUnusedCisFromDB(payloadFromIE);
  },

  runUnusedCisDeletion: function(payloadFromIE){
  	var loadBalancerModelConfiguration = this.getLoadBalancerModelConfiguration();
  	this.compareAndDeleteUnusedCisFromDB(loadBalancerModelConfiguration,payloadFromIE.items);
  },

  type: 'LoadBalancerCiDeleter'
});

Sys ID

2b71dab0dbb4a200d8c976231f96199a

Offical Documentation

Official Docs: