- java.lang.Object
-
- io.virtdata.util.ResourceFinder
-
public class ResourceFinder extends java.lang.ObjectThe ResourceFinder class is the central file IO control point for all VirtData functions. VirtData mapping functions may ask for access to some content to use as seed or reference data. Centralizing the mechanisms used to access any of this data allows for access to the following:- URL provided content - If the path is a well-formed URI, then it is read as such. If it is not, then this resource finder is skipped.
- Filesystem content - Files in the relative path of users are searched, using the default search path prefixes.
- Module content - JPMS modules may contain content within a MODULE-DATA directory. This is enabled via a service hook and SPI, since modules must own their own content. The default search path prefixes are also used here.
- Classpath content - Resources in the classpath are searched, using the default search path prefixes.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringDATA_DIR
-
Constructor Summary
Constructors Constructor Description ResourceFinder()
-
Method Summary
Modifier and Type Method Description static java.util.Optional<java.io.Reader>findOptionalReader(java.lang.String basename, java.lang.String extenion, java.lang.String... searchPaths)static java.util.Optional<java.io.InputStream>findOptionalStream(java.lang.String basename, java.lang.String extension, java.lang.String... searchPaths)static java.io.ReaderfindRequiredReader(java.lang.String basename, java.lang.String extension, java.lang.String... searchPaths)static java.io.InputStreamfindRequiredStream(java.lang.String basename, java.lang.String extension, java.lang.String... searchPaths)static java.util.Optional<java.io.InputStream>getInputStream(java.lang.String path)static java.nio.CharBufferloadFileToCharBuffer(java.lang.String filename, java.lang.String... searchPaths)static java.util.List<java.lang.String>readDataFileLines(java.lang.String basename)static java.lang.StringreadDataFileString(java.lang.String basename)static java.nio.CharBufferreadDataFileToCharBuffer(java.lang.String basename)static org.apache.commons.csv.CSVParserreadFileCSV(java.lang.String basename, java.lang.String... searchPaths)static java.util.List<java.lang.String>readFileLines(java.lang.String basename, java.lang.String... searchPaths)static java.lang.StringreadFileString(java.lang.String basename, java.lang.String... searchPaths)
-
-
-
Field Detail
-
DATA_DIR
public static final java.lang.String DATA_DIR
- See Also:
- Constant Field Values
-
-
Method Detail
-
readDataFileToCharBuffer
public static java.nio.CharBuffer readDataFileToCharBuffer(java.lang.String basename)
-
readDataFileLines
public static java.util.List<java.lang.String> readDataFileLines(java.lang.String basename)
-
readDataFileString
public static java.lang.String readDataFileString(java.lang.String basename)
-
readFileCSV
public static org.apache.commons.csv.CSVParser readFileCSV(java.lang.String basename, java.lang.String... searchPaths)
-
findOptionalReader
public static java.util.Optional<java.io.Reader> findOptionalReader(java.lang.String basename, java.lang.String extenion, java.lang.String... searchPaths)
-
findRequiredReader
public static java.io.Reader findRequiredReader(java.lang.String basename, java.lang.String extension, java.lang.String... searchPaths)
-
readFileLines
public static java.util.List<java.lang.String> readFileLines(java.lang.String basename, java.lang.String... searchPaths)
-
readFileString
public static java.lang.String readFileString(java.lang.String basename, java.lang.String... searchPaths)
-
loadFileToCharBuffer
public static java.nio.CharBuffer loadFileToCharBuffer(java.lang.String filename, java.lang.String... searchPaths)
-
findRequiredStream
public static java.io.InputStream findRequiredStream(java.lang.String basename, java.lang.String extension, java.lang.String... searchPaths)
-
findOptionalStream
public static java.util.Optional<java.io.InputStream> findOptionalStream(java.lang.String basename, java.lang.String extension, java.lang.String... searchPaths)
-
getInputStream
public static java.util.Optional<java.io.InputStream> getInputStream(java.lang.String path)
-
-