def post(self):
logging.debug("API CALL: %s POST" % str(self.__class__.__name__))
try:
request_dict = json.loads(request.data).get("port_pair")
name = request_dict["name"]
ingress_port = self.api.compute.find_port_by_name_or_id(request_dict["ingress"])
egress_port = self.api.compute.find_port_by_name_or_id(request_dict["egress"])
port_pair = self.api.compute.create_port_pair(name)
port_pair.ingress = ingress_port
port_pair.egress = egress_port
if "description" in request_dict:
port_pair.description = request_dict["description"]
if "service_function_parameters" in request_dict:
port_pair.service_function_parameters = request_dict["service_function_parameters"]
resp = {
"port_pair": port_pair.create_dict(self.api.compute)
}
return Response(json.dumps(resp), status=201, mimetype='application/json')
except Exception as ex:
logging.exception("Neutron SFC: %s Exception." % str(self.__class__.__name__))
return Response(ex.message, status=500, mimetype='application/json')
评论列表
文章目录