Browse Source

Add Dynamic Mixin class structure, all noops for now

pull/307/head
Ross McFarland 7 years ago
parent
commit
698eb91684
No known key found for this signature in database GPG Key ID: 61C10C4FC8FE4A89
1 changed files with 44 additions and 32 deletions
  1. +44
    -32
      octodns/record.py

+ 44
- 32
octodns/record.py View File

@ -382,38 +382,6 @@ class _GeoMixin(_ValuesMixin):
return super(_GeoMixin, self).__repr__()
class ARecord(_GeoMixin, Record):
_type = 'A'
@classmethod
def _validate_value(self, value):
reasons = []
try:
IPv4Address(unicode(value))
except Exception:
reasons.append('invalid ip address "{}"'.format(value))
return reasons
def _process_values(self, values):
return values
class AaaaRecord(_GeoMixin, Record):
_type = 'AAAA'
@classmethod
def _validate_value(self, value):
reasons = []
try:
IPv6Address(unicode(value))
except Exception:
reasons.append('invalid ip address "{}"'.format(value))
return reasons
def _process_values(self, values):
return values
class _ValueMixin(object):
@classmethod
@ -453,6 +421,50 @@ class _ValueMixin(object):
self.fqdn, self.value)
class _DynamicBaseMixin(object):
pass
class _DynamicValuesMixin(_DynamicBaseMixin, _GeoMixin):
pass
class _DynamicValueMixin(_DynamicBaseMixin, _ValueMixin):
pass
class ARecord(_DynamicValuesMixin, Record):
_type = 'A'
@classmethod
def _validate_value(self, value):
reasons = []
try:
IPv4Address(unicode(value))
except Exception:
reasons.append('invalid ip address "{}"'.format(value))
return reasons
def _process_values(self, values):
return values
class AaaaRecord(_GeoMixin, Record):
_type = 'AAAA'
@classmethod
def _validate_value(self, value):
reasons = []
try:
IPv6Address(unicode(value))
except Exception:
reasons.append('invalid ip address "{}"'.format(value))
return reasons
def _process_values(self, values):
return values
class AliasRecord(_ValueMixin, Record):
_type = 'ALIAS'


Loading…
Cancel
Save