Enum Class FileMetadataPredicates

java.lang.Object
java.lang.Enum<FileMetadataPredicates>
io.gdcc.spi.export.FileMetadataPredicates
All Implemented Interfaces:
Serializable, Comparable<FileMetadataPredicates>, Constable

public enum FileMetadataPredicates extends Enum<FileMetadataPredicates>
Enum representing predicates for filtering file metadata during export operations. Each predicate defines criteria for including or excluding specific types of files. Conflicts between predicates are explicitly defined to prevent ambiguous or contradictory filtering rules. Any predicates should follow the pattern (SKIP|ONLY|INCLUDE)_[ADJECTIVE]_[OBJECT].
  • Enum Constant Details

    • ALL_FILES

      public static final FileMetadataPredicates ALL_FILES
      Includes metadata for all files without restriction. Conflicts with any other predicate selecting files.
    • SKIP_FILES

      public static final FileMetadataPredicates SKIP_FILES
      Excludes metadata for all files. Conflicts with any other file selecting predicate.
    • ONLY_PUBLIC_FILES

      public static final FileMetadataPredicates ONLY_PUBLIC_FILES
      Only include files with public visibility. Conflicts with ALL_FILES and SKIP_FILES.
    • ONLY_TABULAR_FILES

      public static final FileMetadataPredicates ONLY_TABULAR_FILES
      Only include tabular data files. Conflicts with ALL_FILES and SKIP_FILES.
    • INCLUDE_TABULAR_DATA_VARIABLES

      public static final FileMetadataPredicates INCLUDE_TABULAR_DATA_VARIABLES
      For tabular data files, control if variable details are included or not. (That can be huge and heterogeneous data with slow DB queries!) It has no conflicting predicates, as it is about detail inclusion, not file selection.
  • Method Details

    • values

      public static FileMetadataPredicates[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static FileMetadataPredicates valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • conflictsWith

      public boolean conflictsWith(FileMetadataPredicates p)
    • checkConflicts

      public static Set<FileMetadataPredicates> checkConflicts(Set<FileMetadataPredicates> predicates)
      Checks for conflicts among the given set of export file predicates. A predicate is considered conflicting if it has a conflict relationship with any other predicate defined in the FileMetadataPredicates enum.
      Parameters:
      predicates - the set of predicates to check for conflicts
      Returns:
      an unmodifiable set of predicates from the input that conflict with at least one other predicate (empty if no conflict)