
from operator import attrgetter
import pyangbind.lib.xpathhelper as xpathhelper
from pyangbind.lib.yangtypes import RestrictedPrecisionDecimalType, RestrictedClassType, TypedListType
from pyangbind.lib.yangtypes import YANGBool, YANGListType, YANGDynClass, ReferenceType
from pyangbind.lib.base import PybindBase
from decimal import Decimal
from bitarray import bitarray
import __builtin__
class ldp_sync_info(PybindBase):
  """
  This class was auto-generated by the PythonClass plugin for PYANG
  from YANG module brocade-isis-operational - based on the path /isis-state/interface-detail/isis-intf/ldp-sync-info. Each member element of
  the container is represented as a class variable - with a specific
  YANG type.

  YANG Description: ISIS LDP sync info
  """
  __slots__ = ('_pybind_generated_by', '_path_helper', '_yang_name', '_rest_name', '_extmethods', '__ldp_sync_enabled','__ldp_sync_hold_down','__ldp_in_sync','__remain_hd_time','__ldp_sync_hd_expired',)

  _yang_name = 'ldp-sync-info'
  _rest_name = 'ldp-sync-info'

  _pybind_generated_by = 'container'

  def __init__(self, *args, **kwargs):

    path_helper_ = kwargs.pop("path_helper", None)
    if path_helper_ is False:
      self._path_helper = False
    elif path_helper_ is not None and isinstance(path_helper_, xpathhelper.YANGPathHelper):
      self._path_helper = path_helper_
    elif hasattr(self, "_parent"):
      path_helper_ = getattr(self._parent, "_path_helper", False)
      self._path_helper = path_helper_
    else:
      self._path_helper = False

    extmethods = kwargs.pop("extmethods", None)
    if extmethods is False:
      self._extmethods = False
    elif extmethods is not None and isinstance(extmethods, dict):
      self._extmethods = extmethods
    elif hasattr(self, "_parent"):
      extmethods = getattr(self._parent, "_extmethods", None)
      self._extmethods = extmethods
    else:
      self._extmethods = False
    self.__ldp_sync_hd_expired = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-sync-hd-expired", rest_name="ldp-sync-hd-expired", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)
    self.__remain_hd_time = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="remain-hd-time", rest_name="remain-hd-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint32', is_config=False)
    self.__ldp_in_sync = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-in-sync", rest_name="ldp-in-sync", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)
    self.__ldp_sync_enabled = YANGDynClass(base=RestrictedClassType(base_type=unicode,                                     restriction_type="dict_key",                                     restriction_arg={u'is-enabled': {'value': 1}, u'is-disabled': {'value': 0}},), is_leaf=True, yang_name="ldp-sync-enabled", rest_name="ldp-sync-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='isis-status', is_config=False)
    self.__ldp_sync_hold_down = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="ldp-sync-hold-down", rest_name="ldp-sync-hold-down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint16', is_config=False)

    load = kwargs.pop("load", None)
    if args:
      if len(args) > 1:
        raise TypeError("cannot create a YANG container with >1 argument")
      all_attr = True
      for e in self._pyangbind_elements:
        if not hasattr(args[0], e):
          all_attr = False
          break
      if not all_attr:
        raise ValueError("Supplied object did not have the correct attributes")
      for e in self._pyangbind_elements:
        nobj = getattr(args[0], e)
        if nobj._changed() is False:
          continue
        setmethod = getattr(self, "_set_%s" % e)
        if load is None:
          setmethod(getattr(args[0], e))
        else:
          setmethod(getattr(args[0], e), load=load)

  def _path(self):
    if hasattr(self, "_parent"):
      return self._parent._path()+[self._yang_name]
    else:
      return [u'isis-state', u'interface-detail', u'isis-intf', u'ldp-sync-info']

  def _rest_path(self):
    if hasattr(self, "_parent"):
      if self._rest_name:
        return self._parent._rest_path()+[self._rest_name]
      else:
        return self._parent._rest_path()
    else:
      return [u'isis-state', u'interface-detail', u'isis-intf', u'ldp-sync-info']

  def _get_ldp_sync_enabled(self):
    """
    Getter method for ldp_sync_enabled, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_enabled (isis-status)

    YANG Description: If LDP sync enabled
    """
    return self.__ldp_sync_enabled
      
  def _set_ldp_sync_enabled(self, v, load=False):
    """
    Setter method for ldp_sync_enabled, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_enabled (isis-status)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_ldp_sync_enabled is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_ldp_sync_enabled() directly.

    YANG Description: If LDP sync enabled
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=unicode,                                     restriction_type="dict_key",                                     restriction_arg={u'is-enabled': {'value': 1}, u'is-disabled': {'value': 0}},), is_leaf=True, yang_name="ldp-sync-enabled", rest_name="ldp-sync-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='isis-status', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """ldp_sync_enabled must be of a type compatible with isis-status""",
          'defined-type': "brocade-isis-operational:isis-status",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=unicode,                                     restriction_type="dict_key",                                     restriction_arg={u'is-enabled': {'value': 1}, u'is-disabled': {'value': 0}},), is_leaf=True, yang_name="ldp-sync-enabled", rest_name="ldp-sync-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='isis-status', is_config=False)""",
        })

    self.__ldp_sync_enabled = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_ldp_sync_enabled(self):
    self.__ldp_sync_enabled = YANGDynClass(base=RestrictedClassType(base_type=unicode,                                     restriction_type="dict_key",                                     restriction_arg={u'is-enabled': {'value': 1}, u'is-disabled': {'value': 0}},), is_leaf=True, yang_name="ldp-sync-enabled", rest_name="ldp-sync-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='isis-status', is_config=False)


  def _get_ldp_sync_hold_down(self):
    """
    Getter method for ldp_sync_hold_down, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hold_down (uint16)

    YANG Description: LDP sync Hold down time
    """
    return self.__ldp_sync_hold_down
      
  def _set_ldp_sync_hold_down(self, v, load=False):
    """
    Setter method for ldp_sync_hold_down, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hold_down (uint16)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_ldp_sync_hold_down is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_ldp_sync_hold_down() directly.

    YANG Description: LDP sync Hold down time
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="ldp-sync-hold-down", rest_name="ldp-sync-hold-down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint16', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """ldp_sync_hold_down must be of a type compatible with uint16""",
          'defined-type': "uint16",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="ldp-sync-hold-down", rest_name="ldp-sync-hold-down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint16', is_config=False)""",
        })

    self.__ldp_sync_hold_down = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_ldp_sync_hold_down(self):
    self.__ldp_sync_hold_down = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="ldp-sync-hold-down", rest_name="ldp-sync-hold-down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint16', is_config=False)


  def _get_ldp_in_sync(self):
    """
    Getter method for ldp_in_sync, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_in_sync (boolean)

    YANG Description: If LDP is in sync
    """
    return self.__ldp_in_sync
      
  def _set_ldp_in_sync(self, v, load=False):
    """
    Setter method for ldp_in_sync, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_in_sync (boolean)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_ldp_in_sync is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_ldp_in_sync() directly.

    YANG Description: If LDP is in sync
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="ldp-in-sync", rest_name="ldp-in-sync", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """ldp_in_sync must be of a type compatible with boolean""",
          'defined-type': "boolean",
          'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-in-sync", rest_name="ldp-in-sync", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)""",
        })

    self.__ldp_in_sync = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_ldp_in_sync(self):
    self.__ldp_in_sync = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-in-sync", rest_name="ldp-in-sync", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)


  def _get_remain_hd_time(self):
    """
    Getter method for remain_hd_time, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/remain_hd_time (uint32)

    YANG Description: Remaining hold down time
    """
    return self.__remain_hd_time
      
  def _set_remain_hd_time(self, v, load=False):
    """
    Setter method for remain_hd_time, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/remain_hd_time (uint32)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_remain_hd_time is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_remain_hd_time() directly.

    YANG Description: Remaining hold down time
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="remain-hd-time", rest_name="remain-hd-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint32', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """remain_hd_time must be of a type compatible with uint32""",
          'defined-type': "uint32",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="remain-hd-time", rest_name="remain-hd-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint32', is_config=False)""",
        })

    self.__remain_hd_time = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_remain_hd_time(self):
    self.__remain_hd_time = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="remain-hd-time", rest_name="remain-hd-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint32', is_config=False)


  def _get_ldp_sync_hd_expired(self):
    """
    Getter method for ldp_sync_hd_expired, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hd_expired (boolean)

    YANG Description: If LDP sync is expired
    """
    return self.__ldp_sync_hd_expired
      
  def _set_ldp_sync_hd_expired(self, v, load=False):
    """
    Setter method for ldp_sync_hd_expired, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hd_expired (boolean)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_ldp_sync_hd_expired is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_ldp_sync_hd_expired() directly.

    YANG Description: If LDP sync is expired
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="ldp-sync-hd-expired", rest_name="ldp-sync-hd-expired", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """ldp_sync_hd_expired must be of a type compatible with boolean""",
          'defined-type': "boolean",
          'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-sync-hd-expired", rest_name="ldp-sync-hd-expired", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)""",
        })

    self.__ldp_sync_hd_expired = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_ldp_sync_hd_expired(self):
    self.__ldp_sync_hd_expired = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-sync-hd-expired", rest_name="ldp-sync-hd-expired", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)

  ldp_sync_enabled = __builtin__.property(_get_ldp_sync_enabled)
  ldp_sync_hold_down = __builtin__.property(_get_ldp_sync_hold_down)
  ldp_in_sync = __builtin__.property(_get_ldp_in_sync)
  remain_hd_time = __builtin__.property(_get_remain_hd_time)
  ldp_sync_hd_expired = __builtin__.property(_get_ldp_sync_hd_expired)


  _pyangbind_elements = {'ldp_sync_enabled': ldp_sync_enabled, 'ldp_sync_hold_down': ldp_sync_hold_down, 'ldp_in_sync': ldp_in_sync, 'remain_hd_time': remain_hd_time, 'ldp_sync_hd_expired': ldp_sync_hd_expired, }




