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

    :param dashboard_id: The dashboard identifier
    :type dashboard_id: int
    :param dashboard_info: The dashboard info
    :type dashboard_info: str
    :param description: The dashboard description
    :type description: str
    :param type: The dashboard type
    :type type: str
    :param created_by: The user who created the dashboard
    :type created_by: ~energycap.sdk.models.UserChild
    :param created_date: The date and time the dashboard was created
    :type created_date: datetime
    :param modified_date: The date and time of the most recent modification
    :type modified_date: datetime
    :param shared: Flag to indicate if the dashboard is shared
    :type shared: bool
    :param visible: Flag to indicate if the dashboard is visible
    :type visible: bool
    :param last_viewed: The date and time of the last time this dashboard was
     viewed
    :type last_viewed: datetime
    :param key: If the dashboard is public, this value holds the public key
     that allows the dashboard to be embedded
    :type key: str
    :param public: Flag to indicate if the dashboard is public
    :type public: bool
    """

    _attribute_map = {
        'dashboard_id': {'key': 'dashboardId', 'type': 'int'},
        'dashboard_info': {'key': 'dashboardInfo', 'type': 'str'},
        'description': {'key': 'description', 'type': 'str'},
        'type': {'key': 'type', 'type': 'str'},
        'created_by': {'key': 'createdBy', 'type': 'UserChild'},
        'created_date': {'key': 'createdDate', 'type': 'iso-8601'},
        'modified_date': {'key': 'modifiedDate', 'type': 'iso-8601'},
        'shared': {'key': 'shared', 'type': 'bool'},
        'visible': {'key': 'visible', 'type': 'bool'},
        'last_viewed': {'key': 'lastViewed', 'type': 'iso-8601'},
        'key': {'key': 'key', 'type': 'str'},
        'public': {'key': 'public', 'type': 'bool'},
    }

    def __init__(self, dashboard_id=None, dashboard_info=None, description=None, type=None, created_by=None, created_date=None, modified_date=None, shared=None, visible=None, last_viewed=None, key=None, public=None):
        super(DashboardResponse, self).__init__()
        self.dashboard_id = dashboard_id
        self.dashboard_info = dashboard_info
        self.description = description
        self.type = type
        self.created_by = created_by
        self.created_date = created_date
        self.modified_date = modified_date
        self.shared = shared
        self.visible = visible
        self.last_viewed = last_viewed
        self.key = key
        self.public = public
