Class VersionProvider.Builder
java.lang.Object
org.apache.juneau.rest.server.convention.VersionProvider.Builder
- Enclosing class:
- VersionProvider
Builder for
VersionProvider instances.-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedBuilder()Constructor — protected access forVersionProvider.create(). -
Method Summary
Modifier and TypeMethodDescriptionbuild()Builds aVersionProviderinstance.Bulk-set entries from a map.Sets a single entry, overwriting any prior value for that key.Readsgit.commit.id,git.branch, andgit.build.timefrom/git.propertieson theVersionProviderclassloader.fromGitProperties(ClassLoader classLoader) Readsgit.propertiesfrom the supplied classloader.Adds the running JVM'sjava.versionsystem property as thejavaVersionentry, unless an earlierfromManifest(...)call already supplied one fromBuild-Jdk.ReadsImplementation-Title,Implementation-Version,Implementation-Vendor, andBuild-Jdkfrom/META-INF/MANIFEST.MFon theVersionProviderclassloader.fromManifest(ClassLoader classLoader) Reads manifest attributes from/META-INF/MANIFEST.MFon the supplied classloader.fromManifest(Manifest manifest) Reads aManifestthat the importer registered as a bean (e.g.
-
Constructor Details
-
Builder
protected Builder()Constructor — protected access forVersionProvider.create().
-
-
Method Details
-
entry
Sets a single entry, overwriting any prior value for that key.- Parameters:
key- The entry key. Must not benull or blank.value- The entry value (anull value is recorded asVersionProvider.UNKNOWN).- Returns:
- This object.
-
entries
Bulk-set entries from a map.- Parameters:
values- Entries to add. Can benull (no-op). Individualnull values are recorded asVersionProvider.UNKNOWN.- Returns:
- This object.
-
fromManifest
ReadsImplementation-Title,Implementation-Version,Implementation-Vendor, andBuild-Jdkfrom/META-INF/MANIFEST.MFon theVersionProviderclassloader.Missing keys are recorded as
VersionProvider.UNKNOWN. A missingMANIFEST.MFresource is silently skipped.- Returns:
- This object.
-
fromManifest
Reads manifest attributes from/META-INF/MANIFEST.MFon the supplied classloader.Useful under Spring Boot fat jars, where the importer's app manifest is reachable from its own classloader but not the framework's. Missing keys are recorded as
VersionProvider.UNKNOWN; a missingMANIFEST.MFresource is silently skipped.- Parameters:
classLoader- The classloader to walk. Must not benull .- Returns:
- This object.
-
fromManifest
Reads aManifestthat the importer registered as a bean (e.g.@Bean Manifest appManifest()).- Parameters:
manifest- The manifest to read. Must not benull .- Returns:
- This object.
-
fromGitProperties
Readsgit.commit.id,git.branch, andgit.build.timefrom/git.propertieson theVersionProviderclassloader.- Returns:
- This object.
-
fromGitProperties
Readsgit.propertiesfrom the supplied classloader.- Parameters:
classLoader- The classloader to walk. Must not benull .- Returns:
- This object.
-
fromJavaVersion
Adds the running JVM'sjava.versionsystem property as thejavaVersionentry, unless an earlierfromManifest(...)call already supplied one fromBuild-Jdk.- Returns:
- This object.
-
build
Builds aVersionProviderinstance.- Returns:
- A configured instance.
-