# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class SearchEmissionSourceChildSearchEmissionSource(Model):
    """SearchEmissionSourceChildSearchEmissionSource.

    :param emission_source_id: The emissions source identifier
    :type emission_source_id: int
    :param emission_source_code: The emissions source code
    :type emission_source_code: str
    :param emission_source_info: The emissions source info
    :type emission_source_info: str
    :param commodity:
    :type commodity: ~energycap.sdk.models.CommodityChild
    :param parent_path: The collection of CarbonHub collections representing
     the path to its parent
    :type parent_path: list[~energycap.sdk.models.CollectionChild]
    :param active: Indicates whether or not the emissions source is active
    :type active: bool
    :param postal_code: The address postal code
    :type postal_code: str
    :param city: The address city
    :type city: str
    :param state: The address state
    :type state: str
    :param country: The address country
    :type country: str
    :param line1: The address first line
    :type line1: str
    :param line2: The address second line
    :type line2: str
    :param line3: The address third line
    :type line3: str
    """

    _attribute_map = {
        'emission_source_id': {'key': 'emissionSourceId', 'type': 'int'},
        'emission_source_code': {'key': 'emissionSourceCode', 'type': 'str'},
        'emission_source_info': {'key': 'emissionSourceInfo', 'type': 'str'},
        'commodity': {'key': 'commodity', 'type': 'CommodityChild'},
        'parent_path': {'key': 'parentPath', 'type': '[CollectionChild]'},
        'active': {'key': 'active', 'type': 'bool'},
        'postal_code': {'key': 'postalCode', 'type': 'str'},
        'city': {'key': 'city', 'type': 'str'},
        'state': {'key': 'state', 'type': 'str'},
        'country': {'key': 'country', 'type': 'str'},
        'line1': {'key': 'line1', 'type': 'str'},
        'line2': {'key': 'line2', 'type': 'str'},
        'line3': {'key': 'line3', 'type': 'str'},
    }

    def __init__(self, **kwargs):
        super(SearchEmissionSourceChildSearchEmissionSource, self).__init__(**kwargs)
        self.emission_source_id = kwargs.get('emission_source_id', None)
        self.emission_source_code = kwargs.get('emission_source_code', None)
        self.emission_source_info = kwargs.get('emission_source_info', None)
        self.commodity = kwargs.get('commodity', None)
        self.parent_path = kwargs.get('parent_path', None)
        self.active = kwargs.get('active', None)
        self.postal_code = kwargs.get('postal_code', None)
        self.city = kwargs.get('city', None)
        self.state = kwargs.get('state', None)
        self.country = kwargs.get('country', None)
        self.line1 = kwargs.get('line1', None)
        self.line2 = kwargs.get('line2', None)
        self.line3 = kwargs.get('line3', None)
