/*- * ============LICENSE_START======================================================= * Copyright (C) 2019 Nordix Foundation. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * SPDX-License-Identifier: Apache-2.0 * ============LICENSE_END========================================================= */ /** * NOTE: This class is auto generated by the swagger code generator program (3.0.8). * https://github.com/swagger-api/swagger-codegen * Do not edit the class manually. */ package org.onap.nearric.simulator.controller; import org.oransc.ric.a1med.api.model.InlineResponse200; import org.oransc.ric.a1med.api.model.PolicyTypeSchema; import io.swagger.annotations.*; import org.springframework.http.ResponseEntity; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestHeader; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestPart; import org.springframework.web.multipart.MultipartFile; import javax.validation.Valid; import javax.validation.constraints.*; import java.util.List; import java.util.Map; @javax.annotation.Generated(value = "io.swagger.codegen.v3.generators.java.SpringCodegen", date = "2019-10-04T13:41:42.802+01:00[Europe/Dublin]") @Api(value = "a1-p", description = "the a1-p API") public interface A1PApi { @ApiOperation(value = "", nickname = "a1ControllerCreateOrReplacePolicyInstance", notes = "Create or replace a policy instance of type policy_type_id. The schema of the PUT body is defined by the create_schema field of the policy type. ", tags={ "A1 Mediator", }) @ApiResponses(value = { @ApiResponse(code = 201, message = "Policy instance created "), @ApiResponse(code = 400, message = "Bad PUT body for this policy instance "), @ApiResponse(code = 404, message = "There is no policy type with this policy_type_id ") }) @RequestMapping(value = "/a1-p/policytypes/{policy_type_id}/policies/{policy_instance_id}", consumes = { "application/json" }, method = RequestMethod.PUT) ResponseEntity a1ControllerCreateOrReplacePolicyInstance(@ApiParam(value = "",required=true) @PathVariable("policy_type_id") Integer policyTypeId,@ApiParam(value = "",required=true) @PathVariable("policy_instance_id") String policyInstanceId,@ApiParam(value = "" ) @Valid @RequestBody Object body); @ApiOperation(value = "", nickname = "a1ControllerCreatePolicyType", notes = "Create a new policy type . Replace is not currently allowed; to replace, for now do a DELETE and then a PUT again. ", tags={ "A1 Mediator", }) @ApiResponses(value = { @ApiResponse(code = 201, message = "policy type successfully created"), @ApiResponse(code = 400, message = "illegal ID, or object already existed") }) @RequestMapping(value = "/a1-p/policytypes/{policy_type_id}", consumes = { "application/json" }, method = RequestMethod.PUT) ResponseEntity a1ControllerCreatePolicyType(@ApiParam(value = "",required=true) @PathVariable("policy_type_id") Integer policyTypeId,@ApiParam(value = "" ) @Valid @RequestBody PolicyTypeSchema body); @ApiOperation(value = "", nickname = "a1ControllerDeletePolicyInstance", notes = "Delete this policy instance ", tags={ "A1 Mediator", }) @ApiResponses(value = { @ApiResponse(code = 204, message = "policy instance successfully deleted "), @ApiResponse(code = 404, message = "there is no policy instance with this policy_instance_id or there is no policy type with this policy_type_id ") }) @RequestMapping(value = "/a1-p/policytypes/{policy_type_id}/policies/{policy_instance_id}", method = RequestMethod.DELETE) ResponseEntity a1ControllerDeletePolicyInstance(@ApiParam(value = "",required=true) @PathVariable("policy_type_id") Integer policyTypeId,@ApiParam(value = "",required=true) @PathVariable("policy_instance_id") String policyInstanceId); @ApiOperation(value = "", nickname = "a1ControllerDeletePolicyType", notes = "Delete this policy type. Can only be performed if there are no instances of this type ", tags={ "A1 Mediator", }) @ApiResponses(value = { @ApiResponse(code = 204, message = "policy type successfully deleted "), @ApiResponse(code = 400, message = "Policy type cannot be deleted because there are instances All instances must be removed before a policy type can be deleted "), @ApiResponse(code = 404, message = "policy type not found ") }) @RequestMapping(value = "/a1-p/policytypes/{policy_type_id}", method = RequestMethod.DELETE) ResponseEntity a1ControllerDeletePolicyType(@ApiParam(value = "",required=true) @PathVariable("policy_type_id") Integer policyTypeId); @ApiOperation(value = "", nickname = "a1ControllerGetAllInstancesForType", notes = "get a list of all policy instance ids for this policy type id", response = String.class, responseContainer = "List", tags={ "A1 Mediator", }) @ApiResponses(value = { @ApiResponse(code = 200, message = "list of all policy instance ids for this policy type id", response = String.class, responseContainer = "List") }) @RequestMapping(value = "/a1-p/policytypes/{policy_type_id}/policies", produces = { "application/json" }, method = RequestMethod.GET) ResponseEntity> a1ControllerGetAllInstancesForType(@ApiParam(value = "",required=true) @PathVariable("policy_type_id") Integer policyTypeId); @ApiOperation(value = "", nickname = "a1ControllerGetAllPolicyTypes", notes = "Get a list of all registered policy type ids", response = Integer.class, responseContainer = "List", tags={ "A1 Mediator", }) @ApiResponses(value = { @ApiResponse(code = 200, message = "list of all registered policy type ids", response = Integer.class, responseContainer = "List") }) @RequestMapping(value = "/a1-p/policytypes/", produces = { "application/json" }, method = RequestMethod.GET) ResponseEntity> a1ControllerGetAllPolicyTypes(); @ApiOperation(value = "", nickname = "a1ControllerGetHealthcheck", notes = "Perform a healthcheck on a1 ", tags={ "A1 Mediator", }) @ApiResponses(value = { @ApiResponse(code = 200, message = "A1 is healthy. Anything other than a 200 should be considered a1 as failing ") }) @RequestMapping(value = "/a1-p/healthcheck", method = RequestMethod.GET) ResponseEntity a1ControllerGetHealthcheck(); @ApiOperation(value = "", nickname = "a1ControllerGetPolicyInstance", notes = "Retrieve the policy instance ", response = Object.class, tags={ "A1 Mediator", }) @ApiResponses(value = { @ApiResponse(code = 200, message = "The policy instance. the schema of this object is defined by the create_schema field of the policy type ", response = Object.class), @ApiResponse(code = 404, message = "there is no policy instance with this policy_instance_id or there is no policy type with this policy_type_id ") }) @RequestMapping(value = "/a1-p/policytypes/{policy_type_id}/policies/{policy_instance_id}", produces = { "application/json" }, method = RequestMethod.GET) ResponseEntity a1ControllerGetPolicyInstance(@ApiParam(value = "",required=true) @PathVariable("policy_type_id") Integer policyTypeId,@ApiParam(value = "",required=true) @PathVariable("policy_instance_id") String policyInstanceId); @ApiOperation(value = "", nickname = "a1ControllerGetPolicyInstanceStatus", notes = "Retrieve the policy instance status across all handlers of the policy ", response = InlineResponse200.class, responseContainer = "List", tags={ "A1 Mediator", }) @ApiResponses(value = { @ApiResponse(code = 200, message = "The policy instance status. Returns a vector of statuses, where each contains a handler_id (opaque id of a RIC component that implements this policy) and the policy status as returned by that handler ", response = InlineResponse200.class, responseContainer = "List"), @ApiResponse(code = 404, message = "there is no policy instance with this policy_instance_id or there is no policy type with this policy_type_id ") }) @RequestMapping(value = "/a1-p/policytypes/{policy_type_id}/policies/{policy_instance_id}/status", produces = { "application/json" }, method = RequestMethod.GET) ResponseEntity> a1ControllerGetPolicyInstanceStatus(@ApiParam(value = "",required=true) @PathVariable("policy_type_id") Integer policyTypeId,@ApiParam(value = "",required=true) @PathVariable("policy_instance_id") String policyInstanceId); @ApiOperation(value = "", nickname = "a1ControllerGetPolicyType", notes = "Get this policy type ", response = PolicyTypeSchema.class, tags={ "A1 Mediator", }) @ApiResponses(value = { @ApiResponse(code = 200, message = "policy type successfully found", response = PolicyTypeSchema.class), @ApiResponse(code = 404, message = "policy type not found ") }) @RequestMapping(value = "/a1-p/policytypes/{policy_type_id}", produces = { "application/json" }, method = RequestMethod.GET) ResponseEntity a1ControllerGetPolicyType(@ApiParam(value = "",required=true) @PathVariable("policy_type_id") Integer policyTypeId); }