xrootd
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
XrdCl::EcHandler Class Reference

#include <XrdClEcHandler.hh>

Inheritance diagram for XrdCl::EcHandler:
Inheritance graph
[legend]
Collaboration diagram for XrdCl::EcHandler:
Collaboration graph
[legend]

Public Member Functions

 EcHandler (const URL &redir, XrdEc::ObjCfg *objcfg, std::unique_ptr< CheckSumHelper > cksHelper)
 
virtual ~EcHandler ()
 
XRootDStatus Open (uint16_t flags, ResponseHandler *handler, uint16_t timeout)
 
XRootDStatus Open (const std::string &url, OpenFlags::Flags flags, Access::Mode mode, ResponseHandler *handler, uint16_t timeout)
 
XRootDStatus Close (ResponseHandler *handler, uint16_t timeout)
 
XRootDStatus Stat (bool force, ResponseHandler *handler, uint16_t timeout)
 
XRootDStatus Read (uint64_t offset, uint32_t size, void *buffer, ResponseHandler *handler, uint16_t timeout)
 
XRootDStatus PgRead (uint64_t offset, uint32_t size, void *buffer, ResponseHandler *handler, uint16_t timeout)
 
XRootDStatus Write (uint64_t offset, uint32_t size, const void *buffer, ResponseHandler *handler, uint16_t timeout)
 
XRootDStatus PgWrite (uint64_t offset, uint32_t size, const void *buffer, std::vector< uint32_t > &cksums, ResponseHandler *handler, uint16_t timeout=0)
 
bool IsOpen () const
 
- Public Member Functions inherited from XrdCl::FilePlugIn
virtual ~FilePlugIn ()
 Destructor.
 
virtual XRootDStatus Read (uint64_t offset, uint32_t size, Optional< uint64_t > fdoff, int fd, ResponseHandler *handler, uint16_t timeout=0)
 
virtual XRootDStatus Write (uint64_t offset, Buffer &&buffer, ResponseHandler *handler, uint16_t timeout=0)
 
virtual XRootDStatus Write (uint64_t offset, uint32_t size, Optional< uint64_t > fdoff, int fd, ResponseHandler *handler, uint16_t timeout=0)
 
virtual XRootDStatus Sync (ResponseHandler *handler, uint16_t timeout)
 
virtual XRootDStatus Truncate (uint64_t size, ResponseHandler *handler, uint16_t timeout)
 
virtual XRootDStatus VectorRead (const ChunkList &chunks, void *buffer, ResponseHandler *handler, uint16_t timeout)
 
virtual XRootDStatus VectorWrite (const ChunkList &chunks, ResponseHandler *handler, uint16_t timeout=0)
 
virtual XRootDStatus WriteV (uint64_t offset, const struct iovec *iov, int iovcnt, ResponseHandler *handler, uint16_t timeout=0)
 
virtual XRootDStatus Fcntl (const Buffer &arg, ResponseHandler *handler, uint16_t timeout)
 
virtual XRootDStatus Visa (ResponseHandler *handler, uint16_t timeout)
 
virtual bool SetProperty (const std::string &name, const std::string &value)
 
virtual bool GetProperty (const std::string &name, std::string &value) const
 

Private Member Functions

XRootDStatus LoadPlacement ()
 
XRootDStatus LoadPlacement (const std::string &path)
 

Static Private Member Functions

static AnyObjectStatRsp (uint64_t size)
 
static void Schedule (ResponseHandler *handler, AnyObject *rsp)
 

Private Attributes

URL redir
 
FileSystem fs
 
std::unique_ptr< XrdEc::ObjCfgobjcfg
 
std::unique_ptr< XrdEc::StrmWriterwriter
 
std::unique_ptr< XrdEc::Readerreader
 
uint64_t curroff
 
std::unique_ptr< CheckSumHelpercksHelper
 
std::unique_ptr< StatInfostatcache
 

Constructor & Destructor Documentation

◆ EcHandler()

XrdCl::EcHandler::EcHandler ( const URL redir,
XrdEc::ObjCfg objcfg,
std::unique_ptr< CheckSumHelper cksHelper 
)
inline

◆ ~EcHandler()