from operator import attrgetter
import pyangbind.lib.xpathhelper as xpathhelper
from pyangbind.lib.yangtypes import RestrictedPrecisionDecimalType, RestrictedClassType, TypedListType
from pyangbind.lib.yangtypes import YANGBool, YANGListType, YANGDynClass, ReferenceType
from pyangbind.lib.base import PybindBase
from decimal import Decimal
from bitarray import bitarray
import __builtin__
class ldp_sync_info(PybindBase):
  """
  This class was auto-generated by the PythonClass plugin for PYANG
  from YANG module brocade-isis-operational - based on the path /isis-state/interface-detail/isis-intf/ldp-sync-info. Each member element of
  the container is represented as a class variable - with a specific
  YANG type.

  YANG Description: ISIS LDP sync info
  """
  __slots__ = ('_pybind_generated_by', '_path_helper', '_yang_name', '_rest_name', '_extmethods', '__ldp_sync_enabled','__ldp_sync_hold_down','__ldp_in_sync','__remain_hd_time','__ldp_sync_hd_expired',)

  _yang_name = 'ldp-sync-info'
  _rest_name = 'ldp-sync-info'

  _pybind_generated_by = 'container'

  def __init__(self, *args, **kwargs):

    path_helper_ = kwargs.pop("path_helper", None)
    if path_helper_ is False:
      self._path_helper = False
    elif path_helper_ is not None and isinstance(path_helper_, xpathhelper.YANGPathHelper):
      self._path_helper = path_helper_
    elif hasattr(self, "_parent"):
      path_helper_ = getattr(self._parent, "_path_helper", False)
      self._path_helper = path_helper_
    else:
      self._path_helper = False

    extmethods = kwargs.pop("extmethods", None)
    if extmethods is False:
      self._extmethods = False
    elif extmethods is not None and isinstance(extmethods, dict):
      self._extmethods = extmethods
    elif hasattr(self, "_parent"):
      extmethods = getattr(self._parent, "_extmethods", None)
      self._extmethods = extmethods
    else:
      self._extmethods = False
    self.__ldp_sync_hd_expired = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-sync-hd-expired", rest_name="ldp-sync-hd-expired", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)
    self.__remain_hd_time = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="remain-hd-time", rest_name="remain-hd-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint32', is_config=False)
    self.__ldp_in_sync = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-in-sync", rest_name="ldp-in-sync", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)
    self.__ldp_sync_enabled = YANGDynClass(base=RestrictedClassType(base_type=unicode,                                     restriction_type="dict_key",                                     restriction_arg={u'is-enabled': {'value': 1}, u'is-disabled': {'value': 0}},), is_leaf=True, yang_name="ldp-sync-enabled", rest_name="ldp-sync-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='isis-status', is_config=False)
    self.__ldp_sync_hold_down = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="ldp-sync-hold-down", rest_name="ldp-sync-hold-down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint16', is_config=False)

    load = kwargs.pop("load", None)
    if args:
      if len(args) > 1:
        raise TypeError("cannot create a YANG container with >1 argument")
      all_attr = True
      for e in self._pyangbind_elements:
        if not hasattr(args[0], e):
          all_attr = False
          break
      if not all_attr:
        raise ValueError("Supplied object did not have the correct attributes")
      for e in self._pyangbind_elements:
        nobj = getattr(args[0], e)
        if nobj._changed() is False:
          continue
        setmethod = getattr(self, "_set_%s" % e)
        if load is None:
          setmethod(getattr(args[0], e))
        else:
          setmethod(getattr(args[0], e), load=load)

  def _path(self):
    if hasattr(self, "_parent"):
      return self._parent._path()+[self._yang_name]
    else:
      return [u'isis-state', u'interface-detail', u'isis-intf', u'ldp-sync-info']

  def _rest_path(self):
    if hasattr(self, "_parent"):
      if self._rest_name:
        return self._parent._rest_path()+[self._rest_name]
      else:
        return self._parent._rest_path()
    else:
      return [u'isis-state', u'interface-detail', u'isis-intf', u'ldp-sync-info']

  def _get_ldp_sync_enabled(self):
    """
    Getter method for ldp_sync_enabled, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_enabled (isis-status)

    YANG Description: If LDP sync enabled
    """
    return self.__ldp_sync_enabled
      
  def _set_ldp_sync_enabled(self, v, load=False):
    """
    Setter method for ldp_sync_enabled, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_enabled (isis-status)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_ldp_sync_enabled is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_ldp_sync_enabled() directly.

    YANG Description: If LDP sync enabled
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=unicode,                                     restriction_type="dict_key",                                     restriction_arg={u'is-enabled': {'value': 1}, u'is-disabled': {'value': 0}},), is_leaf=True, yang_name="ldp-sync-enabled", rest_name="ldp-sync-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='isis-status', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """ldp_sync_enabled must be of a type compatible with isis-status""",
          'defined-type': "brocade-isis-operational:isis-status",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=unicode,                                     restriction_type="dict_key",                                     restriction_arg={u'is-enabled': {'value': 1}, u'is-disabled': {'value': 0}},), is_leaf=True, yang_name="ldp-sync-enabled", rest_name="ldp-sync-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='isis-status', is_config=False)""",
        })

    self.__ldp_sync_enabled = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_ldp_sync_enabled(self):
    self.__ldp_sync_enabled = YANGDynClass(base=RestrictedClassType(base_type=unicode,                                     restriction_type="dict_key",                                     restriction_arg={u'is-enabled': {'value': 1}, u'is-disabled': {'value': 0}},), is_leaf=True, yang_name="ldp-sync-enabled", rest_name="ldp-sync-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='isis-status', is_config=False)


  def _get_ldp_sync_hold_down(self):
    """
    Getter method for ldp_sync_hold_down, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hold_down (uint16)

    YANG Description: LDP sync Hold down time
    """
    return self.__ldp_sync_hold_down
      
  def _set_ldp_sync_hold_down(self, v, load=False):
    """
    Setter method for ldp_sync_hold_down, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hold_down (uint16)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_ldp_sync_hold_down is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_ldp_sync_hold_down() directly.

    YANG Description: LDP sync Hold down time
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="ldp-sync-hold-down", rest_name="ldp-sync-hold-down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint16', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """ldp_sync_hold_down must be of a type compatible with uint16""",
          'defined-type': "uint16",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="ldp-sync-hold-down", rest_name="ldp-sync-hold-down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint16', is_config=False)""",
        })

    self.__ldp_sync_hold_down = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_ldp_sync_hold_down(self):
    self.__ldp_sync_hold_down = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="ldp-sync-hold-down", rest_name="ldp-sync-hold-down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint16', is_config=False)


  def _get_ldp_in_sync(self):
    """
    Getter method for ldp_in_sync, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_in_sync (boolean)

    YANG Description: If LDP is in sync
    """
    return self.__ldp_in_sync
      
  def _set_ldp_in_sync(self, v, load=False):
    """
    Setter method for ldp_in_sync, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_in_sync (boolean)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_ldp_in_sync is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_ldp_in_sync() directly.

    YANG Description: If LDP is in sync
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="ldp-in-sync", rest_name="ldp-in-sync", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """ldp_in_sync must be of a type compatible with boolean""",
          'defined-type': "boolean",
          'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-in-sync", rest_name="ldp-in-sync", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)""",
        })

    self.__ldp_in_sync = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_ldp_in_sync(self):
    self.__ldp_in_sync = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-in-sync", rest_name="ldp-in-sync", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)


  def _get_remain_hd_time(self):
    """
    Getter method for remain_hd_time, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/remain_hd_time (uint32)

    YANG Description: Remaining hold down time
    """
    return self.__remain_hd_time
      
  def _set_remain_hd_time(self, v, load=False):
    """
    Setter method for remain_hd_time, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/remain_hd_time (uint32)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_remain_hd_time is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_remain_hd_time() directly.

    YANG Description: Remaining hold down time
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="remain-hd-time", rest_name="remain-hd-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint32', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """remain_hd_time must be of a type compatible with uint32""",
          'defined-type': "uint32",
          'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="remain-hd-time", rest_name="remain-hd-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint32', is_config=False)""",
        })

    self.__remain_hd_time = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_remain_hd_time(self):
    self.__remain_hd_time = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="remain-hd-time", rest_name="remain-hd-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint32', is_config=False)


  def _get_ldp_sync_hd_expired(self):
    """
    Getter method for ldp_sync_hd_expired, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hd_expired (boolean)

    YANG Description: If LDP sync is expired
    """
    return self.__ldp_sync_hd_expired
      
  def _set_ldp_sync_hd_expired(self, v, load=False):
    """
    Setter method for ldp_sync_hd_expired, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hd_expired (boolean)
    If this variable is read-only (config: false) in the
    source YANG file, then _set_ldp_sync_hd_expired is considered as a private
    method. Backends looking to populate this variable should
    do so via calling thisObj._set_ldp_sync_hd_expired() directly.

    YANG Description: If LDP sync is expired
    """
    if hasattr(v, "_utype"):
      v = v._utype(v)
    try:
      t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="ldp-sync-hd-expired", rest_name="ldp-sync-hd-expired", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)
    except (TypeError, ValueError):
      raise ValueError({
          'error-string': """ldp_sync_hd_expired must be of a type compatible with boolean""",
          'defined-type': "boolean",
          'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-sync-hd-expired", rest_name="ldp-sync-hd-expired", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)""",
        })

    self.__ldp_sync_hd_expired = t
    if hasattr(self, '_set'):
      self._set()

  def _unset_ldp_sync_hd_expired(self):
    self.__ldp_sync_hd_expired = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-sync-hd-expired", rest_name="ldp-sync-hd-expired", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)

  ldp_sync_enabled = __builtin__.property(_get_ldp_sync_enabled)
  ldp_sync_hold_down = __builtin__.property(_get_ldp_sync_hold_down)
  ldp_in_sync = __builtin__.property(_get_ldp_in_sync)
  remain_hd_time = __builtin__.property(_get_remain_hd_time)
  ldp_sync_hd_expired = __builtin__.property(_get_ldp_sync_hd_expired)


  _pyangbind_elements = {'ldp_sync_enabled': ldp_sync_enabled, 'ldp_sync_hold_down': ldp_sync_hold_down, 'ldp_in_sync': ldp_in_sync, 'remain_hd_time': remain_hd_time, 'ldp_sync_hd_expired': ldp_sync_hd_expired, }



