X-Git-Url: https://gerrit.onap.org/r/gitweb?p=portal.git;a=blobdiff_plain;f=portal-BE%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fportal%2Fservice%2FManifestService.java;fp=portal-BE%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fportal%2Fservice%2FManifestService.java;h=eb823250001acdc022913a6a19e3447f7d844147;hp=0000000000000000000000000000000000000000;hb=b5cf61b0a4b1335a96a785674ca3d4e844d212ef;hpb=bf2a03463f57d9b18ce96467b3b8d7f3b1ae1025 diff --git a/portal-BE/src/main/java/org/onap/portal/service/ManifestService.java b/portal-BE/src/main/java/org/onap/portal/service/ManifestService.java new file mode 100644 index 00000000..eb823250 --- /dev/null +++ b/portal-BE/src/main/java/org/onap/portal/service/ManifestService.java @@ -0,0 +1,35 @@ +package org.onap.portal.service; + +import java.io.IOException; +import java.io.InputStream; +import java.util.jar.Attributes; +import java.util.jar.Manifest; +import javax.servlet.ServletContext; +import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.EnableAspectJAutoProxy; +import org.springframework.stereotype.Service; + +@Service +@EnableAspectJAutoProxy +public class ManifestService { + + @Autowired + ServletContext context; + + public Attributes getWebappManifest() throws IOException { + EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(ManifestService.class); + // Path to resource on classpath + final String MANIFEST_RESOURCE_PATH = "/META-INF/MANIFEST.MF"; + // Manifest is formatted as Java-style properties + try { + InputStream inputStream = context.getResourceAsStream(MANIFEST_RESOURCE_PATH); + Manifest manifest = new Manifest(inputStream); + inputStream.close(); + return manifest.getMainAttributes(); + } catch (IOException e) { + logger.error(EELFLoggerDelegate.errorLogger, "getWebappManifest: failed to read/find manifest"); + throw e; + } + } +}