summaryrefslogtreecommitdiffstats
path: root/catalog-be/src/main/java/org/openecomp/sdc/be/servlets/ResourceArtifactDownloadServlet.java
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-be/src/main/java/org/openecomp/sdc/be/servlets/ResourceArtifactDownloadServlet.java')
-rw-r--r--catalog-be/src/main/java/org/openecomp/sdc/be/servlets/ResourceArtifactDownloadServlet.java221
1 files changed, 108 insertions, 113 deletions
diff --git a/catalog-be/src/main/java/org/openecomp/sdc/be/servlets/ResourceArtifactDownloadServlet.java b/catalog-be/src/main/java/org/openecomp/sdc/be/servlets/ResourceArtifactDownloadServlet.java
index 54ec6e3b15..5d4001eec5 100644
--- a/catalog-be/src/main/java/org/openecomp/sdc/be/servlets/ResourceArtifactDownloadServlet.java
+++ b/catalog-be/src/main/java/org/openecomp/sdc/be/servlets/ResourceArtifactDownloadServlet.java
@@ -20,15 +20,10 @@
package org.openecomp.sdc.be.servlets;
-import javax.servlet.http.HttpServletRequest;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
-
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.jcabi.aspects.Loggable;
+import fj.data.Either;
import org.apache.http.HttpStatus;
import org.openecomp.sdc.be.config.BeEcompErrorManager;
import org.openecomp.sdc.be.dao.api.ActionStatus;
@@ -38,116 +33,116 @@ import org.openecomp.sdc.be.info.ArtifactAccessInfo;
import org.openecomp.sdc.be.resources.api.IResourceUploader;
import org.openecomp.sdc.be.resources.data.ESArtifactData;
import org.openecomp.sdc.common.api.Constants;
-import org.openecomp.sdc.common.config.EcompErrorName;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-import com.jcabi.aspects.Loggable;
-
-import fj.data.Either;
+import javax.servlet.http.HttpServletRequest;
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.Context;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.Response;
@Loggable(prepend = true, value = Loggable.DEBUG, trim = false)
@Path("/v1/catalog/resources/available")
public class ResourceArtifactDownloadServlet extends ToscaDaoServlet {
- private static Logger log = LoggerFactory.getLogger(ResourceArtifactDownloadServlet.class.getName());
-
- private Gson gson = new GsonBuilder().setPrettyPrinting().create();
-
- @GET
- @Path("/{resourceName}/{resourceVersion}/artifacts/{artifactName}")
- // @Produces(MediaType.APPLICATION_OCTET_STREAM)
- public Response getResourceArtifactByName(@PathParam("resourceName") final String resourceName, @PathParam("resourceVersion") final String resourceVersion, @PathParam("artifactName") final String artifactName,
- @Context final HttpServletRequest request) {
-
- String url = request.getMethod() + " " + request.getRequestURI();
- log.debug("Start handle request of {}", url);
- Response response = null;
- try {
- // get the artifact data
- String artifactId = String.format(Constants.ARTIFACT_ID_FORMAT, resourceName, resourceVersion, artifactName);
-
- IResourceUploader resouceUploader = getResourceUploader(request.getSession().getServletContext());
- if (resouceUploader == null) {
- return buildResponse(HttpStatus.SC_INTERNAL_SERVER_ERROR, "");
-
- }
- Either<ESArtifactData, ResourceUploadStatus> getArtifactStatus = resouceUploader.getArtifact(artifactId);
-
- DownloadArtifactLogic logic = getLogic(request.getSession().getServletContext());
- if (logic == null) {
- return buildResponse(HttpStatus.SC_INTERNAL_SERVER_ERROR, "");
-
- }
- response = logic.downloadArtifact(resourceName, resourceVersion, artifactName, getArtifactStatus, artifactId);
-
- log.info("Finish handle request of {} | result = {}", url, response.getStatus());
- return response;
-
- } catch (Exception e) {
- BeEcompErrorManager.getInstance().processEcompError(EcompErrorName.BeRestApiGeneralError, "Get Resource Artifact By Name");
- BeEcompErrorManager.getInstance().logBeRestApiGeneralError("Get Resource Artifact By Name");
- log.debug("getResourceArtifactByName failed with exception", e);
- response = buildErrorResponse(getComponentsUtils().getResponseFormat(ActionStatus.GENERAL_ERROR));
- return response;
- }
- }
-
- @GET
- @Path("/{resourceName}/{resourceVersion}/artifacts/{artifactName}/metadata")
- @Produces(MediaType.APPLICATION_JSON)
- public Response getResourceArtifactMetadata(@PathParam("resourceName") final String resourceName, @PathParam("resourceVersion") final String resourceVersion, @PathParam("artifactName") final String artifactName,
- @Context final HttpServletRequest request) {
-
- String url = request.getMethod() + " " + request.getRequestURI();
- log.debug("Start handle request of {}", url);
-
- Response response = null;
- try {
- IResourceUploader resourceDao = getResourceUploader(request.getSession().getServletContext());
- if (resourceDao == null) {
- log.error("resource dao cannot be found");
- response = buildResponse(HttpStatus.SC_INTERNAL_SERVER_ERROR, "Resource dao cannot be found");
- return response;
- }
-
- String artifactId = String.format(Constants.ARTIFACT_ID_FORMAT, resourceName, resourceVersion, artifactName);
- Either<ESArtifactData, ResourceUploadStatus> getArtifactStatus = resourceDao.getArtifact(artifactId);
-
- if (getArtifactStatus.isRight()) {
- ResourceUploadStatus status = getArtifactStatus.right().value();
- if (status == ResourceUploadStatus.COMPONENT_NOT_EXIST) {
- response = Response.status(HttpStatus.SC_NOT_FOUND).build();
- log.debug("Could not find artifact for with id: {}", artifactId);
- } else {
- response = Response.status(HttpStatus.SC_NO_CONTENT).build();
- log.debug("Could not find artifact for with id: {}", artifactId);
- }
- return response;
- } else {
- ESArtifactData artifactData = getArtifactStatus.left().value();
- log.debug("found artifact with id: {}", artifactId);
- ArtifactAccessInfo artifactInfo = new ArtifactAccessInfo(artifactData);
- String artifactDataJson = gson.toJson(artifactInfo);
- response = Response.status(HttpStatus.SC_OK).entity(artifactDataJson).type(MediaType.APPLICATION_JSON_TYPE).build();
-
- log.info("Finish handle request of {} | result = {}", url, response.getStatus());
- return response;
- }
- } catch (Exception e) {
- BeEcompErrorManager.getInstance().processEcompError(EcompErrorName.BeRestApiGeneralError, "Get Resource Artifact Metadata");
- BeEcompErrorManager.getInstance().logBeRestApiGeneralError("Get Resource Artifact Metadata");
- log.debug("getResourceArtifactMetadata failed with exception", e);
- response = buildErrorResponse(getComponentsUtils().getResponseFormat(ActionStatus.GENERAL_ERROR));
- return response;
- }
-
- }
-
- @Override
- public Logger getLogger() {
- return log;
- }
+ private static final Logger log = LoggerFactory.getLogger(ResourceArtifactDownloadServlet.class);
+
+ private Gson gson = new GsonBuilder().setPrettyPrinting().create();
+
+ @GET
+ @Path("/{resourceName}/{resourceVersion}/artifacts/{artifactName}")
+ // @Produces(MediaType.APPLICATION_OCTET_STREAM)
+ public Response getResourceArtifactByName(@PathParam("resourceName") final String resourceName, @PathParam("resourceVersion") final String resourceVersion, @PathParam("artifactName") final String artifactName,
+ @Context final HttpServletRequest request) {
+
+ String url = request.getMethod() + " " + request.getRequestURI();
+ log.debug("Start handle request of {}", url);
+ Response response = null;
+ try {
+ // get the artifact data
+ String artifactId = String.format(Constants.ARTIFACT_ID_FORMAT, resourceName, resourceVersion, artifactName);
+
+ IResourceUploader resouceUploader = getResourceUploader(request.getSession().getServletContext());
+ if (resouceUploader == null) {
+ return buildResponse(HttpStatus.SC_INTERNAL_SERVER_ERROR, "");
+
+ }
+ Either<ESArtifactData, ResourceUploadStatus> getArtifactStatus = resouceUploader.getArtifact(artifactId);
+
+ DownloadArtifactLogic logic = getLogic(request.getSession().getServletContext());
+ if (logic == null) {
+ return buildResponse(HttpStatus.SC_INTERNAL_SERVER_ERROR, "");
+
+ }
+ response = logic.downloadArtifact(artifactName, getArtifactStatus, artifactId);
+
+ log.info("Finish handle request of {} | result = {}", url, response.getStatus());
+ return response;
+
+ } catch (Exception e) {
+ BeEcompErrorManager.getInstance().logBeRestApiGeneralError("Get Resource Artifact By Name");
+ log.debug("getResourceArtifactByName failed with exception", e);
+ response = buildErrorResponse(getComponentsUtils().getResponseFormat(ActionStatus.GENERAL_ERROR));
+ return response;
+ }
+ }
+
+ @GET
+ @Path("/{resourceName}/{resourceVersion}/artifacts/{artifactName}/metadata")
+ @Produces(MediaType.APPLICATION_JSON)
+ public Response getResourceArtifactMetadata(@PathParam("resourceName") final String resourceName, @PathParam("resourceVersion") final String resourceVersion, @PathParam("artifactName") final String artifactName,
+ @Context final HttpServletRequest request) {
+
+ String url = request.getMethod() + " " + request.getRequestURI();
+ log.debug("Start handle request of {}", url);
+
+ Response response = null;
+ try {
+ IResourceUploader resourceDao = getResourceUploader(request.getSession().getServletContext());
+ if (resourceDao == null) {
+ log.error("resource dao cannot be found");
+ response = buildResponse(HttpStatus.SC_INTERNAL_SERVER_ERROR, "Resource dao cannot be found");
+ return response;
+ }
+
+ String artifactId = String.format(Constants.ARTIFACT_ID_FORMAT, resourceName, resourceVersion, artifactName);
+ Either<ESArtifactData, ResourceUploadStatus> getArtifactStatus = resourceDao.getArtifact(artifactId);
+
+ if (getArtifactStatus.isRight()) {
+ ResourceUploadStatus status = getArtifactStatus.right().value();
+ if (status == ResourceUploadStatus.COMPONENT_NOT_EXIST) {
+ response = Response.status(HttpStatus.SC_NOT_FOUND).build();
+ log.debug("Could not find artifact for with id: {}", artifactId);
+ } else {
+ response = Response.status(HttpStatus.SC_NO_CONTENT).build();
+ log.debug("Could not find artifact for with id: {}", artifactId);
+ }
+ return response;
+ } else {
+ ESArtifactData artifactData = getArtifactStatus.left().value();
+ log.debug("found artifact with id: {}", artifactId);
+ ArtifactAccessInfo artifactInfo = new ArtifactAccessInfo(artifactData);
+ String artifactDataJson = gson.toJson(artifactInfo);
+ response = Response.status(HttpStatus.SC_OK).entity(artifactDataJson).type(MediaType.APPLICATION_JSON_TYPE).build();
+
+ log.info("Finish handle request of {} | result = {}", url, response.getStatus());
+ return response;
+ }
+ } catch (Exception e) {
+ BeEcompErrorManager.getInstance().logBeRestApiGeneralError("Get Resource Artifact Metadata");
+ log.debug("getResourceArtifactMetadata failed with exception", e);
+ response = buildErrorResponse(getComponentsUtils().getResponseFormat(ActionStatus.GENERAL_ERROR));
+ return response;
+ }
+
+ }
+
+ @Override
+ public Logger getLogger() {
+ return log;
+ }
}