# 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
[docs]class DeployedServiceReplicaDetailInfo(Model):
"""Information about a Service Fabric service replica deployed on a node.
You probably want to use the sub-classes and not this class directly. Known
sub-classes are: DeployedStatefulServiceReplicaDetailInfo,
DeployedStatelessServiceInstanceDetailInfo
All required parameters must be populated in order to send to Azure.
:param service_name: Full hierarchical name of the service in URI format
starting with `fabric:`.
:type service_name: str
:param partition_id: An internal ID used by Service Fabric to uniquely
identify a partition. This is a randomly generated GUID when the service
was created. The partition ID is unique and does not change for the
lifetime of the service. If the same service was deleted and recreated the
IDs of its partitions would be different.
:type partition_id: str
:param current_service_operation: Specifies the current active life-cycle
operation on a stateful service replica or stateless service instance.
Possible values include: 'Unknown', 'None', 'Open', 'ChangeRole', 'Close',
'Abort'
:type current_service_operation: str or
~azure.servicefabric.models.ServiceOperationName
:param current_service_operation_start_time_utc: The start time of the
current service operation in UTC format.
:type current_service_operation_start_time_utc: datetime
:param reported_load: List of load reported by replica.
:type reported_load:
list[~azure.servicefabric.models.LoadMetricReportInfo]
:param service_kind: Required. Constant filled by server.
:type service_kind: str
"""
_validation = {
'service_kind': {'required': True},
}
_attribute_map = {
'service_name': {'key': 'ServiceName', 'type': 'str'},
'partition_id': {'key': 'PartitionId', 'type': 'str'},
'current_service_operation': {'key': 'CurrentServiceOperation', 'type': 'str'},
'current_service_operation_start_time_utc': {'key': 'CurrentServiceOperationStartTimeUtc', 'type': 'iso-8601'},
'reported_load': {'key': 'ReportedLoad', 'type': '[LoadMetricReportInfo]'},
'service_kind': {'key': 'ServiceKind', 'type': 'str'},
}
_subtype_map = {
'service_kind': {'Stateful': 'DeployedStatefulServiceReplicaDetailInfo', 'Stateless': 'DeployedStatelessServiceInstanceDetailInfo'}
}
def __init__(self, *, service_name: str=None, partition_id: str=None, current_service_operation=None, current_service_operation_start_time_utc=None, reported_load=None, **kwargs) -> None:
super(DeployedServiceReplicaDetailInfo, self).__init__(**kwargs)
self.service_name = service_name
self.partition_id = partition_id
self.current_service_operation = current_service_operation
self.current_service_operation_start_time_utc = current_service_operation_start_time_utc
self.reported_load = reported_load
self.service_kind = None