class ClassPathManifestInfoProvider implements ManifestInfoProvider {

    @Override
    public ManifestInfo getManifestInfo() {
        final Properties properties = new Properties();
        final InputStream gitProperties = ClassPathManifestInfoProvider.class.getResourceAsStream(resource);
        if (gitProperties != null) {
            try {
                properties.load(gitProperties);
            } catch (IOException e) {
                LOGGER.debug("Unable to read from resource '{}'.", resource, e);
            }
        } else {
            LOGGER.debug("Resource '{}' does not exist.", resource);
        }
        final String versionId = Optional.ofNullable(properties.getProperty("git.build.version")).orElse("N/A");
        final String buildId = Optional.ofNullable(properties.getProperty("git.commit.id.abbrev")).orElse("N/A");
        return new ManifestInfo(versionId, buildId);
    }

    public  ClassPathManifestInfoProvider(String resource, String name);

}