virtual XrdCl::EcHandler::~EcHandler ( )
inlinevirtual

Member Function Documentation

◆ Close()

XRootDStatus XrdCl::EcHandler::Close ( ResponseHandler handler,
uint16_t  timeout 
)
inlinevirtual

◆ IsOpen()

bool XrdCl::EcHandler::IsOpen ( ) const
inlinevirtual
See also
XrdCl::File::IsOpen

Reimplemented from XrdCl::FilePlugIn.

◆ LoadPlacement() [1/2]

XRootDStatus XrdCl::EcHandler::LoadPlacement ( )
inlineprivate

◆ LoadPlacement() [2/2]

XRootDStatus XrdCl::EcHandler::LoadPlacement ( const std::string &  path)
inlineprivate

◆ Open() [1/2]

XRootDStatus XrdCl::EcHandler::Open ( const std::string &  url,
OpenFlags::Flags  flags,
Access::Mode  mode,
ResponseHandler handler,
uint16_t  timeout 
)
inlinevirtual
See also
XrdCl::File::Open

Reimplemented from XrdCl::FilePlugIn.

References Open().

◆ Open() [2/2]

XRootDStatus XrdCl::EcHandler::Open ( uint16_t  flags,
ResponseHandler handler,
uint16_t  timeout 
)
inline

◆ PgRead()

XRootDStatus XrdCl::EcHandler::PgRead ( uint64_t  offset,
uint32_t  size,
void *  buffer,
ResponseHandler handler,
uint16_t  timeout 
)
inlinevirtual
See also
XrdCl::File::PgRead - async

Reimplemented from XrdCl::FilePlugIn.

References XrdCl::Read().

◆ PgWrite()

XRootDStatus XrdCl::EcHandler::PgWrite ( uint64_t  offset,
uint32_t  size,
const void *  buffer,
std::vector< uint32_t > &  cksums,
ResponseHandler handler,
uint16_t  timeout = 0 
)
inlinevirtual

◆ Read()

XRootDStatus XrdCl::EcHandler::Read ( uint64_t  offset,
uint32_t  size,
void *  buffer,
ResponseHandler handler,
uint16_t  timeout 
)
inlinevirtual
See also
XrdCl::File::Read

Reimplemented from XrdCl::FilePlugIn.

References XrdCl::errInternal, and XrdCl::stError.

◆ Schedule()

static void XrdCl::EcHandler::Schedule ( ResponseHandler handler,
AnyObject rsp 
)
inlinestaticprivate

◆ Stat()

XRootDStatus XrdCl::EcHandler::Stat ( bool  force,
ResponseHandler handler,
uint16_t  timeout 
)
inlinevirtual
See also
XrdCl::File::Stat

Reimplemented from XrdCl::FilePlugIn.

References XrdCl::errInvalidOp, and XrdCl::stError.

◆ StatRsp()

static AnyObject * XrdCl::EcHandler::StatRsp ( uint64_t  size)
inlinestaticprivate

◆ Write()

XRootDStatus XrdCl::EcHandler::Write ( uint64_t  offset,
uint32_t  size,
const void *  buffer,
ResponseHandler handler,
uint16_t  timeout 
)
inlinevirtual

Member Data Documentation

◆ cksHelper

std::unique_ptr<CheckSumHelper> XrdCl::EcHandler::cksHelper
private

Referenced by Close().

◆ curroff

uint64_t XrdCl::EcHandler::curroff
private

◆ fs

FileSystem XrdCl::EcHandler::fs
private

Referenced by Close().

◆ objcfg

std::unique_ptr<XrdEc::ObjCfg> XrdCl::EcHandler::objcfg
private

Referenced by Open().

◆ reader

std::unique_ptr<XrdEc::Reader> XrdCl::EcHandler::reader
private

Referenced by Open().

◆ redir

URL XrdCl::EcHandler::redir
private

Referenced by Open().

◆ statcache

std::unique_ptr<StatInfo> XrdCl::EcHandler::statcache
private

◆ writer

std::unique_ptr<XrdEc::StrmWriter> XrdCl::EcHandler::writer
private

Referenced by Close(), and Open().


The documentation for this class was generated from the following file: