Difference between revisions of "Script to Check IP Address Attributes"

From Observer GigaFlow Support | VIAVI Solutions Inc.
Jump to: navigation, search
 
(One intermediate revision by one user not shown)
Line 1: Line 1:
[[Category:Scripting Notes]]
+
[[Category:Scripts]]
[[Category:Technical Notes]]
+
 
Checking whether an ip address has attributes in a category, adding or updating
 
Checking whether an ip address has attributes in a category, adding or updating
 
  var utils = Java.type('ros.CROSUtils');
 
  var utils = Java.type('ros.CROSUtils');

Latest revision as of 11:59, 23 November 2018

Checking whether an ip address has attributes in a category, adding or updating

var utils = Java.type('ros.CROSUtils');
updateAttribute("172.21.21.21","Function2","Kevins PC2");
function updateAttribute(ipaddress,category,newattribute){
 if (actions.allIPs.containsKey(utils.inet_atob(ipaddress))){
    var ip = actions.allIPs.get(utils.inet_atob(ipaddress))
    var categoryid = ip.getCategory(category);
    var atrribs = ip.getAttributes(categoryid)
    if (atrribs.length()>1){
       log.warn("Already have "+ipaddress+" multiple attributes:"+atrribs);
    }else if (atrribs.length()==1){
       log.warn("Already have "+ipaddress+" single attribute:"+atrribs);
         if (atrribs.get(0)===newattribute){
           log.warn("Already have "+ipaddress+" same single attribute:"+atrribs.get(0));
         }else{
           log.warn("Updating "+ipaddress+" single attribute from :"+atrribs.get(0) +" to "+newattribute);
         	ip.removeAttrib(categoryid,atrribs.get(0));
           ip.addAttrib(categoryid,newattribute);
         }
     }else{
 	log.warn("No "+ipaddress+" attributes for category:"+category+" ,adding");
       ip.addAttrib(categoryid,newattribute);
     }
     }else{
   log.warn("No such IP address known"+ipaddress);
   }
}