# 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 GHGFactorResponse(Model):
    """GHGFactorResponse.

    :param factor_id: The factor identifier
    :type factor_id: int
    :param factor_code: The factor code
    :type factor_code: str
    :param factor_info: The factor info
    :type factor_info: str
    :param factor_description: The factor description
    :type factor_description: str
    :param source_organization: The source organization
    :type source_organization: str
    :param model: The model
    :type model: str
    :param factor_category:
    :type factor_category: ~energycap.sdk.models.GHGFactorCategory
    :param from_unit:
    :type from_unit: ~energycap.sdk.models.UnitChild
    :param factor_region:
    :type factor_region: ~energycap.sdk.models.GHGFactorRegion
    """

    _attribute_map = {
        'factor_id': {'key': 'factorId', 'type': 'int'},
        'factor_code': {'key': 'factorCode', 'type': 'str'},
        'factor_info': {'key': 'factorInfo', 'type': 'str'},
        'factor_description': {'key': 'factorDescription', 'type': 'str'},
        'source_organization': {'key': 'sourceOrganization', 'type': 'str'},
        'model': {'key': 'model', 'type': 'str'},
        'factor_category': {'key': 'factorCategory', 'type': 'GHGFactorCategory'},
        'from_unit': {'key': 'fromUnit', 'type': 'UnitChild'},
        'factor_region': {'key': 'factorRegion', 'type': 'GHGFactorRegion'},
    }

    def __init__(self, *, factor_id: int=None, factor_code: str=None, factor_info: str=None, factor_description: str=None, source_organization: str=None, model: str=None, factor_category=None, from_unit=None, factor_region=None, **kwargs) -> None:
        super(GHGFactorResponse, self).__init__(**kwargs)
        self.factor_id = factor_id
        self.factor_code = factor_code
        self.factor_info = factor_info
        self.factor_description = factor_description
        self.source_organization = source_organization
        self.model = model
        self.factor_category = factor_category
        self.from_unit = from_unit
        self.factor_region = factor_region
