1 #ifndef MISC_NETSTORAGE___NETSTORAGEIMPL__HPP
2 #define MISC_NETSTORAGE___NETSTORAGEIMPL__HPP
53 void ParseArg(
const string&,
const string&);
57 return BuildImpl<SCombinedNetStorageConfig>(init_string);
64 template <
class TBase>
67 template <
class... TArgs>
69 TBase(std::forward<TArgs>(args)...),
106 template <
class TBase>
120 SContext(
const string&,
const string&,
178 void Close()
override;
179 void Abort()
override;
200 void Close()
override;
201 void Abort()
override;
223 void Close()
override;
224 void Abort()
override;
243 void Close()
override;
244 void Abort()
override;
255 m_RW(fsm, object_loc)
280 m_Read(fsm, object_loc, cancel_relocate),
310 m_Read(fsm, object_loc, cancel_relocate),
Pool of recycled CCompoundID objects.
Detailed information about a CNetStorage object.
string GetLocator() const
CTimeout – Timeout interval.
CFileTrack(CNetStorageObjectLoc &object_loc, SNetStorageObjectImpl &fsm, SContext *context, bool *cancel_relocate)
CRef< SContext > m_Context
TState< CROFileTrack > m_Read
ENetStorageRemoveResult Remove() override
void SetLocator() override
INetStorageObjectState * StartWrite(const void *, size_t, size_t *, ERW_Result *) override
CNetStorageObjectInfo GetInfo() override
TState< CWOFileTrack > m_Write
void SetExpiration(const CTimeout &) override
string FileTrack_Path() override
pair< string, string > GetUserInfo() override
INetStorageObjectState * StartRead(void *, size_t, size_t *, ERW_Result *) override
TState< CRONetCache > m_Read
pair< string, string > GetUserInfo() override
void SetLocator() override
void SetExpiration(const CTimeout &) override
ENetStorageRemoveResult Remove() override
CNetICacheClientExt m_Client
TState< CWONetCache > m_Write
string FileTrack_Path() override
CNetCache(CNetStorageObjectLoc &object_loc, SNetStorageObjectImpl &fsm, SContext *context, bool *cancel_relocate)
INetStorageObjectState * StartWrite(const void *, size_t, size_t *, ERW_Result *) override
CRef< SContext > m_Context
CNetStorageObjectInfo GetInfo() override
INetStorageObjectState * StartRead(void *, size_t, size_t *, ERW_Result *) override
void SetExpiration(const CTimeout &) override
TState< CRWNotFound > m_RW
string FileTrack_Path() override
CNotFound(CNetStorageObjectLoc &object_loc, SNetStorageObjectImpl &fsm)
void SetLocator() override
pair< string, string > GetUserInfo() override
CNetStorageObjectInfo GetInfo() override
ENetStorageRemoveResult Remove() override
INetStorageObjectState * StartRead(void *, size_t, size_t *, ERW_Result *) override
INetStorageObjectState * StartWrite(const void *, size_t, size_t *, ERW_Result *) override
CROFileTrack(bool *cancel_relocate)
CRef< SFileTrackDownload > TRequest
void Set(TRequest request)
ERW_Result PendingCount(size_t *count) override
Via parameter "count" (which is guaranteed to be supplied non-NULL) return the number of bytes that a...
ERW_Result Read(void *buf, size_t count, size_t *read) override
Read as many as "count" bytes into a buffer pointed to by the "buf" argument.
ERW_Result Read(void *buf, size_t count, size_t *read) override
Read as many as "count" bytes into a buffer pointed to by the "buf" argument.
void Set(TReaderPtr reader, size_t blob_size)
unique_ptr< IReader > TReaderPtr
CRONetCache(bool *cancel_relocate)
ERW_Result PendingCount(size_t *count) override
Via parameter "count" (which is guaranteed to be supplied non-NULL) return the number of bytes that a...
void CancelRelocate() override
CROState(bool *cancel_relocate)
ERW_Result Read(void *buf, size_t count, size_t *read) override
Read as many as "count" bytes into a buffer pointed to by the "buf" argument.
ERW_Result Flush() override
Flush pending data (if any) down to the output device.
ERW_Result Write(const void *buf, size_t count, size_t *written) override
Write up to "count" bytes from the buffer pointed to by the "buf" argument onto the output device.
ERW_Result PendingCount(size_t *count) override
Via parameter "count" (which is guaranteed to be supplied non-NULL) return the number of bytes that a...
void Set(TRequest request)
ERW_Result Flush() override
Flush pending data (if any) down to the output device.
CRef< SFileTrackUpload > TRequest
ERW_Result Write(const void *buf, size_t count, size_t *written) override
Write up to "count" bytes from the buffer pointed to by the "buf" argument onto the output device.
unique_ptr< IEmbeddedStreamWriter > TWriterPtr
void Set(TWriterPtr writer)
ERW_Result Write(const void *buf, size_t count, size_t *written) override
Write up to "count" bytes from the buffer pointed to by the "buf" argument onto the output device.
ERW_Result Flush() override
Flush pending data (if any) down to the output device.
virtual void SetExpiration(const CTimeout &)=0
virtual pair< string, string > GetUserInfo()=0
virtual string GetLoc() const =0
virtual CNetStorageObjectInfo GetInfo()=0
virtual INetStorageObjectState * StartRead(void *, size_t, size_t *, ERW_Result *)=0
virtual string FileTrack_Path()=0
virtual Uint8 GetSize()=0
virtual ENetStorageRemoveResult Remove()=0
virtual INetStorageObjectState * StartWrite(const void *, size_t, size_t *, ERW_Result *)=0
virtual CNetStorageObjectLoc & Locator()=0
virtual void SetLocator()=0
Declarations of CCompoundIDPool, CCompoundID, and CCompoundIDField.
unsigned TNetStorageFlags
Bitwise OR of ENetStorageFlags.
ENetStorageRemoveResult
Result returned by Remove() methods.
uint64_t Uint8
8-byte (64-bit) unsigned integer
Uint8 GetRandUint8(void)
Get random Uint8 number.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
ERW_Result
Result codes for I/O operations.
@ eRW_Success
Everything is okay, I/O completed.
const struct ncbi::grid::netcache::search::fields::KEY key
NetCache ICache client specs.
SContext(const SCombinedNetStorageConfig &, TNetStorageFlags)
TNetStorageFlags default_flags
CNetICacheClientExt icache_client
CNetStorageObjectLoc Create(const string &key, TNetStorageFlags flags)
SFileTrackAPI filetrack_api
CNetStorageObjectLoc Create(TNetStorageFlags flags)
CCompoundIDPool compound_id_pool
void ParseArg(const string &, const string &)
static SCombinedNetStorageConfig Build(const string &init_string)
static EMode GetMode(const string &)
SCombinedNetStorageConfig()
const SFileTrackConfig config
SNetStorageObjectDirectState(CNetStorageObjectLoc &locator, TArgs &&... args)
CNetStorageObjectLoc & Locator() override
CNetStorageObjectLoc & m_Locator
string GetLoc() const override