summaryrefslogtreecommitdiffstats
path: root/vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/resource/PackageResource.java
diff options
context:
space:
mode:
Diffstat (limited to 'vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/resource/PackageResource.java')
-rw-r--r--vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/resource/PackageResource.java164
1 files changed, 79 insertions, 85 deletions
diff --git a/vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/resource/PackageResource.java b/vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/resource/PackageResource.java
index 7e50eab8..f8f4f543 100644
--- a/vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/resource/PackageResource.java
+++ b/vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/resource/PackageResource.java
@@ -13,6 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
package org.onap.vnfsdk.marketplace.resource;
import java.io.IOException;
@@ -35,11 +36,16 @@ import javax.ws.rs.core.Response;
import org.eclipse.jetty.http.HttpStatus;
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
import org.glassfish.jersey.media.multipart.FormDataParam;
+import org.onap.vnfsdk.marketplace.common.CommonConstant;
import org.onap.vnfsdk.marketplace.db.exception.MarketplaceResourceException;
+import org.onap.vnfsdk.marketplace.db.resource.PackageManager;
import org.onap.vnfsdk.marketplace.entity.response.CsarFileUriResponse;
import org.onap.vnfsdk.marketplace.entity.response.PackageMeta;
import org.onap.vnfsdk.marketplace.entity.response.UploadPackageResponse;
import org.onap.vnfsdk.marketplace.onboarding.entity.OnBoardingResult;
+import org.onap.vnfsdk.marketplace.rest.RestConstant;
+import org.onap.vnfsdk.marketplace.rest.RestResponse;
+import org.onap.vnfsdk.marketplace.rest.RestfulClient;
import org.onap.vnfsdk.marketplace.wrapper.PackageWrapper;
import io.swagger.annotations.Api;
@@ -52,7 +58,6 @@ import io.swagger.annotations.ApiResponses;
* csar package service.
*
* @author 10189609
- *
*/
@Path("/PackageResource")
@Api(tags = {"Package Resource"})
@@ -64,78 +69,59 @@ public class PackageResource {
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
@ApiResponses(value = {
- @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found",
- response = String.class),
- @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415,
- message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
- @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "update error",
- response = String.class)})
- public Response updateValidateStatus(
- @ApiParam(value = "http request body") @Context HttpServletRequest request,
- @ApiParam(value = "http header") @Context HttpHeaders head
- ) throws IOException {
+ @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found", response = String.class),
+ @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415, message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
+ @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "update error", response = String.class)})
+ public Response updateValidateStatus(@ApiParam(value = "http request body") @Context HttpServletRequest request,
+ @ApiParam(value = "http header") @Context HttpHeaders head) throws IOException {
InputStream input = request.getInputStream();
return PackageWrapper.getInstance().updateValidateStatus(input);
}
-
@Path("/csars")
@GET
- @ApiOperation(value = "get csar package list by condition", response = PackageMeta.class,
- responseContainer = "List")
+ @ApiOperation(value = "get csar package list by condition", response = PackageMeta.class, responseContainer = "List")
@Produces(MediaType.APPLICATION_JSON)
@ApiResponses(value = {
- @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found",
- response = String.class),
- @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415,
- message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
- @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error",
- response = String.class)})
- public Response queryPackageListByCond(
- @ApiParam(value = "csar name") @QueryParam("name") String name, @ApiParam(
- value = "csar provider") @QueryParam("provider") String provider, @ApiParam(
- value = "csar version") @QueryParam("version") String version, @ApiParam(
- value = "delay to delete") @QueryParam("deletionPending") String deletionPending,
+ @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found", response = String.class),
+ @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415, message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
+ @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error", response = String.class)})
+ public Response queryPackageListByCond(@ApiParam(value = "csar name") @QueryParam("name") String name,
+ @ApiParam(value = "csar provider") @QueryParam("provider") String provider,
+ @ApiParam(value = "csar version") @QueryParam("version") String version,
+ @ApiParam(value = "delay to delete") @QueryParam("deletionPending") String deletionPending,
@ApiParam(value = "csar type") @QueryParam("type") String type) {
- return PackageWrapper.getInstance().queryPackageListByCond(name, provider, version,
- deletionPending, type);
+ return PackageWrapper.getInstance().queryPackageListByCond(name, provider, version, deletionPending, type);
}
@Path("/csars/{csarId}")
@GET
- @ApiOperation(value = "get csar package list", response = PackageMeta.class,
- responseContainer = "List")
+ @ApiOperation(value = "get csar package list", response = PackageMeta.class, responseContainer = "List")
@Produces(MediaType.APPLICATION_JSON)
@ApiResponses(value = {
- @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found",
- response = String.class),
- @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415,
- message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
- @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error",
- response = String.class)})
- public Response queryPackageById(
- @ApiParam(value = "csar id") @PathParam("csarId") String csarId) {
+ @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found", response = String.class),
+ @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415, message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
+ @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error", response = String.class)})
+ public Response queryPackageById(@ApiParam(value = "csar id") @PathParam("csarId") String csarId) {
return PackageWrapper.getInstance().queryPackageById(csarId);
}
+
@Path("/csars")
@POST
@ApiOperation(value = "upload csar package", response = UploadPackageResponse.class)
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces(MediaType.APPLICATION_JSON)
@ApiResponses(value = {
- @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found",
- response = String.class),
- @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415,
- message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
- @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error",
- response = String.class)})
+ @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found", response = String.class),
+ @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415, message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
+ @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error", response = String.class)})
public Response uploadPackage(
- @ApiParam(value = "file inputstream",
- required = true) @FormDataParam("file") InputStream uploadedInputStream,@FormDataParam("params") String details,
- @ApiParam(value = "file detail",
- required = false) @FormDataParam("file") FormDataContentDisposition fileDetail,
- @ApiParam(value = "http header") @Context HttpHeaders head) throws IOException, MarketplaceResourceException {
+ @ApiParam(value = "file inputstream", required = true) @FormDataParam("file") InputStream uploadedInputStream,
+ @FormDataParam("params") String details,
+ @ApiParam(value = "file detail", required = false) @FormDataParam("file") FormDataContentDisposition fileDetail,
+ @ApiParam(value = "http header") @Context HttpHeaders head)
+ throws IOException, MarketplaceResourceException {
return PackageWrapper.getInstance().uploadPackage(uploadedInputStream, fileDetail, details, head);
}
@@ -143,12 +129,9 @@ public class PackageResource {
@DELETE
@ApiOperation(value = "delete a package")
@ApiResponses(value = {
- @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found",
- response = String.class),
- @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415,
- message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
- @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error",
- response = String.class)})
+ @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found", response = String.class),
+ @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415, message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
+ @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error", response = String.class)})
public Response delPackage(@ApiParam(value = "csar Id") @PathParam("csarId") String csarId) {
return PackageWrapper.getInstance().delPackage(csarId);
}
@@ -158,20 +141,16 @@ public class PackageResource {
@ApiOperation(value = "get csar file uri by csarId", response = CsarFileUriResponse.class)
@Produces(MediaType.APPLICATION_JSON)
@ApiResponses(value = {
- @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found",
- response = String.class),
- @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415,
- message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
- @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error",
- response = String.class)})
- public Response getCsarFileUri(
- @ApiParam(value = "csar Id", required = true) @PathParam("csarId") String csarId) {
+ @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found", response = String.class),
+ @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415, message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
+ @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error", response = String.class)})
+ public Response getCsarFileUri(@ApiParam(value = "csar Id", required = true) @PathParam("csarId") String csarId) {
return PackageWrapper.getInstance().getCsarFileUri(csarId);
}
@Path("/csars/{csarId}/downloaded")
@GET
- @ApiOperation(value = "update download count for a package",response = Response.class)
+ @ApiOperation(value = "update download count for a package", response = Response.class)
public Response updateDwonloadCount(@ApiParam(value = "csar Id") @PathParam("csarId") String csarId) {
return PackageWrapper.getInstance().updateDwonloadCount(csarId);
}
@@ -182,30 +161,25 @@ public class PackageResource {
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces(MediaType.APPLICATION_JSON)
@ApiResponses(value = {
- @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found",
- response = String.class),
- @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415,
- message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
- @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error",
- response = String.class)})
- public Response reUploadPackage(
- @ApiParam(value = "csar Id") @PathParam("csarId") String csarId,
- @ApiParam(value = "file inputstream",
- required = true) @FormDataParam("file") InputStream uploadedInputStream,@FormDataParam("params") String details,
- @ApiParam(value = "file detail",
- required = false) @FormDataParam("file") FormDataContentDisposition fileDetail,
- @ApiParam(value = "http header") @Context HttpHeaders head) throws IOException, MarketplaceResourceException {
- return PackageWrapper.getInstance().reUploadPackage(csarId,uploadedInputStream, fileDetail, details, head);
+ @ApiResponse(code = HttpStatus.NOT_FOUND_404, message = "microservice not found", response = String.class),
+ @ApiResponse(code = HttpStatus.UNSUPPORTED_MEDIA_TYPE_415, message = "Unprocessable MicroServiceInfo Entity ", response = String.class),
+ @ApiResponse(code = HttpStatus.INTERNAL_SERVER_ERROR_500, message = "resource grant error", response = String.class)})
+ public Response reUploadPackage(@ApiParam(value = "csar Id") @PathParam("csarId") String csarId,
+ @ApiParam(value = "file inputstream", required = true) @FormDataParam("file") InputStream uploadedInputStream,
+ @FormDataParam("params") String details,
+ @ApiParam(value = "file detail", required = false) @FormDataParam("file") FormDataContentDisposition fileDetail,
+ @ApiParam(value = "http header") @Context HttpHeaders head)
+ throws IOException, MarketplaceResourceException {
+ return PackageWrapper.getInstance().reUploadPackage(csarId, uploadedInputStream, fileDetail, details, head);
}
@Path("/csars/{csarId}/onboardstatus")
@GET
- @ApiOperation(value="Get VNF OnBoarding Result", response=OnBoardingResult.class)
+ @ApiOperation(value = "Get VNF OnBoarding Result", response = OnBoardingResult.class)
@Produces(MediaType.APPLICATION_JSON)
public Response getOnBoardingResult(@ApiParam("csar Id") @PathParam("csarId") String csarId,
@ApiParam("operation type") @QueryParam("operTypeId") String operTypeId,
- @ApiParam("operation id") @QueryParam("operId") String operId)
- {
+ @ApiParam("operation id") @QueryParam("operId") String operId) {
return PackageWrapper.getInstance().getOnBoardingResult(csarId, operTypeId, operId);
}
@@ -215,16 +189,36 @@ public class PackageResource {
@Produces(MediaType.APPLICATION_JSON)
public Response getOperStatus(@ApiParam(value = "csar Id") @PathParam("csarId") String csarId,
@ApiParam(value = "operation type") @QueryParam("operTypeId") String operTypeId) {
- return PackageWrapper.getInstance().getOperResultByOperTypeId(csarId,operTypeId);
+ return PackageWrapper.getInstance().getOperResultByOperTypeId(csarId, operTypeId);
}
@Path("/csars/onboardsteps")
@GET
- @ApiOperation(value="Get VNF OnBoarded Steps", response=Response.class)
+ @ApiOperation(value = "Get VNF OnBoarded Steps", response = Response.class)
@Produces(MediaType.APPLICATION_JSON)
- public Response getOnBoardingSteps()
- {
+ public Response getOnBoardingSteps() {
return PackageWrapper.getInstance().getOnBoardingSteps();
}
-}
+ @Path("/healthcheck")
+ @GET
+ @ApiOperation(value = "Health for VNF Repository", response = Response.class)
+ @Produces(MediaType.APPLICATION_JSON)
+ public Response healthCheck() {
+
+ // Step 1: Check whether tomcat server is up
+ RestResponse resp = RestfulClient.get("127.0.0.1", CommonConstant.HTTP_PORT, CommonConstant.BASE_URL);
+ if(RestConstant.RESPONSE_CODE_200 != resp.getStatusCode()) {
+ return Response.serverError().build();
+ }
+
+ // Step 2: Check whether postgres database is up
+ try {
+ PackageManager.getInstance().queryPackageByCsarId("01");
+ } catch(Exception e) {
+ return Response.serverError().build();
+ }
+
+ return Response.ok().build();
+ }
+}