Source code for aliyun.log.machinegroup_response

#!/usr/bin/env python
# encoding: utf-8

# Copyright (C) Alibaba Cloud Computing
# All rights reserved.

__all__ = ['CreateMachineGroupResponse', 'DeleteMachineGroupResponse',
           'GetMachineGroupResponse', 'UpdateMachineGroupResponse',
           'ListMachineGroupResponse', 'ListMachinesResponse',
           'ApplyConfigToMachineGroupResponse', 'RemoveConfigToMachineGroupResponse',
           'GetMachineGroupAppliedConfigResponse', 'GetConfigAppliedMachineGroupsResponse']

from .util import Util
from .logresponse import LogResponse
from .machine_group_detail import MachineGroupDetail
from .machine_group_detail import MachineStatus


[docs]class CreateMachineGroupResponse(LogResponse): """ The response of the create_machine_group API from log. :type header: dict :param header: CreateMachineGroupResponse HTTP response header """ def __init__(self, header, resp=''): LogResponse.__init__(self, header, resp) def log_print(self): print('CreateMachineGroupResponse:') print('headers:', self.get_all_headers())
[docs]class DeleteMachineGroupResponse(LogResponse): """ The response of the delete_machine_group API from log. :type header: dict :param header: DeleteMachineGroupResponse HTTP response header """ def __init__(self, header, resp=''): LogResponse.__init__(self, header, resp) def log_print(self): print('DeleteMachineGroupResponse:') print('headers:', self.get_all_headers())
[docs]class GetMachineGroupResponse(LogResponse): """ The response of the get_machine_group API from log. :type header: dict :param header: GetMachineGroupResponse HTTP response header :type resp: dict :param resp: the HTTP response body """ def __init__(self, resp, header): LogResponse.__init__(self, header, resp) self.machine_group = MachineGroupDetail(None, None, None) self.machine_group.from_json(resp)
[docs] def get_machine_group(self): """ :return: """ return self.machine_group
[docs] def log_print(self): """ :return: """ print('GetMachineGroupResponse:') print('headers:', self.get_all_headers()) print('machine_group', self.machine_group.to_json())
[docs]class UpdateMachineGroupResponse(LogResponse): """ The response of the update_machine_group API from log. :type header: dict :param header: UpdateMachineGroupResponse HTTP response header """ def __init__(self, header, resp=''): LogResponse.__init__(self, header, resp) def log_print(self): print('UpdateMachineGroupResponse:') print('headers:', self.get_all_headers())
[docs]class ListMachineGroupResponse(LogResponse): """ The response of the list_machine_group API from log. :type header: dict :param header: ListMachineGroupResponse HTTP response header :type resp: dict :param resp: the HTTP response body """ def __init__(self, resp, header): LogResponse.__init__(self, header, resp) self.count = int(resp["count"]) self._total = int(resp["total"]) self.machine_groups = Util.convert_unicode_to_str(resp.get("machinegroups", []))
[docs] def get_machine_group(self): """ :return: """ return self.machine_groups
[docs] def get_machine_group_count(self): """ :return: """ return self.count
[docs] def get_machine_group_total(self): """ :return: """ return self._total
def get_count(self): return self.count def get_total(self): return self._total @property def total(self): return self._total
[docs] def log_print(self): """ :return: """ print('ListMachineGroupResponse:') print('headers:', self.get_all_headers()) print('count:', str(self.count)) print('total:', str(self._total)) print('machine_groups:', str(self.machine_groups))
def merge(self, response): if not isinstance(response, ListMachineGroupResponse): raise ValueError("passed response is not a ListMachineGroupResponse: " + str(type(response))) self.count += response.get_count() self._total = response.get_total() # use the latest total count self.machine_groups.extend(response.get_machine_group()) # update body self.body = { 'count': self.count, 'total': self._total, 'machinegroups': self.machine_groups } return self
[docs]class ListMachinesResponse(LogResponse): """ The response of the list_machines API from log. :type header: dict :param header: ListMachinesResponse HTTP response header :type resp: dict :param resp: the HTTP response body """ def __init__(self, resp, header): LogResponse.__init__(self, header, resp) self.count = resp['count'] self.total = resp['total'] self.machines = [] for machine_status in resp['machines']: machine = MachineStatus(machine_status['ip'], machine_status['machine-uniqueid'], machine_status['userdefined-id'], machine_status['lastHeartbeatTime']) self.machines.append(machine)
[docs] def get_machine_count(self): """ :return: """ return self.count
[docs] def get_machine_total(self): """ :return: """ return self.total
[docs] def get_machines(self): """ :return: """ return self.machines
def get_count(self): return self.count def get_total(self): return self.total def log_print(self): print('GetMachineGroupResponse:') print('headers:', self.get_all_headers()) print('machine_count', self.count) print('machine_total', self.total) print('machines:', self.machines) def merge(self, response): if not isinstance(response, ListMachinesResponse): raise ValueError("passed response is not a ListMachineGroupResponse: " + str(type(response))) self.count += response.get_count() self.total = response.get_total() # use the latest total count self.machines.extend(response.get_machines()) # update body self.body['count'] = self.count self.body['total'] = self.total self.body['machines'].extend(response.get_body()['machines']) return self
[docs]class ApplyConfigToMachineGroupResponse(LogResponse): """ The response of the apply_config_to_machine_group API from log. :type header: dict :param header: ApplyConfigToMachineGroupResponse HTTP response header """ def __init__(self, header, resp=''): LogResponse.__init__(self, header, resp) def log_print(self): print('ApplyConfigToMachineGroupResponse:') print('headers:', self.get_all_headers())
[docs]class RemoveConfigToMachineGroupResponse(LogResponse): """ The response of the remove_config_to_machine_group API from log. :type header: dict :param header: RemoveConfigToMachineGroupResponse HTTP response header """ def __init__(self, header, resp=''): LogResponse.__init__(self, header, resp) def log_print(self): print('RemoveConfigToMachineGroupResponse:') print('headers:', self.get_all_headers())
[docs]class GetMachineGroupAppliedConfigResponse(LogResponse): """ The response of the get_machine_group_applied_config API from log. :type header: dict :param header: GetMachineGroupAppliedConfigResponse HTTP response header :type resp: dict :param resp: the HTTP response body """ def __init__(self, resp, header): LogResponse.__init__(self, header, resp) self.count = resp['count'] self.configs = resp['configs']
[docs] def get_config_count(self): """ :return: """ return self.count
[docs] def get_configs(self): """ :return: """ return self.configs
def log_print(self): print('GetMachineGroupAppliedConfigResponse:') print('headers:', self.get_all_headers()) print('count:', self.count) print('configs:', self.configs)
[docs]class GetConfigAppliedMachineGroupsResponse(LogResponse): """ The response of the get_config_applied_machine_group API from log. :type header: dict :param header: GetConfigAppliedMachineGroupsResponse HTTP response header :type resp: dict :param resp: the HTTP response body """ def __init__(self, resp, header): LogResponse.__init__(self, header, resp) self.count = resp['count'] self.machine_groups = resp['machinegroups']
[docs] def get_machine_group_count(self): """ :return: """ return self.count
[docs] def get_machine_groups(self): """ :return: """ return self.machine_groups
[docs] def log_print(self): """ :return: """ print('GetConfigAppliedMachineGroupsResponse:') print('headers:', self.get_all_headers()) print('count:', self.count) print('machine_groups:', self.machine_groups)