Class Detector
java.lang.Object
kr.motd.maven.os.Detector
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static classprivate static classprivate static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final String[]static final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringprivate final FileOperationProviderprivate static final Stringprivate static final Stringprivate static final String[]private static final Stringprivate static final Patternprivate static final Stringprivate final SystemPropertyOperationProviderprivate static final Stringprivate static final Pattern -
Constructor Summary
ConstructorsConstructorDescriptionDetector()Detector(SystemPropertyOperationProvider systemPropertyOperationProvider, FileOperationProvider fileOperationProvider) -
Method Summary
Modifier and TypeMethodDescriptionprivate static voidcloseQuietly(Closeable obj) protected voiddetect(Properties props, List<String> classifierWithLikes) private intdetermineBitness(String architecture) private Detector.LinuxReleasestatic intprotected abstract voidprotected abstract voidlogProperty(String name, String value) private static Stringprivate static StringnormalizeArch(String value) private static StringnormalizeOs(String value) private static StringnormalizeOsReleaseValue(String value) private Detector.LinuxReleaseparseLinuxOsReleaseFile(String fileName) Parses a file in the format of/etc/os-releaseand return aDetector.LinuxReleasebased on theID,ID_LIKE, andVERSION_IDentries.private Detector.LinuxReleaseparseLinuxRedhatReleaseFile(String fileName) Parses the/etc/redhat-releaseand returns aDetector.LinuxReleasecontaining the ID and like ["rhel", "fedora", ID].private voidsetProperty(Properties props, String name, String value)
-
Field Details
-
DETECTED_NAME
- See Also:
-
DETECTED_ARCH
- See Also:
-
DETECTED_BITNESS
- See Also:
-
DETECTED_VERSION
- See Also:
-
DETECTED_VERSION_MAJOR
- See Also:
-
DETECTED_VERSION_MINOR
- See Also:
-
DETECTED_CLASSIFIER
- See Also:
-
DETECTED_RELEASE
- See Also:
-
DETECTED_RELEASE_VERSION
- See Also:
-
DETECTED_RELEASE_LIKE_PREFIX
- See Also:
-
UNKNOWN
- See Also:
-
LINUX_ID_PREFIX
- See Also:
-
LINUX_ID_LIKE_PREFIX
- See Also:
-
LINUX_VERSION_ID_PREFIX
- See Also:
-
LINUX_OS_RELEASE_FILES
-
REDHAT_RELEASE_FILE
- See Also:
-
DEFAULT_REDHAT_VARIANTS
-
VERSION_REGEX
-
REDHAT_MAJOR_VERSION_REGEX
-
systemPropertyOperationProvider
-
fileOperationProvider
-
-
Constructor Details
-
Detector
public Detector() -
Detector
public Detector(SystemPropertyOperationProvider systemPropertyOperationProvider, FileOperationProvider fileOperationProvider)
-
-
Method Details
-
detect
-
setProperty
-
log
-
logProperty
-
normalizeOs
-
normalizeArch
-
normalize
-
getLinuxRelease
-
parseLinuxOsReleaseFile
Parses a file in the format of/etc/os-releaseand return aDetector.LinuxReleasebased on theID,ID_LIKE, andVERSION_IDentries. -
parseLinuxRedhatReleaseFile
Parses the/etc/redhat-releaseand returns aDetector.LinuxReleasecontaining the ID and like ["rhel", "fedora", ID]. Currently only supported for CentOS, Fedora, and RHEL. Other variants will returnnull. -
normalizeOsReleaseValue
-
determineBitness
-
guessBitnessFromArchitecture
-
closeQuietly
-