Class ReloadableFileManager
java.lang.Object
javax.tools.ForwardingJavaFileManager<StandardJavaFileManager>
io.quarkus.deployment.dev.filesystem.QuarkusFileManager
io.quarkus.deployment.dev.filesystem.ReloadableFileManager
- All Implemented Interfaces:
Closeable,Flushable,AutoCloseable,JavaFileManager,OptionChecker
This reloadable file manager handle the class-paths and file locations of separated file manager instances.
It is required for applications that depends on hot-deployed classes of external sources.
It is required for applications that depends on hot-deployed classes of external sources.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classA class loader that combines multiple class loaders into one.
The classes loaded by this class loader are associated with this class loader, i.e.Nested classes/interfaces inherited from class io.quarkus.deployment.dev.filesystem.QuarkusFileManager
QuarkusFileManager.ContextNested classes/interfaces inherited from interface javax.tools.JavaFileManager
JavaFileManager.Location -
Field Summary
Fields inherited from class javax.tools.ForwardingJavaFileManager
fileManager -
Constructor Summary
ConstructorsModifierConstructorDescriptionReloadableFileManager(Supplier<StandardJavaFileManager> supplier, QuarkusFileManager.Context context) protectedReloadableFileManager(StandardJavaFileManager fileManager, StandardJavaFileManager reloadableFileManager, QuarkusFileManager.Context context) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()booleancontains(JavaFileManager.Location location, FileObject fo) getClassLoader(JavaFileManager.Location location) getFileForInput(JavaFileManager.Location location, String packageName, String relativeName) getFileForOutput(JavaFileManager.Location location, String packageName, String relativeName, FileObject sibling) getJavaFileForInput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind) getJavaFileForOutput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind, FileObject sibling) Iterable<? extends JavaFileObject> getJavaSources(Iterable<? extends File> files) getLocationForModule(JavaFileManager.Location location, String moduleName) getLocationForModule(JavaFileManager.Location location, JavaFileObject fo) <S> ServiceLoader<S> getServiceLoader(JavaFileManager.Location location, Class<S> service) booleanhandleOption(String current, Iterator<String> remaining) booleanhasLocation(JavaFileManager.Location location) inferBinaryName(JavaFileManager.Location location, JavaFileObject file) inferModuleName(JavaFileManager.Location location) list(JavaFileManager.Location location, String packageName, Set<JavaFileObject.Kind> kinds, boolean recurse) voidreset(QuarkusFileManager.Context context) Methods inherited from class javax.tools.ForwardingJavaFileManager
flush, isSameFile, isSupportedOption
-
Constructor Details
-
ReloadableFileManager
public ReloadableFileManager(Supplier<StandardJavaFileManager> supplier, QuarkusFileManager.Context context) -
ReloadableFileManager
protected ReloadableFileManager(StandardJavaFileManager fileManager, StandardJavaFileManager reloadableFileManager, QuarkusFileManager.Context context)
-
-
Method Details
-
getClassLoader
- Specified by:
getClassLoaderin interfaceJavaFileManager- Overrides:
getClassLoaderin classForwardingJavaFileManager<StandardJavaFileManager>
-
list
public Iterable<JavaFileObject> list(JavaFileManager.Location location, String packageName, Set<JavaFileObject.Kind> kinds, boolean recurse) throws IOException - Specified by:
listin interfaceJavaFileManager- Overrides:
listin classForwardingJavaFileManager<StandardJavaFileManager>- Throws:
IOException
-
inferBinaryName
- Specified by:
inferBinaryNamein interfaceJavaFileManager- Overrides:
inferBinaryNamein classForwardingJavaFileManager<StandardJavaFileManager>
-
handleOption
- Specified by:
handleOptionin interfaceJavaFileManager- Overrides:
handleOptionin classForwardingJavaFileManager<StandardJavaFileManager>
-
hasLocation
- Specified by:
hasLocationin interfaceJavaFileManager- Overrides:
hasLocationin classForwardingJavaFileManager<StandardJavaFileManager>
-
getJavaFileForInput
public JavaFileObject getJavaFileForInput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind) throws IOException - Specified by:
getJavaFileForInputin interfaceJavaFileManager- Overrides:
getJavaFileForInputin classForwardingJavaFileManager<StandardJavaFileManager>- Throws:
IOException
-
getJavaFileForOutput
public JavaFileObject getJavaFileForOutput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind, FileObject sibling) throws IOException - Specified by:
getJavaFileForOutputin interfaceJavaFileManager- Overrides:
getJavaFileForOutputin classForwardingJavaFileManager<StandardJavaFileManager>- Throws:
IOException
-
getFileForInput
public FileObject getFileForInput(JavaFileManager.Location location, String packageName, String relativeName) throws IOException - Specified by:
getFileForInputin interfaceJavaFileManager- Overrides:
getFileForInputin classForwardingJavaFileManager<StandardJavaFileManager>- Throws:
IOException
-
getFileForOutput
public FileObject getFileForOutput(JavaFileManager.Location location, String packageName, String relativeName, FileObject sibling) throws IOException - Specified by:
getFileForOutputin interfaceJavaFileManager- Overrides:
getFileForOutputin classForwardingJavaFileManager<StandardJavaFileManager>- Throws:
IOException
-
getLocationForModule
public JavaFileManager.Location getLocationForModule(JavaFileManager.Location location, String moduleName) throws IOException - Specified by:
getLocationForModulein interfaceJavaFileManager- Overrides:
getLocationForModulein classForwardingJavaFileManager<StandardJavaFileManager>- Throws:
IOException
-
getLocationForModule
public JavaFileManager.Location getLocationForModule(JavaFileManager.Location location, JavaFileObject fo) throws IOException - Specified by:
getLocationForModulein interfaceJavaFileManager- Overrides:
getLocationForModulein classForwardingJavaFileManager<StandardJavaFileManager>- Throws:
IOException
-
getServiceLoader
public <S> ServiceLoader<S> getServiceLoader(JavaFileManager.Location location, Class<S> service) throws IOException - Specified by:
getServiceLoaderin interfaceJavaFileManager- Overrides:
getServiceLoaderin classForwardingJavaFileManager<StandardJavaFileManager>- Throws:
IOException
-
inferModuleName
- Specified by:
inferModuleNamein interfaceJavaFileManager- Overrides:
inferModuleNamein classForwardingJavaFileManager<StandardJavaFileManager>- Throws:
IOException
-
listLocationsForModules
public Iterable<Set<JavaFileManager.Location>> listLocationsForModules(JavaFileManager.Location location) - Specified by:
listLocationsForModulesin interfaceJavaFileManager- Overrides:
listLocationsForModulesin classForwardingJavaFileManager<StandardJavaFileManager>
-
contains
- Specified by:
containsin interfaceJavaFileManager- Overrides:
containsin classForwardingJavaFileManager<StandardJavaFileManager>- Throws:
IOException
-
getJavaSources
- Specified by:
getJavaSourcesin classQuarkusFileManager
-
reset
- Overrides:
resetin classQuarkusFileManager
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceJavaFileManager- Overrides:
closein classQuarkusFileManager- Throws:
IOException
-