xrootd
|
#include <XrdClEcHandler.hh>
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 |
![]() | |
virtual | ~FilePlugIn () |
Destructor. More... | |
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 AnyObject * | StatRsp (uint64_t size) |
static void | Schedule (ResponseHandler *handler, AnyObject *rsp) |
Private Attributes | |
URL | redir |
FileSystem | fs |
std::unique_ptr< XrdEc::ObjCfg > | objcfg |
std::unique_ptr< XrdEc::StrmWriter > | writer |
std::unique_ptr< XrdEc::Reader > | reader |
uint64_t | curroff |
std::unique_ptr< CheckSumHelper > | cksHelper |
std::unique_ptr< StatInfo > | statcache |
|
inline |
References XrdEc::Config::enable_plugins, and XrdEc::Config::Instance().
|
inlinevirtual |
|
inlinevirtual |
Reimplemented from XrdCl::FilePlugIn.
References cksHelper, XrdCl::Buffer::FromString(), fs, XrdCl::ResponseHandler::HandleResponse(), XrdCl::Status::IsOK(), XrdCl::QueryCode::OpaqueFile, XrdCl::FileSystem::Query(), XrdCl::ResponseHandler::Wrap(), and writer.
|
inlinevirtual |
Reimplemented from XrdCl::FilePlugIn.
|
inlineprivate |
References XrdCl::LocationInfo::Add(), XrdCl::LocationInfo::At(), XrdCl::LocationInfo::Begin(), XrdCl::LocationInfo::End(), XrdCl::errInvalidOp, XrdCl::LocationInfo::GetSize(), XrdCl::Status::IsOK(), XrdCl::OpenFlags::None, XrdCl::LocationInfo::ServerOnline, and XrdCl::stError.
Referenced by Open().
|
inlineprivate |
|
inlinevirtual |
|
inline |
|
inlinevirtual |
|
inlinevirtual |
Reimplemented from XrdCl::FilePlugIn.
References XrdOucPgrwUtils::csCalc(), XrdCl::errInvalidArgs, XrdCl::stError, and XrdCl::Write().
|
inlinevirtual |
Reimplemented from XrdCl::FilePlugIn.
References XrdCl::errInternal, and XrdCl::stError.
|
inlinestaticprivate |
|
inlinevirtual |
Reimplemented from XrdCl::FilePlugIn.
References XrdCl::errInvalidOp, and XrdCl::stError.
|
inlinestaticprivate |
References XrdCl::AnyObject::Set(), and XrdCl::StatInfo::SetSize().
|
inlinevirtual |
Reimplemented from XrdCl::FilePlugIn.
References XrdCl::errInternal, XrdCl::errNotSupported, and XrdCl::stError.
|
private |
Referenced by Close().
|
private |
|
private |
Referenced by Close().
|
private |
Referenced by Open().
|
private |
Referenced by Open().
|
private |
|
private |