Guest User

Untitled

a guest
Jan 15th, 2019
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.37 KB | None | 0 0
  1. ClientConfiguration.init(config.findString("storage.api.host"), config.findInteger("storage.api.port"));
  2.         AprameyaClient client = new AprameyaClient();
  3.         ResourceCreateRequest request = new ResourceCreateRequest();
  4.         request.bucket = ctx.getProviderName().toUpperCase();
  5.         request.co = ctx.getProviderName().toLowerCase();
  6.         request.client = "INGESTOR";
  7.         request.destination = STORAGE_AREA;
  8.         request.resourceType = RESOURCE_TYPE;
  9.         request.name = ctx.getFetchId();
  10.         request.resources = new ArrayList<ResourceCreateInfo>();
  11.         ArrayList<String> createdFilesForCleanup = new ArrayList<String>(paths.size());
  12.         List<String> resources = null;
  13.         try {
  14.             for(String path: paths) {
  15.                 String filePath = ( (!path.startsWith("/"))? storageBase:"") + "/" + path;
  16.                 File fileToSave = new File(filePath);
  17.                 String fileName = fileToSave.getName();
  18.                 if(!fileToSave.exists()) {
  19.                     logger.error("File " + fileToSave.getAbsolutePath() + " does not exist");
  20.                     continue;
  21.                 }
  22.                 String tmpFileName = fileName + "-" + Long.toString(new java.util.Date().getTime());
  23.                 String outfilePath = tmpPath + "/" + tmpFileName;
  24.                 logger.info("Copying file " + fileToSave.getAbsolutePath() + " to storage file " + outfilePath);
  25.                 copyFileToStorage(fileToSave.getAbsolutePath(), outfilePath);
  26.                 createdFilesForCleanup.add(outfilePath);
  27.                 ResourceSourceInfo res = new ResourceSourceInfo();
  28.                 res.host = "";
  29.                 res.pass = "";
  30.                 res.port = "0";
  31.                 res.protocol = "file";
  32.                 res.user = "";
  33.                 res.path = "temp/" + tmpFileName;
  34.                 ResourceCreateInfo rc = new ResourceCreateInfo();
  35.                 rc.contentType = detectMimeType( fileName );
  36.                 rc.variant = "original";
  37.                 rc.group = ctx.getFetchId();
  38.                 rc.name = fileName;
  39.                 rc.source = res;
  40.                 request.resources.add(rc);
  41.                 System.out.println("Files to save: " + filePath);
  42.             }
  43.             ObjectMapper mapper = new ObjectMapper();
  44.             logger.info(mapper.writeValueAsString(request));
  45.             logger.info("Making storage call t osave meta files.");
  46.             ResourceCreateResponse response = client.createResource(request);
  47.             logger.info("Storage call succeeded");
  48.             resources = new Vector<String>();
  49.             for (MinimalResourceMetadata resource : response.resources) {
  50.                 resources.add(resource.id);
  51.                 logger.info("Resource id for file " + resource.name + " is " + resource.id);
  52.             }
  53.  
  54.         }
  55.         catch (Exception e) {
  56.             logger.error("Error occurred while saving meta files to storage.", e);
  57.         }
  58.         finally {
  59.             for(String fileToRemove: createdFilesForCleanup) {
  60.                 File cleanup = new File(fileToRemove);
  61.                 if(cleanup.delete()) {
  62.                     logger.info("Removed file " + cleanup);
  63.                 }
  64.                 else {
  65.                     logger.error("Failed to remove file: " + cleanup);
  66.                 }
  67.             }
  68.         }
  69.         return resources;
Add Comment
Please, Sign In to add comment