1. XRootD.client.FileSystem: Filesystem-based operations¶
1.1. Class Reference¶
-
class
XRootD.client.FileSystem(url)[source]¶ Interact with an
xrootdserver to perform filesystem-based operations such as copying files, creating directories, changing file permissions, listing directories, etc.- Parameters
url (string) – The URL of the server to connect with
1.1.1. Attributes¶
-
FileSystem.url¶ The server URL object, instance of
XRootD.client.URL
1.1.2. Methods¶
-
FileSystem.copy(source, target, force=False)[source]¶ Copy a file.
Note
This method is less configurable than using
XRootD.client.CopyProcess- it is designed to be as simple as possible by using sensible defaults for the underlying copy job. If you need more configurability, or want to make multiple copy jobs run at once in parallel, useXRootD.client.CopyProcess.- Parameters
source (string) – Source file path
target (string) – Destination file path
force (boolean) – overwrite target if it exists
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject and None
-
FileSystem.locate(path, flags, timeout=0, callback=None)[source]¶ Locate a file.
- Parameters
path (string) – path to the file to be located
flags – An ORed combination of
XRootD.client.flags.OpenFlags
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject andXRootD.client.responses.LocationInfoobject
-
FileSystem.deeplocate(path, flags, timeout=0, callback=None)[source]¶ Locate a file, recursively locate all disk servers.
- Parameters
path (string) – path to the file to be located
flags – An ORed combination of
XRootD.client.flags.OpenFlags
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject andXRootD.client.responses.LocationInfoobject
-
FileSystem.mv(source, dest, timeout=0, callback=None)[source]¶ Move a directory or a file.
- Parameters
source (string) – the file or directory to be moved
dest (string) – the new name
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject and None
-
FileSystem.query(querycode, arg, timeout=0, callback=None)[source]¶ Obtain server information.
- Parameters
querycode – the query code as specified in
XRootD.client.flags.QueryCodearg (string) – query argument
- Returns
the query response or None if there was an error
- Return type
string
Note
For more information about XRootD query codes and arguments, see the relevant section in the protocol reference.
-
FileSystem.truncate(path, size, timeout=0, callback=None)[source]¶ Truncate a file.
- Parameters
path (string) – path to the file to be truncated
size (integer) – file size
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject and None
-
FileSystem.rm(path, timeout=0, callback=None)[source]¶ Remove a file.
- Parameters
path (string) – path to the file to be removed
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject and None
-
FileSystem.mkdir(path, flags=0, mode=0, timeout=0, callback=None)[source]¶ Create a directory.
- Parameters
path (string) – path to the directory to create
flags – An ORed combination of
XRootD.client.flags.MkDirFlagswhere the default is MkDirFlags.NONEmode – the initial file access mode, an ORed combination of
XRootD.client.flags.AccessModewhere the default is rwxr-x—
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject and None
-
FileSystem.rmdir(path, timeout=0, callback=None)[source]¶ Remove a directory.
- Parameters
path (string) – path to the directory to remove
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject and None
-
FileSystem.chmod(path, mode, timeout=0, callback=None)[source]¶ Change access mode on a directory or a file.
- Parameters
path (string) – path to the file/directory to change access mode
mode – An OR`ed combination of
XRootD.client.flags.AccessMode
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject and None
-
FileSystem.ping(timeout=0, callback=None)[source]¶ Check if the server is alive.
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject and None
-
FileSystem.stat(path, timeout=0, callback=None)[source]¶ Obtain status information for a path.
- Parameters
path (string) – path to the file/directory to stat
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject andXRootD.client.responses.StatInfoobject
-
FileSystem.statvfs(path, timeout=0, callback=None)[source]¶ Obtain status information for a Virtual File System.
- Parameters
path (string) – path to the file/directory to stat
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject andXRootD.client.responses.StatInfoVFSobject
-
FileSystem.protocol(timeout=0, callback=None)[source]¶ Obtain server protocol information.
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject andXRootD.client.responses.ProtocolInfoobject
-
FileSystem.dirlist(path, flags=0, timeout=0, callback=None)[source]¶ List entries of a directory.
- Parameters
path (string) – path to the directory to list
flags – An ORed combination of
XRootD.client.flags.DirListFlagswhere the default is DirListFlags.NONE
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject andXRootD.client.responses.DirectoryListobject
Warning
Currently, passing DirListFlags.STAT with an asynchronous call to
XRootD.client.FileSystem.dirlist()does not work, due to an xrootd client limitation. So you’ll getNoneinstead of theStatInfoinstance. See the GitHub issue for more details.
-
FileSystem.sendinfo(info, timeout=0, callback=None)[source]¶ Send info to the server (up to 1024 characters).
- Parameters
info (string) – the info string to be sent
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject and None
-
FileSystem.prepare(files, flags, priority=0, timeout=0, callback=None)[source]¶ Prepare one or more files for access.
- Parameters
files (list) – list of files to be prepared
flags – An ORed combination of
XRootD.client.flags.PrepareFlagspriority (integer) – priority of the request 0 (lowest) - 3 (highest)
- Returns
tuple containing
XRootD.client.responses.XRootDStatusobject and None