Class ViewFs
- All Implemented Interfaces:
org.apache.hadoop.fs.PathCapabilities
- /user -> hdfs://nnContainingUserDir/user
- /project/foo -> hdfs://nnProject1/projects/foo
- /project/bar -> hdfs://nnProject2/projects/bar
- /tmp -> hdfs://nnTmp/privateTmpForUserXXX
To use viewfs one would typically set the default file system in the config (i.e. fs.defaultFS < = viewfs:///) along with the mount table config variables as described below.
** Config variables to specify the mount table entries **
The file system is initialized from the standard Hadoop config through
config variables.
See FsConstants for URI and Scheme constants;
See Constants for config var constants;
see ConfigUtil for convenient lib.
All the mount table config entries for view fs are prefixed by fs.viewfs.mounttable. For example the above example can be specified with the following config variables:
- fs.viewfs.mounttable.default.link./user= hdfs://nnContainingUserDir/user
- fs.viewfs.mounttable.default.link./project/foo= hdfs://nnProject1/projects/foo
- fs.viewfs.mounttable.default.link./project/bar= hdfs://nnProject2/projects/bar
- fs.viewfs.mounttable.default.link./tmp= hdfs://nnTmp/privateTmpForUserXXX
- viewfs://sanjayMountable/
**** Merge Mounts **** (NOTE: merge mounts are not implemented yet.)
One can also use "MergeMounts" to merge several directories (this is sometimes called union-mounts or junction-mounts in the literature. For example of the home directories are stored on say two file systems (because they do not fit on one) then one could specify a mount entry such as following merges two dirs:
- /user -> hdfs://nnUser1/user,hdfs://nnUser2/user
- fs.viewfs.mounttable.default.linkMerge./user= hdfs://nnUser1/user,hdfs://nnUser1/user
- fs.viewfs.mounttable.default.linkMergeSlash=hdfs://nn99/
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classorg.apache.hadoop.fs.viewfs.ViewFs.MountPoint -
Field Summary
Fields inherited from class org.apache.hadoop.fs.AbstractFileSystem
statistics -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidThe specification of this method matches that ofFileContext.access(Path, FsAction)except that an UnresolvedLinkException may be thrown if a symlink is encountered in the path.createInternal(Path f, EnumSet<CreateFlag> flag, FsPermission absolutePermission, int bufferSize, short replication, long blockSize, Progressable progress, org.apache.hadoop.fs.Options.ChecksumOpt checksumOpt, boolean createParent) The specification of this method matches that ofAbstractFileSystem.create(Path, EnumSet, Options.CreateOpts...)except that the opts have been declared explicitly.createSnapshot(Path path, String snapshotName) The specification of this method matches that ofFileContext.createSnapshot(Path, String).voidcreateSymlink(Path target, Path link, boolean createParent) The specification of this method matches that ofFileContext.createSymlink(Path, Path, boolean);booleanThe specification of this method matches that ofFileContext.delete(Path, boolean)except that Path f must be for this file system.voiddeleteSnapshot(Path path, String snapshotName) The specification of this method matches that ofFileContext.deleteSnapshot(Path, String).getAclStatus(Path path) Gets the ACLs of files and directories.getDelegationTokens(String renewer) Get one or more delegation tokens associated with the filesystem.getFileBlockLocations(Path f, long start, long len) The specification of this method matches that ofFileContext.getFileBlockLocations(Path, long, long)except that Path f must be for this file system.The specification of this method matches that ofFileContext.getFileChecksum(Path)except that Path f must be for this file system.The specification of this method matches that ofFileContext.getFileLinkStatus(Path)except that an UnresolvedLinkException may be thrown if a symlink is encountered in the path leading up to the final path component.The specification of this method matches that ofFileContext.getFileStatus(Path)except that an UnresolvedLinkException may be thrown if a symlink is encountered in the path.The specification of this method matches that ofFileContext.getFsStatus(Path).Return the current user's home directory in this file system.Partially resolves the path.org.apache.hadoop.fs.viewfs.ViewFs.MountPoint[]Deprecated.Return a set of server default configuration values based on path.getStoragePolicy(Path src) Retrieve the storage policy for a given file or directory.intThe default port of this file system.byte[]Get an xattr for a file or directory.Get all of the xattrs for a file or directory.Get all of the xattrs for a file or directory.booleanisValidName(String src) Returns true if the specified string is considered valid in the path part of a URI by this file system.org.apache.hadoop.fs.RemoteIterator<LocatedFileStatus>The specification of this method matches that ofFileContext.listLocatedStatus(Path)except that Path f must be for this file system.listStatus(Path f) The specification of this method matches that ofFileContext.Util.listStatus(Path)except that Path f must be for this file system.org.apache.hadoop.fs.RemoteIterator<FileStatus>The specification of this method matches that ofFileContext.listStatus(Path)except that Path f must be for this file system.listXAttrs(Path path) Get all of the xattr names for a file or directory.voidmkdir(Path dir, FsPermission permission, boolean createParent) The specification of this method matches that ofFileContext.mkdir(Path, FsPermission, boolean)except that the Path f must be fully qualified and the permission is absolute (i.e.voidmodifyAclEntries(Path path, List<AclEntry> aclSpec) Modifies ACL entries of files and directories.The specification of this method matches that ofFileContext.open(Path, int)except that Path f must be for this file system.voidRemoves all but the base ACL entries of files and directories.voidremoveAclEntries(Path path, List<AclEntry> aclSpec) Removes ACL entries from files and directories.voidremoveDefaultAcl(Path path) Removes all default ACL entries from files and directories.voidremoveXAttr(Path path, String name) Remove an xattr of a file or directory.voidrenameInternal(Path src, Path dst) The specification of this method matches that ofFileContext.rename(Path, Path, Options.Rename...)except that Path f must be for this file system and NO OVERWRITE is performed.voidrenameInternal(Path src, Path dst, boolean overwrite) The specification of this method matches that ofFileContext.rename(Path, Path, Options.Rename...)except that Path f must be for this file system.voidrenameSnapshot(Path path, String snapshotOldName, String snapshotNewName) The specification of this method matches that ofFileContext.renameSnapshot(Path, String, String).resolvePath(Path f) Return the fully-qualified path of path f resolving the path through any internal symlinks or mount pointvoidsatisfyStoragePolicy(Path path) Set the source path to satisfy storage policy.voidFully replaces ACL of files and directories, discarding all existing entries.voidThe specification of this method matches that ofFileContext.setOwner(Path, String, String)except that Path f must be for this file system.voidsetPermission(Path f, FsPermission permission) The specification of this method matches that ofFileContext.setPermission(Path, FsPermission)except that Path f must be for this file system.booleansetReplication(Path f, short replication) The specification of this method matches that ofFileContext.setReplication(Path, short)except that Path f must be for this file system.voidsetStoragePolicy(Path path, String policyName) Set the storage policy for a given file or directory.voidThe specification of this method matches that ofFileContext.setTimes(Path, long, long)except that Path f must be for this file system.voidsetVerifyChecksum(boolean verifyChecksum) The specification of this method matches that ofFileContext.setVerifyChecksum(boolean, Path)except that Path f must be for this file system.voidsetXAttr(Path path, String name, byte[] value, EnumSet<XAttrSetFlag> flag) Set an xattr of a file or directory.booleanReturns true if the file system supports symlinks, false otherwise.booleanThe specification of this method matches that ofFileContext.truncate(Path, long)except that Path f must be for this file system.voidunsetStoragePolicy(Path src) Unset the storage policy set for a given file or directory.Methods inherited from class org.apache.hadoop.fs.AbstractFileSystem
checkPath, checkScheme, clearStatistics, create, createFileSystem, createMultipartUploader, equals, get, getAllStatistics, getAllStoragePolicies, getCanonicalServiceName, getEnclosingRoot, getFsStatus, getInitialWorkingDirectory, getStatistics, getStatistics, getUri, getUriPath, hashCode, hasPathCapability, listCorruptFileBlocks, makeQualified, methodNotSupported, msync, open, openFileWithOptions, printStatistics, rename, setXAttr
-
Constructor Details
-
ViewFs
- Throws:
IOExceptionURISyntaxException
-
-
Method Details
-
getServerDefaults
Deprecated.Description copied from class:AbstractFileSystemReturn a set of server default configuration values.- Specified by:
getServerDefaultsin classAbstractFileSystem- Returns:
- server default configuration values
- Throws:
IOException- an I/O error occurred
-
getServerDefaults
Description copied from class:AbstractFileSystemReturn a set of server default configuration values based on path.- Overrides:
getServerDefaultsin classAbstractFileSystem- Parameters:
f- path to fetch server defaults- Returns:
- server default configuration values for path
- Throws:
IOException- an I/O error occurred
-
getUriDefaultPort
public int getUriDefaultPort()Description copied from class:AbstractFileSystemThe default port of this file system.- Specified by:
getUriDefaultPortin classAbstractFileSystem- Returns:
- default port of this file system's Uri scheme A uri with a port of -1 => default port;
-
getHomeDirectory
Description copied from class:AbstractFileSystemReturn the current user's home directory in this file system. The default implementation returns "/user/$USER/".- Overrides:
getHomeDirectoryin classAbstractFileSystem- Returns:
- current user's home directory.
-
resolvePath
public Path resolvePath(Path f) throws FileNotFoundException, AccessControlException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemReturn the fully-qualified path of path f resolving the path through any internal symlinks or mount point- Overrides:
resolvePathin classAbstractFileSystem- Parameters:
f- path to be resolved- Returns:
- fully qualified path
- Throws:
FileNotFoundException- when file not find throw.AccessControlException- when accees control error throw.org.apache.hadoop.fs.UnresolvedLinkException- if symbolic link on path cannot be resolved internallyIOException- raised on errors performing I/O.
-
createInternal
public FSDataOutputStream createInternal(Path f, EnumSet<CreateFlag> flag, FsPermission absolutePermission, int bufferSize, short replication, long blockSize, Progressable progress, org.apache.hadoop.fs.Options.ChecksumOpt checksumOpt, boolean createParent) throws AccessControlException, FileAlreadyExistsException, FileNotFoundException, ParentNotDirectoryException, UnsupportedFileSystemException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofAbstractFileSystem.create(Path, EnumSet, Options.CreateOpts...)except that the opts have been declared explicitly.- Specified by:
createInternalin classAbstractFileSystem- Parameters:
f- the path.flag- create flag.absolutePermission- absolute permission.bufferSize- buffer size.replication- replications.blockSize- block size.progress- progress.checksumOpt- check sum opt.createParent- create parent.- Returns:
- output stream.
- Throws:
AccessControlException- access control exception.FileAlreadyExistsException- file already exists exception.FileNotFoundException- file not found exception.ParentNotDirectoryException- parent not directory exception.UnsupportedFileSystemException- unsupported filesystem exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
delete
public boolean delete(Path f, boolean recursive) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.delete(Path, boolean)except that Path f must be for this file system.- Specified by:
deletein classAbstractFileSystem- Parameters:
f- the path.recursive- recursive flag.- Returns:
- if successfully deleted success true, not false.
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
getFileBlockLocations
public BlockLocation[] getFileBlockLocations(Path f, long start, long len) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.getFileBlockLocations(Path, long, long)except that Path f must be for this file system.- Specified by:
getFileBlockLocationsin classAbstractFileSystem- Parameters:
f- the path.start- start.len- length.- Returns:
- BlockLocation Array.
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
getFileChecksum
public FileChecksum getFileChecksum(Path f) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.getFileChecksum(Path)except that Path f must be for this file system.- Specified by:
getFileChecksumin classAbstractFileSystem- Parameters:
f- the path.- Returns:
- File Check sum.
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
getFileStatus
public FileStatus getFileStatus(Path f) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException The specification of this method matches that ofFileContext.getFileStatus(Path)except that an UnresolvedLinkException may be thrown if a symlink is encountered in the path. If the given path is a symlink(mount link), the path will be resolved to a target path and it will get the resolved path's FileStatus object. It will not be represented as a symlink and isDirectory API returns true if the resolved path is a directory, false otherwise.- Specified by:
getFileStatusin classAbstractFileSystem- Parameters:
f- the path.- Returns:
- File Status
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
access
public void access(Path path, FsAction mode) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.access(Path, FsAction)except that an UnresolvedLinkException may be thrown if a symlink is encountered in the path.- Parameters:
path- the path.mode- fsaction mode.- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
getFileLinkStatus
public FileStatus getFileLinkStatus(Path f) throws AccessControlException, FileNotFoundException, UnsupportedFileSystemException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.getFileLinkStatus(Path)except that an UnresolvedLinkException may be thrown if a symlink is encountered in the path leading up to the final path component. If the file system does not support symlinks then the behavior is equivalent toAbstractFileSystem.getFileStatus(Path).- Overrides:
getFileLinkStatusin classAbstractFileSystem- Parameters:
f- the path.- Returns:
- file status.
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.UnsupportedFileSystemException- UnSupported File System Exception.IOException- raised on errors performing I/O.
-
getFsStatus
Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.getFsStatus(Path).- Specified by:
getFsStatusin classAbstractFileSystem- Returns:
- Fs Status.
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.IOException- raised on errors performing I/O.
-
listStatusIterator
public org.apache.hadoop.fs.RemoteIterator<FileStatus> listStatusIterator(Path f) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.listStatus(Path)except that Path f must be for this file system.- Overrides:
listStatusIteratorin classAbstractFileSystem- Parameters:
f- path.- Returns:
- FileStatus Iterator.
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
listLocatedStatus
public org.apache.hadoop.fs.RemoteIterator<LocatedFileStatus> listLocatedStatus(Path f) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.listLocatedStatus(Path)except that Path f must be for this file system. In HDFS implementation, the BlockLocation of returned LocatedFileStatus will have different formats for replicated and erasure coded file. Please refer toFileSystem.getFileBlockLocations(FileStatus, long, long)for more details.- Overrides:
listLocatedStatusin classAbstractFileSystem- Parameters:
f- the path.- Returns:
- FileStatus Iterator.
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
listStatus
public FileStatus[] listStatus(Path f) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException The specification of this method matches that ofFileContext.Util.listStatus(Path)except that Path f must be for this file system. Note: listStatus considers listing from fallbackLink if available. If the same directory path is present in configured mount path as well as in fallback fs, then only the fallback path will be listed in the returned result except for link. If any of the the immediate children of the given path f is a symlink(mount link), the returned FileStatus object of that children would be represented as a symlink. It will not be resolved to the target path and will not get the target path FileStatus object. The target path will be available via getSymlink on that children's FileStatus object. Since it represents as symlink, isDirectory on that children's FileStatus will return false. This behavior can be changed by setting an advanced configuration fs.viewfs.mount.links.as.symlinks to false. In this case, mount points will be represented as non-symlinks and all the file/directory attributes like permissions, isDirectory etc will be assigned from it's resolved target directory/file. If you want to get the FileStatus of target path for that children, you may want to use GetFileStatus API with that children's symlink path. Please seegetFileStatus(Path f)Note: In ViewFs, by default the mount links are represented as symlinks.- Specified by:
listStatusin classAbstractFileSystem- Parameters:
f- the path.- Returns:
- FileStatus Iterator.
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
mkdir
public void mkdir(Path dir, FsPermission permission, boolean createParent) throws AccessControlException, FileAlreadyExistsException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.mkdir(Path, FsPermission, boolean)except that the Path f must be fully qualified and the permission is absolute (i.e. umask has been applied).- Specified by:
mkdirin classAbstractFileSystem- Parameters:
dir- directory.permission- permission.createParent- create parent flag.- Throws:
AccessControlException- access control exception.FileAlreadyExistsException- file already exists exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
open
public FSDataInputStream open(Path f, int bufferSize) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.open(Path, int)except that Path f must be for this file system.- Specified by:
openin classAbstractFileSystem- Parameters:
f- the path.bufferSize- buffer size.- Returns:
- if successfully open success true, not false.
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
truncate
public boolean truncate(Path f, long newLength) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.truncate(Path, long)except that Path f must be for this file system.- Overrides:
truncatein classAbstractFileSystem- Parameters:
f- the path.newLength- new length.- Returns:
- if successfully truncate success true, not false.
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
renameInternal
public void renameInternal(Path src, Path dst, boolean overwrite) throws IOException, org.apache.hadoop.fs.UnresolvedLinkException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.rename(Path, Path, Options.Rename...)except that Path f must be for this file system.- Overrides:
renameInternalin classAbstractFileSystem- Parameters:
src- src.dst- dst.overwrite- overwrite flag.- Throws:
AccessControlException- access control exception.FileAlreadyExistsException- file already exists exception.FileNotFoundException- file not found exception.ParentNotDirectoryException- parent not directory exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
renameInternal
public void renameInternal(Path src, Path dst) throws AccessControlException, FileAlreadyExistsException, FileNotFoundException, ParentNotDirectoryException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.rename(Path, Path, Options.Rename...)except that Path f must be for this file system and NO OVERWRITE is performed. File systems that do not have a built in overwrite need implement only this method and can take advantage of the default impl of the otherAbstractFileSystem.renameInternal(Path, Path, boolean)- Specified by:
renameInternalin classAbstractFileSystem- Parameters:
src- src.dst- dst.- Throws:
AccessControlException- access control exception.FileAlreadyExistsException- file already exists exception.FileNotFoundException- file not found exception.ParentNotDirectoryException- parent not directory exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
supportsSymlinks
public boolean supportsSymlinks()Description copied from class:AbstractFileSystemReturns true if the file system supports symlinks, false otherwise.- Overrides:
supportsSymlinksin classAbstractFileSystem- Returns:
- true if filesystem supports symlinks
-
createSymlink
public void createSymlink(Path target, Path link, boolean createParent) throws IOException, org.apache.hadoop.fs.UnresolvedLinkException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.createSymlink(Path, Path, boolean);- Overrides:
createSymlinkin classAbstractFileSystem- Parameters:
target- target.link- link.createParent- create parent.- Throws:
IOException- raised on errors performing I/O.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.
-
getLinkTarget
Description copied from class:AbstractFileSystemPartially resolves the path. This is used during symlink resolution inFSLinkResolver, and differs from the similarly named methodFileContext.getLinkTarget(Path).- Overrides:
getLinkTargetin classAbstractFileSystem- Parameters:
f- the path.- Returns:
- target path.
- Throws:
IOException- subclass implementations may throw IOException
-
setOwner
public void setOwner(Path f, String username, String groupname) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.setOwner(Path, String, String)except that Path f must be for this file system.- Specified by:
setOwnerin classAbstractFileSystem- Parameters:
f- the path.username- username.groupname- groupname.- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
setPermission
public void setPermission(Path f, FsPermission permission) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.setPermission(Path, FsPermission)except that Path f must be for this file system.- Specified by:
setPermissionin classAbstractFileSystem- Parameters:
f- the path.permission- permission.- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
setReplication
public boolean setReplication(Path f, short replication) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.setReplication(Path, short)except that Path f must be for this file system.- Specified by:
setReplicationin classAbstractFileSystem- Parameters:
f- the path.replication- replication.- Returns:
- if successfully set replication success true, not false.
- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
setTimes
public void setTimes(Path f, long mtime, long atime) throws AccessControlException, FileNotFoundException, org.apache.hadoop.fs.UnresolvedLinkException, IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.setTimes(Path, long, long)except that Path f must be for this file system.- Specified by:
setTimesin classAbstractFileSystem- Parameters:
f- the path.mtime- modify time.atime- access time.- Throws:
AccessControlException- access control exception.FileNotFoundException- file not found exception.org.apache.hadoop.fs.UnresolvedLinkException- unresolved link exception.IOException- raised on errors performing I/O.
-
setVerifyChecksum
Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.setVerifyChecksum(boolean, Path)except that Path f must be for this file system.- Specified by:
setVerifyChecksumin classAbstractFileSystem- Parameters:
verifyChecksum- verify check sum flag.- Throws:
AccessControlException- access control exception.IOException- raised on errors performing I/O.
-
getMountPoints
public org.apache.hadoop.fs.viewfs.ViewFs.MountPoint[] getMountPoints() -
getDelegationTokens
Description copied from class:AbstractFileSystemGet one or more delegation tokens associated with the filesystem. Normally a file system returns a single delegation token. A file system that manages multiple file systems underneath, could return set of delegation tokens for all the file systems it manages- Parameters:
renewer- the account name that is allowed to renew the token.- Returns:
- List of delegation tokens. If delegation tokens not supported then return a list of size zero.
- Throws:
IOException- raised on errors performing I/O.
-
isValidName
Description copied from class:AbstractFileSystemReturns true if the specified string is considered valid in the path part of a URI by this file system. The default implementation enforces the rules of HDFS, but subclasses may override this method to implement specific validation rules for specific file systems.- Overrides:
isValidNamein classAbstractFileSystem- Parameters:
src- String source filename to check, path part of the URI- Returns:
- boolean true if the specified string is considered valid
-
modifyAclEntries
Description copied from class:AbstractFileSystemModifies ACL entries of files and directories. This method can add new ACL entries or modify the permissions on existing ACL entries. All existing ACL entries that are not specified in this call are retained without changes. (Modifications are merged into the current ACL.)- Overrides:
modifyAclEntriesin classAbstractFileSystem- Parameters:
path- Path to modifyaclSpec- List<AclEntry> describing modifications- Throws:
IOException- if an ACL could not be modified
-
removeAclEntries
Description copied from class:AbstractFileSystemRemoves ACL entries from files and directories. Other ACL entries are retained.- Overrides:
removeAclEntriesin classAbstractFileSystem- Parameters:
path- Path to modifyaclSpec- List<AclEntry> describing entries to remove- Throws:
IOException- if an ACL could not be modified
-
removeDefaultAcl
Description copied from class:AbstractFileSystemRemoves all default ACL entries from files and directories.- Overrides:
removeDefaultAclin classAbstractFileSystem- Parameters:
path- Path to modify- Throws:
IOException- if an ACL could not be modified
-
removeAcl
Description copied from class:AbstractFileSystemRemoves all but the base ACL entries of files and directories. The entries for user, group, and others are retained for compatibility with permission bits.- Overrides:
removeAclin classAbstractFileSystem- Parameters:
path- Path to modify- Throws:
IOException- if an ACL could not be removed
-
setAcl
Description copied from class:AbstractFileSystemFully replaces ACL of files and directories, discarding all existing entries.- Overrides:
setAclin classAbstractFileSystem- Parameters:
path- Path to modifyaclSpec- List<AclEntry> describing modifications, must include entries for user, group, and others for compatibility with permission bits.- Throws:
IOException- if an ACL could not be modified
-
getAclStatus
Description copied from class:AbstractFileSystemGets the ACLs of files and directories.- Overrides:
getAclStatusin classAbstractFileSystem- Parameters:
path- Path to get- Returns:
- RemoteIterator<AclStatus> which returns each AclStatus
- Throws:
IOException- if an ACL could not be read
-
setXAttr
public void setXAttr(Path path, String name, byte[] value, EnumSet<XAttrSetFlag> flag) throws IOException Description copied from class:AbstractFileSystemSet an xattr of a file or directory. The name must be prefixed with the namespace followed by ".". For example, "user.attr".Refer to the HDFS extended attributes user documentation for details.
- Overrides:
setXAttrin classAbstractFileSystem- Parameters:
path- Path to modifyname- xattr name.value- xattr value.flag- xattr set flag- Throws:
IOException- raised on errors performing I/O.
-
getXAttr
Description copied from class:AbstractFileSystemGet an xattr for a file or directory. The name must be prefixed with the namespace followed by ".". For example, "user.attr".Refer to the HDFS extended attributes user documentation for details.
- Overrides:
getXAttrin classAbstractFileSystem- Parameters:
path- Path to get extended attributename- xattr name.- Returns:
- byte[] xattr value.
- Throws:
IOException- raised on errors performing I/O.
-
getXAttrs
Description copied from class:AbstractFileSystemGet all of the xattrs for a file or directory. Only those xattrs for which the logged-in user has permissions to view are returned.Refer to the HDFS extended attributes user documentation for details.
- Overrides:
getXAttrsin classAbstractFileSystem- Parameters:
path- Path to get extended attributes- Returns:
- Map<String, byte[]> describing the XAttrs of the file or directory
- Throws:
IOException- raised on errors performing I/O.
-
getXAttrs
Description copied from class:AbstractFileSystemGet all of the xattrs for a file or directory. Only those xattrs for which the logged-in user has permissions to view are returned.Refer to the HDFS extended attributes user documentation for details.
- Overrides:
getXAttrsin classAbstractFileSystem- Parameters:
path- Path to get extended attributesnames- XAttr names.- Returns:
- Map<String, byte[]> describing the XAttrs of the file or directory
- Throws:
IOException- raised on errors performing I/O.
-
listXAttrs
Description copied from class:AbstractFileSystemGet all of the xattr names for a file or directory. Only the xattr names for which the logged-in user has permissions to view are returned.Refer to the HDFS extended attributes user documentation for details.
- Overrides:
listXAttrsin classAbstractFileSystem- Parameters:
path- Path to get extended attributes- Returns:
- Map<String, byte[]> describing the XAttrs of the file or directory
- Throws:
IOException- raised on errors performing I/O.
-
removeXAttr
Description copied from class:AbstractFileSystemRemove an xattr of a file or directory. The name must be prefixed with the namespace followed by ".". For example, "user.attr".Refer to the HDFS extended attributes user documentation for details.
- Overrides:
removeXAttrin classAbstractFileSystem- Parameters:
path- Path to remove extended attributename- xattr name- Throws:
IOException- raised on errors performing I/O.
-
createSnapshot
Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.createSnapshot(Path, String).- Overrides:
createSnapshotin classAbstractFileSystem- Parameters:
path- the path.snapshotName- snapshot name.- Returns:
- path.
- Throws:
IOException- raised on errors performing I/O.
-
renameSnapshot
public void renameSnapshot(Path path, String snapshotOldName, String snapshotNewName) throws IOException Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.renameSnapshot(Path, String, String).- Overrides:
renameSnapshotin classAbstractFileSystem- Parameters:
path- the path.snapshotOldName- snapshot old name.snapshotNewName- snapshot new name.- Throws:
IOException- raised on errors performing I/O.
-
deleteSnapshot
Description copied from class:AbstractFileSystemThe specification of this method matches that ofFileContext.deleteSnapshot(Path, String).- Overrides:
deleteSnapshotin classAbstractFileSystem- Parameters:
path- snapshot dir.snapshotName- snapshot name.- Throws:
IOException- raised on errors performing I/O.
-
satisfyStoragePolicy
Description copied from class:AbstractFileSystemSet the source path to satisfy storage policy.- Overrides:
satisfyStoragePolicyin classAbstractFileSystem- Parameters:
path- The source path referring to either a directory or a file.- Throws:
IOException- raised on errors performing I/O.
-
setStoragePolicy
Description copied from class:AbstractFileSystemSet the storage policy for a given file or directory.- Overrides:
setStoragePolicyin classAbstractFileSystem- Parameters:
path- file or directory path.policyName- the name of the target storage policy. The list of supported Storage policies can be retrieved viaAbstractFileSystem.getAllStoragePolicies().- Throws:
IOException- raised on errors performing I/O.
-
unsetStoragePolicy
Description copied from class:AbstractFileSystemUnset the storage policy set for a given file or directory.- Overrides:
unsetStoragePolicyin classAbstractFileSystem- Parameters:
src- file or directory path.- Throws:
IOException- raised on errors performing I/O.
-
getStoragePolicy
Retrieve the storage policy for a given file or directory.- Overrides:
getStoragePolicyin classAbstractFileSystem- Parameters:
src- file or directory path.- Returns:
- storage policy for give file.
- Throws:
IOException- raised on errors performing I/O.
-