From 63bda59aac59f9fc99245d583decda254d1d3e5f Mon Sep 17 00:00:00 2001 From: econwar Date: Tue, 15 Jan 2019 15:56:03 +0000 Subject: Add creation of metadata file on subscriber Change-Id: Ia6aa3f038b35e47a0811de84a9aeab58acecd268 Issue-ID: DMAAP-963 Signed-off-by: econwar --- .../dmaap/datarouter/subscriber/SampleSubscriberServlet.java | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'datarouter-subscriber/src/main') diff --git a/datarouter-subscriber/src/main/java/org/onap/dmaap/datarouter/subscriber/SampleSubscriberServlet.java b/datarouter-subscriber/src/main/java/org/onap/dmaap/datarouter/subscriber/SampleSubscriberServlet.java index 38425748..28051285 100644 --- a/datarouter-subscriber/src/main/java/org/onap/dmaap/datarouter/subscriber/SampleSubscriberServlet.java +++ b/datarouter-subscriber/src/main/java/org/onap/dmaap/datarouter/subscriber/SampleSubscriberServlet.java @@ -140,9 +140,12 @@ public class SampleSubscriberServlet extends HttpServlet { URLEncoder.encode(fileid, "UTF-8").replaceAll("^\\.", "%2E").replaceAll("\\*", "%2A"); String fullPath = outputDirectory + "/" + filename; String tmpPath = outputDirectory + "/." + filename; + String fullMetaDataPath = outputDirectory + "/" + filename + ".M"; + String tmpMetaDataPath = outputDirectory + "/." + filename + ".M"; try { if (isdelete) { Files.deleteIfExists(Paths.get(fullPath)); + Files.deleteIfExists(Paths.get(fullMetaDataPath)); logger.info( "SampleSubServlet: Received delete for file id " + fileid @@ -154,6 +157,7 @@ public class SampleSubscriberServlet extends HttpServlet { + fullPath); } else { new File(tmpPath).createNewFile(); + new File(tmpMetaDataPath).createNewFile(); try (InputStream is = req.getInputStream(); OutputStream os = new FileOutputStream(tmpPath)) { byte[] buf = new byte[65536]; @@ -163,6 +167,11 @@ public class SampleSubscriberServlet extends HttpServlet { } } Files.move(Paths.get(tmpPath), Paths.get(fullPath), StandardCopyOption.REPLACE_EXISTING); + try (PrintWriter writer = new PrintWriter(new FileOutputStream(tmpMetaDataPath))) { + String metaData = req.getHeader("X-ATT-DR-META"); + writer.print(metaData); + } + Files.move(Paths.get(tmpMetaDataPath), Paths.get(fullMetaDataPath), StandardCopyOption.REPLACE_EXISTING); logger.info( "SampleSubServlet: Received file id " + fileid @@ -177,6 +186,7 @@ public class SampleSubscriberServlet extends HttpServlet { resp.setStatus(HttpServletResponse.SC_NO_CONTENT); } catch (IOException ioe) { Files.deleteIfExists(Paths.get(tmpPath)); + Files.deleteIfExists(Paths.get(tmpMetaDataPath)); logger.info( "SampleSubServlet: Failed to process file " + fullPath -- cgit 1.2.3-korg