Class Jre19Compat
java.lang.Object
org.apache.tomcat.util.compat.JreCompat
org.apache.tomcat.util.compat.Jre12Compat
org.apache.tomcat.util.compat.Jre19Compat
- Direct Known Subclasses:
- Jre21Compat
- 
Field SummaryFields inherited from class org.apache.tomcat.util.compat.JreCompatcanonCachesDisabled, canonCachesDisabledLock, getApplicationProtocolMethod, setApplicationProtocolsMethod, USE_CANON_CACHES_CMD_ARG, useCanonCachesField, useCanonCachesFieldLock
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidaddBootModulePath(Deque<URL> classPathUrlsToProcess) Obtains the URLs for all the JARs on the module path when the JVM starts and adds them to the provided Deque.booleancanAccess(Object base, AccessibleObject accessibleObject) Is the accessibleObject accessible (as a result of appropriate module exports) on the provided instance?voidDisables caching for JAR URL connections.getExecutor(Thread thread) Obtains the executor, if any, used to create the provided thread.getModuleName(Class<?> type) What is the module of the given class?Return Unix domain socket address for given path.booleanisExported(Class<?> type) Is the given class in an exported package?booleanTest if the provided exception is an instance of java.lang.reflect.InaccessibleObjectException.booleanjarFileIsMultiRelease(JarFile jarFile) Is this JarFile a multi-release JAR file.Creates a new JarFile instance.intCreate server socket channel using the Unix domain socket ProtocolFamily.Create socket channel using the Unix domain socket ProtocolFamily.Methods inherited from class org.apache.tomcat.util.compat.Jre12CompatensureUseCanonCachesFieldIsPopulated, isCanonCachesDisabledMethods inherited from class org.apache.tomcat.util.compat.JreCompatcallAs, createVirtualThreadBuilder, disableCanonCaches, getApplicationProtocol, getInstance, isAlpnSupported, isGraalAvailable, isJre11Available, isJre12Available, isJre16Available, isJre19Available, isJre21Available, isJre22Available, isJre9Available, jarFileNewInstance, setApplicationProtocols, threadBuilderStart
- 
Constructor Details- 
Jre19Compatpublic Jre19Compat()
 
- 
- 
Method Details- 
getExecutorpublic Object getExecutor(Thread thread) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException Description copied from class:JreCompatObtains the executor, if any, used to create the provided thread.- Overrides:
- getExecutorin class- JreCompat
- Parameters:
- thread- The thread to examine
- Returns:
- The executor, if any, that created the provided thread
- Throws:
- NoSuchFieldException- If a field used via reflection to obtain the executor cannot be found
- SecurityException- If a security exception occurs while trying to identify the executor
- IllegalArgumentException- If the instance object does not match the class of the field when obtaining a field value via reflection
- IllegalAccessException- If a field is not accessible due to access restrictions
 
- 
getUnixDomainSocketAddressDescription copied from class:JreCompatReturn Unix domain socket address for given path.- Overrides:
- getUnixDomainSocketAddressin class- JreCompat
- Parameters:
- path- The path
- Returns:
- the socket address
 
- 
openUnixDomainServerSocketChannelDescription copied from class:JreCompatCreate server socket channel using the Unix domain socket ProtocolFamily.- Overrides:
- openUnixDomainServerSocketChannelin class- JreCompat
- Returns:
- the server socket channel
 
- 
openUnixDomainSocketChannelDescription copied from class:JreCompatCreate socket channel using the Unix domain socket ProtocolFamily.- Overrides:
- openUnixDomainSocketChannelin class- JreCompat
- Returns:
- the socket channel
 
- 
isInstanceOfInaccessibleObjectExceptionDescription copied from class:JreCompatTest if the provided exception is an instance of java.lang.reflect.InaccessibleObjectException.- Overrides:
- isInstanceOfInaccessibleObjectExceptionin class- JreCompat
- Parameters:
- t- The exception to test
- Returns:
- trueif the exception is an instance of InaccessibleObjectException, otherwise- false
 
- 
disableCachingForJarUrlConnectionsDescription copied from class:JreCompatDisables caching for JAR URL connections. For Java 8 and earlier, this also disables caching for ALL URL connections.- Overrides:
- disableCachingForJarUrlConnectionsin class- JreCompat
- Throws:
- IOException- If a dummy JAR URLConnection can not be created
 
- 
addBootModulePathDescription copied from class:JreCompatObtains the URLs for all the JARs on the module path when the JVM starts and adds them to the provided Deque.- Overrides:
- addBootModulePathin class- JreCompat
- Parameters:
- classPathUrlsToProcess- The Deque to which the modules should be added
 
- 
jarFileNewInstanceDescription copied from class:JreCompatCreates a new JarFile instance. When running on Java 9 and later, the JarFile will be multi-release JAR aware.- Overrides:
- jarFileNewInstancein class- JreCompat
- Parameters:
- f- The JAR file to open
- Returns:
- A JarFile instance based on the provided file
- Throws:
- IOException- If an I/O error occurs creating the JarFile instance
 
- 
jarFileIsMultiReleaseDescription copied from class:JreCompatIs this JarFile a multi-release JAR file.- Overrides:
- jarFileIsMultiReleasein class- JreCompat
- Parameters:
- jarFile- The JarFile to test
- Returns:
- trueIf it is a multi-release JAR file and is configured to behave as such.
 
- 
jarFileRuntimeMajorVersionpublic int jarFileRuntimeMajorVersion()- Overrides:
- jarFileRuntimeMajorVersionin class- JreCompat
 
- 
canAccessDescription copied from class:JreCompatIs the accessibleObject accessible (as a result of appropriate module exports) on the provided instance?
- 
isExportedDescription copied from class:JreCompatIs the given class in an exported package?- Overrides:
- isExportedin class- JreCompat
- Parameters:
- type- The class to test
- Returns:
- Always truefor Java 8.trueif the enclosing package is exported for Java 9+
 
- 
getModuleNameDescription copied from class:JreCompatWhat is the module of the given class?- Overrides:
- getModuleNamein class- JreCompat
- Parameters:
- type- The class to test
- Returns:
- Always truefor Java 8.trueif the enclosing package is exported for Java 9+
 
 
-