# pylint: disable=line-too-long
# # coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# 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 Update(Model):
    """Maintenance update on a resource.

    :param maintenance_scope: The impact area. Possible values include: 'All',
     'Host', 'Resource', 'InResource'
    :type maintenance_scope: str or
     ~azure.mgmt.maintenance.models.MaintenanceScope
    :param impact_type: The impact type. Possible values include: 'None',
     'Freeze', 'Restart', 'Redeploy'
    :type impact_type: str or ~azure.mgmt.maintenance.models.ImpactType
    :param status: The status. Possible values include: 'Pending',
     'InProgress', 'Completed', 'RetryNow', 'RetryLater'
    :type status: str or ~azure.mgmt.maintenance.models.UpdateStatus
    :param impact_duration_in_sec: Duration of impact in seconds
    :type impact_duration_in_sec: int
    :param not_before: Time when Azure will start force updates if not
     self-updated by customer before this time
    :type not_before: datetime
    :param resource_id: The resourceId
    :type resource_id: str
    """

    _attribute_map = {
        'maintenance_scope': {'key': 'maintenanceScope', 'type': 'str'},
        'impact_type': {'key': 'impactType', 'type': 'str'},
        'status': {'key': 'status', 'type': 'str'},
        'impact_duration_in_sec': {'key': 'impactDurationInSec', 'type': 'int'},
        'not_before': {'key': 'notBefore', 'type': 'iso-8601'},
        'resource_id': {'key': 'properties.resourceId', 'type': 'str'},
    }

    def __init__(self, *, maintenance_scope=None, impact_type=None, status=None, impact_duration_in_sec: int = None, not_before=None, resource_id: str = None, **kwargs) -> None:
        super(Update, self).__init__(**kwargs)
        self.maintenance_scope = maintenance_scope
        self.impact_type = impact_type
        self.status = status
        self.impact_duration_in_sec = impact_duration_in_sec
        self.not_before = not_before
        self.resource_id = resource_id

# pylint: disable=line-too-long
# # coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# 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 Update(Model):
    """Maintenance update on a resource.

    :param maintenance_scope: The impact area. Possible values include: 'All',
     'Host', 'Resource', 'InResource'
    :type maintenance_scope: str or
     ~azure.mgmt.maintenance.models.MaintenanceScope
    :param impact_type: The impact type. Possible values include: 'None',
     'Freeze', 'Restart', 'Redeploy'
    :type impact_type: str or ~azure.mgmt.maintenance.models.ImpactType
    :param status: The status. Possible values include: 'Pending',
     'InProgress', 'Completed', 'RetryNow', 'RetryLater'
    :type status: str or ~azure.mgmt.maintenance.models.UpdateStatus
    :param impact_duration_in_sec: Duration of impact in seconds
    :type impact_duration_in_sec: int
    :param not_before: Time when Azure will start force updates if not
     self-updated by customer before this time
    :type not_before: datetime
    :param resource_id: The resourceId
    :type resource_id: str
    """

    _attribute_map = {
        'maintenance_scope': {'key': 'maintenanceScope', 'type': 'str'},
        'impact_type': {'key': 'impactType', 'type': 'str'},
        'status': {'key': 'status', 'type': 'str'},
        'impact_duration_in_sec': {'key': 'impactDurationInSec', 'type': 'int'},
        'not_before': {'key': 'notBefore', 'type': 'iso-8601'},
        'resource_id': {'key': 'properties.resourceId', 'type': 'str'},
    }

    def __init__(self, *, maintenance_scope=None, impact_type=None, status=None, impact_duration_in_sec: int = None, not_before=None, resource_id: str = None, **kwargs) -> None:
        super(Update, self).__init__(**kwargs)
        self.maintenance_scope = maintenance_scope
        self.impact_type = impact_type
        self.status = status
        self.impact_duration_in_sec = impact_duration_in_sec
        self.not_before = not_before
        self.resource_id = resource_id

# pylint: disable=line-too-long # # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for # license information. # # Code generated by Microsoft (R) AutoRest Code Generator. # Changes may cause incorrect behavior and will be lost if the code is # regenerated. # -------------------------------------------------------------------------- Maintenance update on a resource.      :param maintenance_scope: The impact area. Possible values include: 'All',      'Host', 'Resource', 'InResource'     :type maintenance_scope: str or      ~azure.mgmt.maintenance.models.MaintenanceScope     :param impact_type: The impact type. Possible values include: 'None',      'Freeze', 'Restart', 'Redeploy'     :type impact_type: str or ~azure.mgmt.maintenance.models.ImpactType     :param status: The status. Possible values include: 'Pending',      'InProgress', 'Completed', 'RetryNow', 'RetryLater'     :type status: str or ~azure.mgmt.maintenance.models.UpdateStatus     :param impact_duration_in_sec: Duration of impact in seconds     :type impact_duration_in_sec: int     :param not_before: Time when Azure will start force updates if not      self-updated by customer before this time     :type not_before: datetime     :param resource_id: The resourceId     :type resource_id: str