Top Description Inners Fields Constructors Methods
org.jooq

public final Class FilePattern

extends Object
Class Inheritance
Annotations
@Internal
Static Imports
java.util.Comparator.naturalOrder, org.jooq.FilePattern.Sort.SEMANTIC

A utility class that can traverse a directory structure given some ant-style file patterns, or classpath resources.

The following algorithm is applied when traversing sources:

This is INTERNAL API. Please do not use directly as API may change incompatibly.

Author
Lukas Eder

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static enum
FilePattern.Sort

The sort algorithm to be applied to directory contents.

Field Summary

Modifier and TypeField and Description
private final File
private final Comparator<File>
private final String
private static final JooqLogger
private final String
private final Pattern
private final Pattern
private final FilePattern.Sort

Constructor Summary

AccessConstructor and Description
public
private
FilePattern(FilePattern.Sort sort, File basedir, String pattern, String encoding)

Method Summary

Modifier and TypeMethod and Description
public final File
public final FilePattern
basedir(File newBasedir)

public final List<Source>
collect()

Retrieve a set of Source items from this pattern.

public final String
public final FilePattern
encoding(String newEncoding)

private static final Comparator<File>
public final void
load(Consumer<Source> loader)

Load a set of Source items from this pattern.

private final void
load(File file, Comparator<File> fileComparator, Pattern regex, Consumer<Source> loader)

private final void
load0(File file, Consumer<Source> loader)

public final boolean
matches(String path)

Whether a given path matches the pattern.

public final String
public final FilePattern
pattern(String newPattern)

private String
public final FilePattern.Sort
sort()

public final FilePattern
public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait

Field Detail

basedirback to summary
private final File basedir
comparatorback to summary
private final Comparator<File> comparator
encodingback to summary
private final String encoding
logback to summary
private static final JooqLogger log
patternback to summary
private final String pattern
regexForLoadback to summary
private final Pattern regexForLoad
regexForMatchesback to summary
private final Pattern regexForMatches
sortback to summary
private final FilePattern.Sort sort

Constructor Detail

FilePatternback to summary
public FilePattern()
FilePatternback to summary
private FilePattern(FilePattern.Sort sort, File basedir, String pattern, String encoding)

Method Detail

basedirback to summary
public final File basedir()
basedirback to summary
public final FilePattern basedir(File newBasedir)
collectback to summary
public final List<Source> collect()

Retrieve a set of Source items from this pattern.

Exceptions
IOException:
if something goes wrong while loading file contents.
encodingback to summary
public final String encoding()
encodingback to summary
public final FilePattern encoding(String newEncoding)
fileComparatorback to summary
private static final Comparator<File> fileComparator(FilePattern.Sort sort)
loadback to summary
public final void load(Consumer<Source> loader)

Load a set of Source items from this pattern.

Exceptions
IOException:
if something goes wrong while loading file contents.
loadback to summary
private final void load(File file, Comparator<File> fileComparator, Pattern regex, Consumer<Source> loader) throws IOException
load0back to summary
private final void load0(File file, Consumer<Source> loader)
matchesback to summary
public final boolean matches(String path)

Whether a given path matches the pattern.

patternback to summary
public final String pattern()
patternback to summary
public final FilePattern pattern(String newPattern)
regexback to summary
private String regex()
sortback to summary
public final FilePattern.Sort sort()
sortback to summary
public final FilePattern sort(FilePattern.Sort newSort)
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object.

Returns:String

a string representation of the object.

Annotations
@Override
org.jooq back to summary

public final Enum FilePattern.Sort

extends Enum<FilePattern.Sort>
Class Inheritance

The sort algorithm to be applied to directory contents.

Field Summary

Modifier and TypeField and Description
public static final FilePattern.Sort
ALPHANUMERIC

Standard alphanumeric sorting.

public static final FilePattern.Sort
FLYWAY

Flyway compatible sorting.

public static final FilePattern.Sort
NONE

No explicit sorting (may be non deterministic, depending on the file system).

public static final FilePattern.Sort
SEMANTIC

Semantic, version aware sorting (the default).

Constructor Summary

AccessConstructor and Description
private
Sort()

Method Summary

Modifier and TypeMethod and Description
public static final FilePattern.Sort
of(String sort)

public static FilePattern.Sort
public static FilePattern.Sort[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

ALPHANUMERICback to summary
public static final FilePattern.Sort ALPHANUMERIC

Standard alphanumeric sorting.

For example:

version-1
version-10
version-2
FLYWAYback to summary
public static final FilePattern.Sort FLYWAY

Flyway compatible sorting.

NONEback to summary
public static final FilePattern.Sort NONE

No explicit sorting (may be non deterministic, depending on the file system).

SEMANTICback to summary
public static final FilePattern.Sort SEMANTIC

Semantic, version aware sorting (the default).

For example:

version-1
version-2
version-10

Constructor Detail

Sortback to summary
private Sort()

Method Detail

ofback to summary
public static final FilePattern.Sort of(String sort)
valueOfback to summary
public static FilePattern.Sort valueOf(String name)
valuesback to summary
public static FilePattern.Sort[] values()