def unnamed_vlantags(self, action, startvlan="", endvlan=""): """ Associate Unnamed VLAN Tags. :param action: (str) 'add', 'remove', or 'clear' :param startvlan: (int) Lower VLAN. :param endvlan: (int) Upper VLAN. """ logging.debug("In unnamed_vlantags() for VlanGroupTags class.") if action == "add": startvlan, endvlan = validate_vlans(start_vlan=startvlan, end_vlan=endvlan) new_literal = { "startTag": startvlan, "endTag": endvlan, "type": "" } if "literals" in self.__dict__: duplicate = False for obj in self.literals: if (obj["startTag"] == new_literal["startTag"] and obj["endTag"] == new_literal["endTag"]): duplicate = True break if not duplicate: self.literals.append(new_literal) logging.info( f'Adding "{startvlan}/{endvlan}" to VlanGroupTags.') else: self.literals = [new_literal] logging.info( f'Adding "{startvlan}/{endvlan}" to VlanGroupTags.') elif action == "remove": startvlan, endvlan = validate_vlans(start_vlan=startvlan, end_vlan=endvlan) if "literals" in self.__dict__: literals_list = [] for obj in self.literals: if obj["startTag"] != startvlan and obj[ "endTag"] != endvlan: literals_list.append(obj) self.literals = literals_list logging.info( f'Removed "{startvlan}/{endvlan}" from VlanGroupTags.') else: logging.info( "This VlanGroupTag has no unnamed_vlantags. Nothing to remove." ) elif action == "clear": if "literals" in self.__dict__: del self.literals logging.info( "All unnamed_vlantags removed from this VlanGroupTags.")
def vlans(self, start_vlan, end_vlan=""): """ Associate VLANs. :param start_vlan: (int) Lower VLAN. :param end_vlan: (int) Upper VLAN. """ logging.debug("In vlans() for VlanTags class.") start_vlan, end_vlan = validate_vlans(start_vlan=start_vlan, end_vlan=end_vlan) self.data = {"startTag": start_vlan, "endTag": end_vlan}
def vlans(self, start_vlan, end_vlan=""): logging.debug("In vlans() for VlanTags class.") start_vlan, end_vlan = validate_vlans(start_vlan=start_vlan, end_vlan=end_vlan) self.data = {"startTag": start_vlan, "endTag": end_vlan}