Class FileAttributes

java.lang.Object
io.smallrye.common.io.FileAttributes

public final class FileAttributes extends Object
A utility class for conveniently producing FileAttribute implementations.
  • Method Details

    • acl

      public static FileAttribute<List<AclEntry>> acl(AclEntry entry)
      Produce a file attribute containing a Windows-style ACL entry set.
      Parameters:
      entry - the ACL entry (must not be null)
      Returns:
      the file attribute (not null)
    • acl

      public static FileAttribute<List<AclEntry>> acl(AclEntry... entries)
      Produce a file attribute containing a Windows-style ACL entry set.
      Parameters:
      entries - the ACL entries (must not be null)
      Returns:
      the file attribute (not null)
    • acl

      public static FileAttribute<List<AclEntry>> acl(List<AclEntry> entries)
      Produce a file attribute containing a Windows-style ACL entry set.
      Parameters:
      entries - the ACL entries (must not be null)
      Returns:
      the file attribute (not null)
    • creationTime

      public static FileAttribute<FileTime> creationTime(FileTime time)
      Produce a file attribute containing a creation timestamp.

      Note: this attribute is only supported when creating new archive entries and is not recognized by most FileSystem providers, which require the attribute to be set later.

      Parameters:
      time - the creation time (must not be null)
      Returns:
      the file attribute (not null)
      See Also:
    • creationTime

      public static FileAttribute<FileTime> creationTime(Instant time)
      Produce a file attribute containing a creation timestamp.

      Note: this attribute is only supported when creating new archive entries and is not recognized by most FileSystem providers, which require the attribute to be set later.

      Parameters:
      time - the creation time (must not be null)
      Returns:
      the file attribute (not null)
      See Also:
    • lastModifiedTime

      public static FileAttribute<FileTime> lastModifiedTime(FileTime time)
      Produce a file attribute containing a last-modified timestamp.

      Note: this attribute is only supported when creating new archive entries and is not recognized by most FileSystem providers, which require the attribute to be set later.

      Parameters:
      time - the creation time (must not be null)
      Returns:
      the file attribute (not null)
      See Also:
    • lastModifiedTime

      public static FileAttribute<FileTime> lastModifiedTime(Instant time)
      Produce a file attribute containing a last-modified timestamp.

      Note: this attribute is only supported when creating new archive entries and is not recognized by most FileSystem providers, which require the attribute to be set later.

      Parameters:
      time - the creation time (must not be null)
      Returns:
      the file attribute (not null)
      See Also:
    • lastAccessTime

      public static FileAttribute<FileTime> lastAccessTime(FileTime time)
      Produce a file attribute containing a last-access timestamp.

      Note: this attribute is only supported when creating new archive entries and is not recognized by most FileSystem providers, which require the attribute to be set later.

      Parameters:
      time - the creation time (must not be null)
      Returns:
      the file attribute (not null)
      See Also:
    • lastAccessTime

      public static FileAttribute<FileTime> lastAccessTime(Instant time)
      Produce a file attribute containing a last-access timestamp.

      Note: this attribute is only supported when creating new archive entries and is not recognized by most FileSystem providers, which require the attribute to be set later.

      Parameters:
      time - the creation time (must not be null)
      Returns:
      the file attribute (not null)
      See Also:
    • posixPermissions

      public static FileAttribute<Set<PosixFilePermission>> posixPermissions(Set<PosixFilePermission> perms)
      Produce a file attribute containing a POSIX file permission set. Unlike PosixFilePermissions.asFileAttribute(Set), this method uses compact sets which are cached and reused.
      Parameters:
      perms - the permissions (must not be null)
      Returns:
      the file attribute (not null)
    • posixPermissions

      public static FileAttribute<Set<PosixFilePermission>> posixPermissions(PosixFilePermission... perms)
      Produce a file attribute containing a POSIX file permission set. Unlike PosixFilePermissions.asFileAttribute(Set), this method uses compact sets which are cached and reused.
      Parameters:
      perms - the permissions (must not be null)
      Returns:
      the file attribute (not null)
    • posixPermissions

      public static FileAttribute<Set<PosixFilePermission>> posixPermissions(PosixFilePermission perm1)
      Produce a file attribute containing a POSIX file permission set. Unlike PosixFilePermissions.asFileAttribute(Set), this method uses compact sets which are cached and reused.
      Parameters:
      perm1 - the permission (must not be null)
      Returns:
      the file attribute (not null)
    • posixPermissions

      public static FileAttribute<Set<PosixFilePermission>> posixPermissions(PosixFilePermission perm1, PosixFilePermission perm2)
      Produce a file attribute containing a POSIX file permission set. Unlike PosixFilePermissions.asFileAttribute(Set), this method uses compact sets which are cached and reused.
      Parameters:
      perm1 - the first permission (must not be null)
      perm2 - the second permission (must not be null)
      Returns:
      the file attribute (not null)
    • posixPermissions

      public static FileAttribute<Set<PosixFilePermission>> posixPermissions(PosixFilePermission perm1, PosixFilePermission perm2, PosixFilePermission perm3)
      Produce a file attribute containing a POSIX file permission set. Unlike PosixFilePermissions.asFileAttribute(Set), this method uses compact sets which are cached and reused.
      Parameters:
      perm1 - the first permission (must not be null)
      perm2 - the second permission (must not be null)
      perm3 - the third permission (must not be null)
      Returns:
      the file attribute (not null)
    • posixPermissions

      public static FileAttribute<Set<PosixFilePermission>> posixPermissions(int mask)
      Produce a file attribute containing a POSIX file permission set. Unlike PosixFilePermissions.asFileAttribute(Set), this method uses compact sets which are cached and reused. Only the bottom 9 bits of the mask are recognized.
      Parameters:
      mask - the bit mask
      Returns:
      the file attribute (not null)