def _loaded(self, node_data): super(VersionedAttribute, self)._loaded(node_data) self.name = node_data['data'][0] self.atype = node_data['data'][1] self.values = node_data['data'][2] self.max_versions = node_data['data'][3] def _get_value(self): return self.values[-1] def _set_value(self, val): self.transport.setValue(self.oid, val) self.values.append(val) if len(self.values) > self.max_versions: self.values.pop(0) value = property(_get_value, _set_value) def _copySelf(self, target): return target.add('versioned attribute', self.name, self.atype, self.value, self.max_versions) # Add the objects in this module to the object registry. o = object_registry.registerClass(Attribute) o.registerChild(Attribute) o.registerChild(VersionedAttribute) o = object_registry.registerClass(VersionedAttribute) o.registerChild(Attribute) o.registerChild(VersionedAttribute)
def range_from_string(range): """Return a Range object matching an range string. The range string must be two ipv6 address, start and end. End must be equal to or higher than start If a Range object is passed in it is returned untouched. """ if type(range) not in [str, unicode]: return range split = range.split() if len(split) != 2: raise errors.SiptrackError('invalid range string') return Range(split[0], split[1]) # Add the objects in this module to the object registry. o = object_registry.registerClass(Network) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(Network) o.registerChild(NetworkRange) o.registerChild(template.NetworkTemplate) o.registerChild(confignode.ConfigValue) o.registerChild(permission.Permission) o = object_registry.registerClass(NetworkRange) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(confignode.ConfigValue) o.registerChild(permission.Permission)
def _loaded(self, node_data): super(TemplateRuleFlushAssociations, self)._loaded(node_data) self.include = node_data['data'][0] self.exclude = node_data['data'][1] def _created(self): """Called when an object has been newly created.""" self.oid = self.transport.add(self.parent.oid, self.include, self.exclude) def _copySelf(self, target): return target.add(self.class_name, self.include, self.exclude) # Add the objects in this module to the object registry. o = object_registry.registerClass(DeviceTemplate) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(TemplateRulePassword) o.registerChild(TemplateRuleAssignNetwork) o.registerChild(TemplateRuleSubdevice) o.registerChild(TemplateRuleText) o.registerChild(TemplateRuleFixed) o.registerChild(TemplateRuleRegmatch) o.registerChild(TemplateRuleBool) o.registerChild(TemplateRuleInt) o.registerChild(TemplateRuleDeleteAttribute) o.registerChild(TemplateRuleFlushNodes) o.registerChild(TemplateRuleFlushAssociations) o = object_registry.registerClass(NetworkTemplate)
def _set_password_key(self, val): return password_key = property(_get_password_key, _set_password_key) class PublicKey(treenodes.BaseNode): class_id = 'PUK' class_name = 'public key' class_data_len = 0 class PendingSubKey(treenodes.BaseNode): class_id = 'PSK' class_name = 'pending sub key' class_data_len = 0 # Add the objects in this module to the object registry. o = object_registry.registerClass(PasswordTree) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission) o.registerChild(PasswordCategory) o.registerChild(PasswordKey) o.registerChild(Password) o = object_registry.registerClass(PasswordCategory) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission) o.registerChild(Password) o.registerChild(PasswordCategory) o = object_registry.registerClass(Password)
# Rack rack = dt.add('device template', False, [units]) rack.attributes['description'] = 'Rack template.' rack.attributes['name'] = 'Rack' rack.attributes['device_creation'] = True rack.add('template rule text', 'name', 1) rack.add('template rule fixed', 'class', 'rack', False, 1) # Add the objects in this module to the object registry. o = object_registry.registerClass(ViewTree) o.registerChild(View) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(user.UserManagerLocal) o.registerChild(user.UserManagerLDAP) o.registerChild(user.UserManagerActiveDirectory) o.registerChild(confignode.ConfigValue) o.registerChild(permission.Permission) o.registerChild(event.CommandQueue) o.registerChild(event.EventTrigger) o = object_registry.registerClass(View) o.registerChild(container.ContainerTree) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute)
class UserLDAP(BaseUser): class_id = 'UL' class_name = 'user ldap' class_data_len = 2 class UserActiveDirectory(BaseUser): class_id = 'UAD' class_name = 'user active directory' class_data_len = 2 # Add the objects in this module to the object registry. o = object_registry.registerClass(UserManagerLocal) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(UserLocal) o.registerChild(UserGroup) o = object_registry.registerClass(UserManagerLDAP) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(UserLDAP) o.registerChild(UserGroup) o.registerChild(UserGroupLDAP) o = object_registry.registerClass(UserManagerActiveDirectory) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute)
else: raise errors.SiptrackError('unknown protocol in network tree') def isValidAddress(self, address): if self.protocol == 'ipv4': return ipv4.is_valid_address_string(address) elif self.protocol == 'ipv6': return ipv6.is_valid_address_string(address) else: raise errors.SiptrackError('unknown protocol in network tree') def isValidRange(self, range): if self.protocol == 'ipv4': return ipv4.is_valid_range_string(range) elif self.protocol == 'ipv6': return ipv6.is_valid_range_string(range) else: raise errors.SiptrackError('unknown protocol in network tree') # Add the objects in this module to the object registry. o = object_registry.registerClass(NetworkTree) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(ipv4.Network) o.registerChild(ipv4.NetworkRange) o.registerChild(ipv6.Network) o.registerChild(ipv6.NetworkRange) o.registerChild(template.NetworkTemplate) o.registerChild(confignode.ConfigValue) o.registerChild(permission.Permission)
def _get_value(self): return self._value def _set_value(self, val): self._value = val self.transport.set(self.oid, val) value = property(_get_value, _set_value) def _get_values(self): return self._values def _set_values(self, val): self._values = val self.transport.setValues(self.oid, val) values = property(_get_values, _set_values) # Add the objects in this module to the object registry. o = object_registry.registerClass(Counter) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission) o = object_registry.registerClass(CounterLoop) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission)
def __init__(self, parent): super(ContainerTree, self).__init__(parent) class Container(treenodes.BaseNode): """Container for attributes. This object type is pretty much obsolete. """ class_id = 'C' class_name = 'container' class_data_len = 0 def __init__(self, parent): super(Container, self).__init__(parent) # Add the objects in this module to the object registry. o = object_registry.registerClass(ContainerTree) o.registerChild(Container) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission) o = object_registry.registerClass(Container) o.registerChild(Container) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission)
"""Called when an object has been newly created.""" self.oid = self.transport.add(self.parent.oid, self._values) pass def _get_value(self): return self._value def _set_value(self, val): self._value = val self.transport.set(self.oid, val) value = property(_get_value, _set_value) def _get_values(self): return self._values def _set_values(self, val): self._values = val self.transport.setValues(self.oid, val) values = property(_get_values, _set_values) # Add the objects in this module to the object registry. o = object_registry.registerClass(Counter) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission) o = object_registry.registerClass(CounterLoop) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission)
self.name = node_data['data'][0] self.atype = node_data['data'][1] self._value = node_data['data'][2] @property def value(self): return self._value @value.setter def value(self, val): self._value = val self.transport.setValue(self.oid, val) def _copySelf(self, target): return target.add('encrypted attribute', self.name, self.atype, self._value) # Add the objects in this module to the object registry. o = object_registry.registerClass(Attribute) o.registerChild(Attribute) o.registerChild(VersionedAttribute) o = object_registry.registerClass(VersionedAttribute) o.registerChild(Attribute) o.registerChild(VersionedAttribute) o = object_registry.registerClass(EncryptedAttribute) o.registerChild(Attribute) o.registerChild(VersionedAttribute)
self.oid = self.transport.add(self.parent.oid, self._name, self._value) def _get_name(self): return self._name def _set_name(self, val): self.transport.setName(self.oid, val) self._name = val name = property(_get_name, _set_name) def _get_value(self): return self._value def _set_value(self, val): self.transport.setValue(self.oid, val) self._value = val value = property(_get_value, _set_value) # Add the objects in this module to the object registry. o = object_registry.registerClass(ConfigNetworkAutoassign) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission) o = object_registry.registerClass(ConfigValue) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission)
units.attributes['description'] = 'Create rack units.' units.attributes['name'] = 'Rack Units' units.attributes['device_creation'] = False units.add('template rule bool', 'reverse-device-sort-order', True, 1) units.add('template rule subdevice', 42, unit, 1) # Rack rack = dt.add('device template', False, [units]) rack.attributes['description'] = 'Rack template.' rack.attributes['name'] = 'Rack' rack.attributes['device_creation'] = True rack.add('template rule text', 'name', 1) rack.add('template rule fixed', 'class', 'rack', False, 1) # Add the objects in this module to the object registry. o = object_registry.registerClass(ViewTree) o.registerChild(View) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(user.UserManagerLocal) o.registerChild(user.UserManagerLDAP) o.registerChild(user.UserManagerActiveDirectory) o.registerChild(confignode.ConfigValue) o.registerChild(permission.Permission) o.registerChild(event.CommandQueue) o.registerChild(event.EventTrigger) o = object_registry.registerClass(View) o.registerChild(container.ContainerTree) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute)
return self._code def _set_code(self, val): self._code = val self.transport.setCode(self.oid, val) code = property(_get_code, _set_code) @property def error(self): return self._error @property def error_timestamp(self): return self._error_timestamp # Add the objects in this module to the object registry. o = object_registry.registerClass(Command) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission) o = object_registry.registerClass(CommandQueue) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission) o.registerChild(Command) o = object_registry.registerClass(EventTriggerRulePython) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission)
super(DeviceConfigTemplate, self)._loaded(node_data) def _created(self): """Called when an object has been newly created.""" self.oid = self.transport.add(self.parent.oid, self._template) def _get_template(self): return self.transport.getTemplate(self.oid) def _set_template(self, template): self.transport.setTemplate(self.oid, template) self._template = template template = property(_get_template, _set_template) def expand(self, keywords = None): if not keywords: keywords = {} return self.transport.expand(self.oid, keywords) # Add the objects in this module to the object registry. o = object_registry.registerClass(DeviceConfig) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission) o = object_registry.registerClass(DeviceConfigTemplate) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission)
self._users.set(node_data['data'][2]) self._groups.set(node_data['data'][3]) self.all_users = node_data['data'][4] self.recursive = node_data['data'][5] def _created(self): """Called when an object has been newly created.""" users = self._users.oids groups = self._groups.oids self.oid = self.transport.add(self.parent.oid, self.read_access, self.write_access, users, groups, self.all_users, self.recursive) def _get_users(self): return self._users.get() def _set_users(self, val): return users = property(_get_users, _set_users) def _get_groups(self): return self._groups.get() def _set_groups(self, val): return groups = property(_get_groups, _set_groups) # Add the objects in this module to the object registry. o = object_registry.registerClass(Permission) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute)
class_data_len = 0 def __init__(self, parent): super(ContainerTree, self).__init__(parent) class Container(treenodes.BaseNode): """Container for attributes. This object type is pretty much obsolete. """ class_id = 'C' class_name = 'container' class_data_len = 0 def __init__(self, parent): super(Container, self).__init__(parent) # Add the objects in this module to the object registry. o = object_registry.registerClass(ContainerTree) o.registerChild(Container) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission) o = object_registry.registerClass(Container) o.registerChild(Container) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission)
self.oid = self.transport.add(self.parent.oid, self.num_devices, device_template_oid) def setNumDevices(self, num_devices): self.transport.setNumDevices(self.oid, num_devices) self.num_devices = num_devices def setDeviceTemplate(self, device_template): device_template_oid = '' if device_template: device_template_oid = device_template.oid self.transport.setDeviceTemplate(self.oid, device_template_oid) self.device_template = device_template # Add the objects in this module to the object registry. o = object_registry.registerClass(DeviceTree) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(Device) o.registerChild(DeviceCategory) o.registerChild(template.DeviceTemplate) o.registerChild(confignode.ConfigNetworkAutoassign) o.registerChild(confignode.ConfigValue) o.registerChild(permission.Permission) o = object_registry.registerClass(DeviceCategory) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(Device) o.registerChild(DeviceCategory) o.registerChild(template.DeviceTemplate)
def _get_name(self): return self._name def _set_name(self, val): self.transport.setName(self.oid, val) self._name = val name = property(_get_name, _set_name) def _get_value(self): return self._value def _set_value(self, val): self.transport.setValue(self.oid, val) self._value = val value = property(_get_value, _set_value) # Add the objects in this module to the object registry. o = object_registry.registerClass(ConfigNetworkAutoassign) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission) o = object_registry.registerClass(ConfigValue) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(permission.Permission)
The range string must be two ipv4 address, start and end. End must be equal to or higher than start If a Range object is passed in it is returned untouched. """ if type(range) == Range: return range split = range.split() if len(split) != 2: raise errors.SiptrackError('invalid range string') start = dotted_quad_to_num(split[0]) end = dotted_quad_to_num(split[1]) return Range(start, end) # Add the objects in this module to the object registry. o = object_registry.registerClass(Network) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(Network) o.registerChild(NetworkRange) o.registerChild(template.NetworkTemplate) o.registerChild(confignode.ConfigValue) o.registerChild(permission.Permission) o = object_registry.registerClass(NetworkRange) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(confignode.ConfigValue) o.registerChild(permission.Permission)
class_id = 'U' class_name = 'user local' class_data_len = 2 class UserLDAP(BaseUser): class_id = 'UL' class_name = 'user ldap' class_data_len = 2 class UserActiveDirectory(BaseUser): class_id = 'UAD' class_name = 'user active directory' class_data_len = 2 # Add the objects in this module to the object registry. o = object_registry.registerClass(UserManagerLocal) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(UserLocal) o.registerChild(UserGroup) o = object_registry.registerClass(UserManagerLDAP) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute) o.registerChild(UserLDAP) o.registerChild(UserGroup) o.registerChild(UserGroupLDAP) o = object_registry.registerClass(UserManagerActiveDirectory) o.registerChild(attribute.Attribute) o.registerChild(attribute.VersionedAttribute)