1from __future__ import absolute_import 2 3# enum in stdlib as of py3.4 4try: 5 from enum import IntEnum # pylint: disable=import-error 6except ImportError: 7 # vendored backport module 8 from kafka.vendor.enum34 import IntEnum 9 10 11class ConfigResourceType(IntEnum): 12 """An enumerated type of config resources""" 13 14 BROKER = 4, 15 TOPIC = 2 16 17 18class ConfigResource(object): 19 """A class for specifying config resources. 20 Arguments: 21 resource_type (ConfigResourceType): the type of kafka resource 22 name (string): The name of the kafka resource 23 configs ({key : value}): A maps of config keys to values. 24 """ 25 26 def __init__( 27 self, 28 resource_type, 29 name, 30 configs=None 31 ): 32 if not isinstance(resource_type, (ConfigResourceType)): 33 resource_type = ConfigResourceType[str(resource_type).upper()] # pylint: disable-msg=unsubscriptable-object 34 self.resource_type = resource_type 35 self.name = name 36 self.configs = configs 37