This class was auto-generated by the PythonClass plugin for PYANG   from YANG module brocade-isis-operational - based on the path /isis-state/interface-detail/isis-intf/ldp-sync-info. Each member element of   the container is represented as a class variable - with a specific   YANG type.    YANG Description: ISIS LDP sync info Getter method for ldp_sync_enabled, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_enabled (isis-status)      YANG Description: If LDP sync enabled Setter method for ldp_sync_enabled, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_enabled (isis-status)     If this variable is read-only (config: false) in the     source YANG file, then _set_ldp_sync_enabled is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_ldp_sync_enabled() directly.      YANG Description: If LDP sync enabled ldp_sync_enabled must be of a type compatible with isis-status YANGDynClass(base=RestrictedClassType(base_type=unicode,                                     restriction_type="dict_key",                                     restriction_arg={u'is-enabled': {'value': 1}, u'is-disabled': {'value': 0}},), is_leaf=True, yang_name="ldp-sync-enabled", rest_name="ldp-sync-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='isis-status', is_config=False) Getter method for ldp_sync_hold_down, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hold_down (uint16)      YANG Description: LDP sync Hold down time Setter method for ldp_sync_hold_down, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hold_down (uint16)     If this variable is read-only (config: false) in the     source YANG file, then _set_ldp_sync_hold_down is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_ldp_sync_hold_down() directly.      YANG Description: LDP sync Hold down time ldp_sync_hold_down must be of a type compatible with uint16 YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="ldp-sync-hold-down", rest_name="ldp-sync-hold-down", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint16', is_config=False) Getter method for ldp_in_sync, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_in_sync (boolean)      YANG Description: If LDP is in sync Setter method for ldp_in_sync, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_in_sync (boolean)     If this variable is read-only (config: false) in the     source YANG file, then _set_ldp_in_sync is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_ldp_in_sync() directly.      YANG Description: If LDP is in sync ldp_in_sync must be of a type compatible with boolean YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-in-sync", rest_name="ldp-in-sync", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False) Getter method for remain_hd_time, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/remain_hd_time (uint32)      YANG Description: Remaining hold down time Setter method for remain_hd_time, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/remain_hd_time (uint32)     If this variable is read-only (config: false) in the     source YANG file, then _set_remain_hd_time is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_remain_hd_time() directly.      YANG Description: Remaining hold down time remain_hd_time must be of a type compatible with uint32 YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="remain-hd-time", rest_name="remain-hd-time", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='uint32', is_config=False) Getter method for ldp_sync_hd_expired, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hd_expired (boolean)      YANG Description: If LDP sync is expired Setter method for ldp_sync_hd_expired, mapped from YANG variable /isis_state/interface_detail/isis_intf/ldp_sync_info/ldp_sync_hd_expired (boolean)     If this variable is read-only (config: false) in the     source YANG file, then _set_ldp_sync_hd_expired is considered as a private     method. Backends looking to populate this variable should     do so via calling thisObj._set_ldp_sync_hd_expired() directly.      YANG Description: If LDP sync is expired ldp_sync_hd_expired must be of a type compatible with boolean YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ldp-sync-hd-expired", rest_name="ldp-sync-hd-expired", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:brocade.com:mgmt:brocade-isis-operational', defining_module='brocade-isis-operational', yang_type='boolean', is_config=False)