Class FileSystemModuleLoader
java.lang.Object
net.thisptr.jackson.jq.module.loaders.FileSystemModuleLoader
- All Implemented Interfaces:
ModuleLoader
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final class
private static final class
private static final class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ConcurrentHashMap
<Pair<Path, String>, FileSystemModuleLoader.TryOnce<com.fasterxml.jackson.databind.JsonNode>> private final ConcurrentHashMap
<Pair<Path, String>, FileSystemModuleLoader.TryOnce<Module>> private static final com.fasterxml.jackson.databind.ObjectMapper
private final Scope
private final Version
-
Constructor Summary
ConstructorsConstructorDescriptionFileSystemModuleLoader
(Scope parentScope, Version version, Path... searchPaths) -
Method Summary
Modifier and TypeMethodDescriptioncom.fasterxml.jackson.databind.JsonNode
private com.fasterxml.jackson.databind.JsonNode
loadDataActual
(Path searchPath, String path) loadModule
(Module caller, String path, com.fasterxml.jackson.databind.JsonNode metadata) private Module
loadModuleActual
(Path searchPath, String path) private static FileSystemModuleLoader.ModuleFile
loadModuleFile
(Path searchPath, String path, String ext) private static final Path
resolveModulePath
(Path searchPath, String path) resolvePathsFromImportDirective
(Module caller, String path, com.fasterxml.jackson.databind.JsonNode metadata)
-
Field Details
-
searchPaths
-
version
-
parentScope
-
loadedModules
private final ConcurrentHashMap<Pair<Path,String>, loadedModulesFileSystemModuleLoader.TryOnce<Module>> -
loadedData
private final ConcurrentHashMap<Pair<Path,String>, loadedDataFileSystemModuleLoader.TryOnce<com.fasterxml.jackson.databind.JsonNode>> -
MAPPER
private static final com.fasterxml.jackson.databind.ObjectMapper MAPPER
-
-
Constructor Details
-
FileSystemModuleLoader
-
-
Method Details
-
resolveModulePath
-
loadModuleFile
private static FileSystemModuleLoader.ModuleFile loadModuleFile(Path searchPath, String path, String ext) throws IOException - Throws:
IOException
-
loadModuleActual
- Throws:
IOException
-
resolvePathsFromImportDirective
private Pair<List<Path>,String> resolvePathsFromImportDirective(Module caller, String path, com.fasterxml.jackson.databind.JsonNode metadata) throws JsonQueryException - Throws:
JsonQueryException
-
loadModule
public Module loadModule(Module caller, String path, com.fasterxml.jackson.databind.JsonNode metadata) throws JsonQueryException - Specified by:
loadModule
in interfaceModuleLoader
- Throws:
JsonQueryException
-
loadData
public com.fasterxml.jackson.databind.JsonNode loadData(Module caller, String path, com.fasterxml.jackson.databind.JsonNode metadata) throws JsonQueryException - Specified by:
loadData
in interfaceModuleLoader
- Throws:
JsonQueryException
-
loadDataActual
private com.fasterxml.jackson.databind.JsonNode loadDataActual(Path searchPath, String path) throws IOException - Throws:
IOException
-