def get_by_pk(pk): """ Get Vip Request By Pk :param pk: Identifier For Vip Request :return: Dict """ if not is_valid_int_greater_zero_param(pk): raise exceptions.InvalidIdVipRequestException() vip_request = RequisicaoVips.objects.get(id=pk) data = vip_request.variables_to_map() data['id'] = vip_request.id data['validado'] = convert_boolean_to_int(vip_request.validado) data['vip_criado'] = convert_boolean_to_int(vip_request.vip_criado) data['id_ip'] = vip_request.ip_id data['id_ipv6'] = vip_request.ipv6_id data['id_healthcheck_expect'] = vip_request.healthcheck_expect_id data['l7_filter'] = vip_request.l7_filter data['rule_id'] = vip_request.rule_id data['trafficreturn'] = vip_request.trafficreturn.nome_opcao_txt data['dsrl3']=999 try: dsrl3_to_vip_obj = DsrL3_to_Vip.get_by_vip_id(vip_request.id) data['dsrl3'] = dsrl3_to_vip_obj.id_dsrl3 except ObjectDoesNotExist, e: pass
def handle_get(self, request, user, *args, **kwargs): """Trata as requisições de GET para listar uma requisição de VIP. Filtra a requisição de VIP por chave primária. URL: vip/id_vip """ try: if kwargs.get('id_vip') is None: return super(RequisicaoVipsResource, self).handle_get(request, user, *args, **kwargs) if not has_perm(user, AdminPermission.VIPS_REQUEST, AdminPermission.READ_OPERATION): return self.not_authorized() # Valid Ip ID if not is_valid_int_greater_zero_param(kwargs.get('id_vip')): self.log.error( u'The id_vip parameter is not a valid value: %s.', kwargs.get('id_vip')) raise InvalidValueError(None, 'id_vip', kwargs.get('id_vip')) request_vip = RequisicaoVips.get_by_pk(kwargs.get('id_vip')) request_vip_map = request_vip.variables_to_map() """""" vip_port_list, reals_list, reals_priority, reals_weight = request_vip.get_vips_and_reals( request_vip.id) if reals_list: request_vip_map['reals'] = {'real': reals_list} request_vip_map['reals_prioritys'] = { 'reals_priority': reals_priority } request_vip_map['reals_weights'] = { 'reals_weight': reals_weight } request_vip_map['portas_servicos'] = {'porta': vip_port_list} """""" request_vip_map['id'] = request_vip.id request_vip_map['validado'] = convert_boolean_to_int( request_vip.validado) request_vip_map['vip_criado'] = convert_boolean_to_int( request_vip.vip_criado) request_vip_map['id_ip'] = request_vip.ip_id request_vip_map['id_ipv6'] = request_vip.ipv6_id request_vip_map[ 'id_healthcheck_expect'] = request_vip.healthcheck_expect_id request_vip_map['l7_filter'] = request_vip.l7_filter request_vip_map['rule_id'] = request_vip.rule_id return self.response(dumps_networkapi({'vip': request_vip_map})) except InvalidValueError, e: return self.response_error(269, e.param, e.value)
def handle_get(self, request, user, *args, **kwargs): """Trata as requisições de GET para listar uma requisição de VIP. Filtra a requisição de VIP por chave primária. URL: vip/id_vip """ try: if kwargs.get('id_vip') is None: return super(RequisicaoVipsResource, self).handle_get(request, user, *args, **kwargs) if not has_perm(user, AdminPermission.VIPS_REQUEST, AdminPermission.READ_OPERATION): return self.not_authorized() # Valid Ip ID if not is_valid_int_greater_zero_param(kwargs.get('id_vip')): self.log.error( u'The id_vip parameter is not a valid value: %s.', kwargs.get('id_vip')) raise InvalidValueError(None, 'id_vip', kwargs.get('id_vip')) request_vip = RequisicaoVips.get_by_pk(kwargs.get('id_vip')) request_vip_map = request_vip.variables_to_map() """""" vip_port_list, reals_list, reals_priority, reals_weight = request_vip.get_vips_and_reals( request_vip.id) if reals_list: request_vip_map['reals'] = {'real': reals_list} request_vip_map['reals_prioritys'] = { 'reals_priority': reals_priority} request_vip_map['reals_weights'] = { 'reals_weight': reals_weight} request_vip_map['portas_servicos'] = {'porta': vip_port_list} """""" request_vip_map['id'] = request_vip.id request_vip_map['validado'] = convert_boolean_to_int( request_vip.validado) request_vip_map['vip_criado'] = convert_boolean_to_int( request_vip.vip_criado) request_vip_map['id_ip'] = request_vip.ip_id request_vip_map['id_ipv6'] = request_vip.ipv6_id request_vip_map[ 'id_healthcheck_expect'] = request_vip.healthcheck_expect_id request_vip_map['l7_filter'] = request_vip.l7_filter request_vip_map['rule_id'] = request_vip.rule_id return self.response(dumps_networkapi({'vip': request_vip_map})) except InvalidValueError, e: return self.response_error(269, e.param, e.value)
def handle_get(self, request, user, *args, **kwargs): """Handles a GET request to return L7 data URL: vip/l7/<id_vip>/ """ try: if not has_perm(user, AdminPermission.VIPS_REQUEST, AdminPermission.READ_OPERATION): return self.not_authorized() # Valid Ip ID if not is_valid_int_greater_zero_param(kwargs.get('id_vip')): self.log.error( u'The id_vip parameter is not a valid value: %s.', kwargs.get('id_vip')) raise InvalidValueError(None, 'id_vip', kwargs.get('id_vip')) request_vip = RequisicaoVips.get_by_pk(kwargs.get('id_vip')) date = request_vip.applied_l7_datetime if date: date = date.strftime('%d/%m/%Y %H:%M:%S') request_vip_map = dict() request_vip_map['l7_filter'] = request_vip.l7_filter request_vip_map['rule'] = request_vip.rule request_vip_map['filter_applied'] = request_vip.filter_applied request_vip_map['rule_applied'] = request_vip.rule_applied request_vip_map['filter_rollback'] = request_vip.filter_rollback request_vip_map['rule_rollback'] = request_vip.rule_rollback request_vip_map['applied_l7_datetime'] = date request_vip_map['filter_valid'] = convert_boolean_to_int( request_vip.filter_valid) return self.response(dumps_networkapi({'vip': request_vip_map})) except InvalidValueError, e: return self.response_error(269, e.param, e.value)
def handle_get(self, request, user, *args, **kwargs): """Handles a GET request to return L7 data URL: vip/l7/<id_vip>/ """ try: if not has_perm(user, AdminPermission.VIPS_REQUEST, AdminPermission.READ_OPERATION): return self.not_authorized() # Valid Ip ID if not is_valid_int_greater_zero_param(kwargs.get('id_vip')): self.log.error( u'The id_vip parameter is not a valid value: %s.', kwargs.get('id_vip')) raise InvalidValueError(None, 'id_vip', kwargs.get('id_vip')) request_vip = RequisicaoVips.get_by_pk(kwargs.get('id_vip')) date = request_vip.applied_l7_datetime if date: date = date.strftime('%d/%m/%Y %H:%M:%S') request_vip_map = dict() request_vip_map['l7_filter'] = request_vip.l7_filter request_vip_map['rule'] = request_vip.rule request_vip_map['filter_applied'] = request_vip.filter_applied request_vip_map['rule_applied'] = request_vip.rule_applied request_vip_map['filter_rollback'] = request_vip.filter_rollback request_vip_map['rule_rollback'] = request_vip.rule_rollback request_vip_map['applied_l7_datetime'] = date request_vip_map['filter_valid'] = convert_boolean_to_int( request_vip.filter_valid) return self.response(dumps_networkapi({'vip': request_vip_map})) except InvalidValueError, e: return self.response_error(269, e.param, e.value)
def get_by_pk(pk): """ Get Vip Request By Pk :param pk: Identifier For Vip Request :return: Dict """ if not is_valid_int_greater_zero_param(pk): raise exceptions.InvalidIdVipRequestException() vip_request = RequisicaoVips.objects.get(id=pk) data = vip_request.variables_to_map() data['id'] = vip_request.id data['validado'] = convert_boolean_to_int(vip_request.validado) data['vip_criado'] = convert_boolean_to_int(vip_request.vip_criado) data['id_ip'] = vip_request.ip_id data['id_ipv6'] = vip_request.ipv6_id data['id_healthcheck_expect'] = vip_request.healthcheck_expect_id data['l7_filter'] = vip_request.l7_filter data['rule_id'] = vip_request.rule_id pools = [] vip_to_ports_query = VipPortToPool.objects.filter(requisicao_vip=vip_request) for vip_port in vip_to_ports_query: pools_members = [] server_pool = vip_port.server_pool pool_raw = model_to_dict(server_pool) pool_raw["port_vip"] = vip_port.port_vip pool_raw["port_vip_id"] = vip_port.id for pool_member in server_pool.serverpoolmember_set.all(): pools_member_raw = model_to_dict(pool_member) ipv4 = pool_member.ip ipv6 = pool_member.ipv6 ip_equipment_set = ipv4 and ipv4.ipequipamento_set or ipv6 and ipv6.ipv6equipament_set ip_equipment_obj = ip_equipment_set.select_related().uniqueResult() healthcheck_type = pool_member.healthcheck and pool_member.healthcheck.healthcheck_type or '' pools_member_raw['healthcheck'] = {'healthcheck_type': healthcheck_type} pools_member_raw['equipment_name'] = ip_equipment_obj.equipamento.nome ip_formatted = ip_equipment_obj.ip.ip_formated if ipv4: pools_member_raw["ip"] = {'ip_formated': ip_formatted} else: pools_member_raw["ipv6"] = {'ip_formated': ip_formatted} pools_members.append(pools_member_raw) pool_raw['server_pool_members'] = pools_members pools.append(pool_raw) data["pools"] = pools return data
def get_by_pk(pk): """ Get Vip Request By Pk :param pk: Identifier For Vip Request :return: Dict """ if not is_valid_int_greater_zero_param(pk): raise exceptions.InvalidIdVipRequestException() vip_request = RequisicaoVips.objects.get(id=pk) data = vip_request.variables_to_map() data['id'] = vip_request.id data['validado'] = convert_boolean_to_int(vip_request.validado) data['vip_criado'] = convert_boolean_to_int(vip_request.vip_criado) data['id_ip'] = vip_request.ip_id data['id_ipv6'] = vip_request.ipv6_id data['id_healthcheck_expect'] = vip_request.healthcheck_expect_id data['l7_filter'] = vip_request.l7_filter data['rule_id'] = vip_request.rule_id data['trafficreturn'] = vip_request.trafficreturn.nome_opcao_txt data['dsrl3'] = 999 try: dsrl3_to_vip_obj = DsrL3_to_Vip.get_by_vip_id(vip_request.id) data['dsrl3'] = dsrl3_to_vip_obj.id_dsrl3 except ObjectDoesNotExist: pass # data['dsrl3'] = '0' pools = [] vip_to_ports_query = VipPortToPool.objects.filter( requisicao_vip=vip_request) for vip_port in vip_to_ports_query: pools_members = [] server_pool = vip_port.server_pool pool_raw = model_to_dict(server_pool) pool_raw['port_vip'] = vip_port.port_vip pool_raw['port_vip_id'] = vip_port.id for pool_member in server_pool.serverpoolmember_set.all(): pools_member_raw = model_to_dict(pool_member) ipv4 = pool_member.ip ipv6 = pool_member.ipv6 ip_equipment_set = ipv4 and ipv4.ipequipamento_set or ipv6 and ipv6.ipv6equipament_set ip_equipment_obj = ip_equipment_set.select_related( 'ip').uniqueResult() healthcheck_type = pool_member.healthcheck and pool_member.healthcheck.healthcheck_type or '' pools_member_raw['healthcheck'] = { 'healthcheck_type': healthcheck_type} pools_member_raw[ 'equipment_name'] = ip_equipment_obj.equipamento.nome ip_formatted = ip_equipment_obj.ip.ip_formated if ipv4: pools_member_raw['ip'] = {'ip_formated': ip_formatted} else: pools_member_raw['ipv6'] = {'ip_formated': ip_formatted} pools_members.append(pools_member_raw) pool_raw['server_pool_members'] = pools_members pools.append(pool_raw) data['pools'] = pools return data