Package xrdio provides a File type that implements various interfaces from the io package.



This section is empty.


This section is empty.


This section is empty.


type File

type File struct {
	// contains filtered or unexported fields

File wraps a xrdfs.File and implements the following interfaces:

- io.Closer
- io.Reader
- io.Writer
- io.ReaderAt
- io.WriterAt
- io.Seeker

func Open

func Open(name string) (*File, error)

Open opens the name file, where name is the absolute location of that file (xrootd server address and path to the file on that server.)


f, err := xrdio.Open("root://")

func OpenFrom

func OpenFrom(fs xrdfs.FileSystem, name string) (*File, error)

OpenFrom opens the file name via the given filesystem handle. name is the absolute path of the wanted file on the server.


f, err := xrdio.OpenFrom(fs, "/some/path/to/file")

func (*File) Close

func (f *File) Close() error

Close implements io.Closer.

func (*File) Name

func (f *File) Name() string

Name returns the name of the file.

func (*File) Read

func (f *File) Read(data []byte) (int, error)

Read implements io.Reader.

func (*File) ReadAt

func (f *File) ReadAt(data []byte, offset int64) (int, error)

ReadAt implements io.ReaderAt.

func (*File) Seek

func (f *File) Seek(offset int64, whence int) (int64, error)

Seek implements io.Seeker

func (*File) Stat

func (f *File) Stat() (os.FileInfo, error)

func (*File) Write

func (f *File) Write(data []byte) (int, error)

Write implements io.Writer.

func (*File) WriteAt

func (f *File) WriteAt(data []byte, offset int64) (int, error)

WriteAt implements io.WriterAt.

type URL

type URL struct {
	Addr string // address (host [:port]) of the server
	User string // user name to use to log in
	Path string // path to the remote file or directory

URL stores an absolute reference to a XRootD path.

func Parse

func Parse(name string) (URL, error)

Parse parses name into an xrootd URL structure.

Source Files