def post(self, request, vimid, tenantid): logger.info("Enter %s, method is %s, vim_id is %s", syscomm.fun_name(), request.method, vimid) port = OperatePort.OperatePort() try: body = json.loads(request.body) except Exception as e: return Response(data={'error': 'Fail to decode request body.'}, status=status.HTTP_500_INTERNAL_SERVER_ERROR) try: req_paras = ["subnetId", "networkId", "name"] for para in req_paras: if para not in body: raise Exception('Required parameter %s is ' 'missing in port creation.' % para) port_name = body.get('name') port_id = body.get('id', None) target = port_id or port_name resp = port.list_port(vimid, tenantid, target, ignore_missing=True) if resp: resp['returnCode'] = 0 return Response(data=resp, status=status.HTTP_200_OK) else: resp = port.create_port(vimid, tenantid, body) resp['returnCode'] = 1 return Response(data=resp, status=status.HTTP_201_CREATED) return Response(data=resp, status=status.HTTP_200_OK) except Exception as e: if hasattr(e, "http_status"): return Response(data={'error': str(e)}, status=e.http_status) else: return Response(data={'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def post(self, request, vimid, tenantid): logger.info("Enter %s, method is %s, vim_id is %s", syscomm.fun_name(), request.method, vimid) subnet = OperateSubnet.OperateSubnet() try: body = json.loads(request.body) except Exception as e: return Response(data={'error': 'Fail to decode request body.'}, status=status.HTTP_500_INTERNAL_SERVER_ERROR) try: subnet_name = body.get('name') subnet_id = body.get('id', None) target = subnet_id or subnet_name resp = subnet.list_subnet(vimid, tenantid, target, ignore_missing=True) if resp: resp['returnCode'] = 0 else: resp = subnet.create_subnet(vimid, tenantid, body) resp['returnCode'] = 1 return Response(data=resp, status=status.HTTP_200_OK) except Exception as e: if e.http_status: return Response(data={'error': str(e)}, status=e.http_status) else: return Response(data={'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def delete(self, request, vimid, tenantid, subnetid): logger.info("Enter %s, method is %s, vim_id is %s", syscomm.fun_name(), request.method, vimid) subnet = OperateSubnet.OperateSubnet() try: resp = subnet.delete_subnet(vimid, tenantid, subnetid) return Response(data=resp, status=status.HTTP_202_ACCEPTED) except Exception as e: return Response(data={'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def get(self, request, vimid, tenantid, networkid): logger.info("Enter %s, method is %s, vim_id is %s", syscomm.fun_name(), request.method, vimid) net = OperateNetwork.OperateNetwork() try: resp = net.list_network(vimid, tenantid, networkid) return Response(data=resp, status=status.HTTP_202_ACCEPTED) except Exception as e: return Response(data={'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def get(self, request, vimid, tenantid): logger.info("Enter %s, method is %s, vim_id is %s", syscomm.fun_name(), request.method, vimid) query = dict(request.query_params) subnet = OperateSubnet.OperateSubnet() try: resp = subnet.list_subnets(vimid, tenantid, **query) return Response(data=resp, status=status.HTTP_202_ACCEPTED) except Exception as e: return Response(data={'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def delete(self, request, vimid, tenantid, portid): logger.info("Enter %s, method is %s, vim_id is %s", syscomm.fun_name(), request.method, vimid) port = OperatePort.OperatePort() try: resp = port.delete_port(vimid, tenantid, portid) return Response(data=resp, status=status.HTTP_204_NO_CONTENT) except Exception as e: if hasattr(e, "http_status"): return Response(data={'error': str(e)}, status=e.http_status) else: return Response(data={'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def get(self, request, vimid, tenantid, subnetid): logger.info("Enter %s, method is %s, vim_id is %s", syscomm.fun_name(), request.method, vimid) subnet = OperateSubnet.OperateSubnet() try: resp = subnet.list_subnet(vimid, tenantid, subnetid) return Response(data=resp, status=status.HTTP_200_OK) except Exception as e: if hasattr(e, "http_status"): return Response(data={'error': str(e)}, status=e.http_status) else: return Response(data={'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def delete(self, request, vimid, tenantid, networkid): logger.info("Enter %s, method is %s, vim_id is %s", syscomm.fun_name(), request.method, vimid) net = OperateNetwork.OperateNetwork() try: resp = net.delete_network(vimid, tenantid, networkid) return Response(data=resp, status=status.HTTP_204_NO_CONTENT) except Exception as e: if e.http_status: return Response(data={'error': str(e)}, status=e.http_status) else: return Response(data={'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def get(self, request, vimid, tenantid): logger.info("Enter %s, method is %s, vim_id is %s", syscomm.fun_name(), request.method, vimid) query = dict(request.query_params) port = OperatePort.OperatePort() try: resp = port.list_ports(vimid, tenantid, **query) return Response(data=resp, status=status.HTTP_200_OK) except Exception as e: if hasattr(e, "http_status"): return Response(data={'error': str(e)}, status=e.http_status) else: return Response(data={'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
def post(self, request, vimid, tenantid): logger.info("Enter %s, method is %s, vim_id is %s", syscomm.fun_name(), request.method, vimid) net = OperateNetwork.OperateNetwork() body = json.loads(request.body) try: network_name = body.get('name') network_id = body.get('id', None) target = network_id or network_name resp = net.list_network(vimid, tenantid, target) if resp: resp['returnCode'] = 0 else: resp = net.create_network(vimid, tenantid, body) resp['returnCode'] = 1 return Response(data=resp, status=status.HTTP_202_ACCEPTED) except Exception as e: return Response(data={'error': str(e)}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)