# 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 DataRefreshSchedule(Model):
    """Represents a refresh schedule for the state machine.

    Variables are only populated by the server, and will be ignored when
    sending a request.

    :ivar is_active: Gets a value indicating whether the schedule is active.
    :vartype is_active: bool
    :ivar timezone_id: Gets the ID of the timezone
    :vartype timezone_id: str
    :ivar cron_schedules: Gets the schedule in CRON format
    :vartype cron_schedules: list[str]
    :ivar schedule_id: Gets the ID of the schedule
    :vartype schedule_id: str
    :ivar instance_id: Gets the Customer Insights instance id associated with
     this object.
    :vartype instance_id: str
    """

    _validation = {
        'is_active': {'readonly': True},
        'timezone_id': {'readonly': True},
        'cron_schedules': {'readonly': True},
        'schedule_id': {'readonly': True},
        'instance_id': {'readonly': True},
    }

    _attribute_map = {
        'is_active': {'key': 'isActive', 'type': 'bool'},
        'timezone_id': {'key': 'timezoneId', 'type': 'str'},
        'cron_schedules': {'key': 'cronSchedules', 'type': '[str]'},
        'schedule_id': {'key': 'scheduleId', 'type': 'str'},
        'instance_id': {'key': 'instanceId', 'type': 'str'},
    }

    def __init__(self, **kwargs) -> None:
        super(DataRefreshSchedule, self).__init__(**kwargs)
        self.is_active = None
        self.timezone_id = None
        self.cron_schedules = None
        self.schedule_id = None
        self.instance_id = None
