2
0
mirror of https://github.com/openkmip/pykmip synced 2025-12-15 07:43:26 +00:00

Merge pull request #133 from viktorTarasov/feature/attributes/eq-for-name

attributes: 'eq' and 'repr' methods for Name attr.
This commit is contained in:
Peter Hamilton
2016-03-18 12:55:56 -04:00
2 changed files with 136 additions and 0 deletions

View File

@@ -63,12 +63,44 @@ class Name(Struct):
def __init__(self, value=None):
super(Name.NameValue, self).__init__(value, Tags.NAME_VALUE)
def __eq__(self, other):
if isinstance(other, Name.NameValue):
if self.value == other.value:
return True
else:
return False
else:
return NotImplemented
def __repr__(self):
return "{0}(value={1})".format(
type(self).__name__, repr(self.value))
def __str__(self):
return "{0}".format(self.value)
class NameType(Enumeration):
def __init__(self, value=None):
super(Name.NameType, self).__init__(
enums.NameType, value, Tags.NAME_TYPE)
def __eq__(self, other):
if isinstance(other, Name.NameType):
if self.value == other.value:
return True
else:
return False
else:
return NotImplemented
def __repr__(self):
return "{0}(value={1})".format(
type(self).__name__, repr(self.value))
def __str__(self):
return "{0}".format(self.value)
def __init__(self, name_value=None, name_type=None):
super(Name, self).__init__(tag=Tags.NAME)
self.name_value = name_value
@@ -149,6 +181,25 @@ class Name(Struct):
return Name(name_value=value,
name_type=n_type)
def __repr__(self):
return "{0}(type={1},value={2})".format(
type(self).__name__,
repr(self.name_type),
repr(self.name_value))
def __str__(self):
return "{0}".format(self.name_value.value)
def __eq__(self, other):
if isinstance(other, Name):
if self.name_value == other.name_value and \
self.name_type == other.name_type:
return True
else:
return False
else:
return NotImplemented
# 3.3
class ObjectType(Enumeration):