MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / JBlob

Class JBlob

src/jrd/EngineInterface.h:51–93  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

49class JProvider;
50
51class JBlob final :
52 public Firebird::RefCntIface<Firebird::IBlobImpl<JBlob, Firebird::CheckStatusWrapper> >
53{
54public:
55 // IBlob implementation
56 int release() override;
57 void getInfo(Firebird::CheckStatusWrapper* status,
58 unsigned int itemsLength, const unsigned char* items,
59 unsigned int bufferLength, unsigned char* buffer) override;
60 int getSegment(Firebird::CheckStatusWrapper* status, unsigned int length, void* buffer,
61 unsigned int* segmentLength) override;
62 void putSegment(Firebird::CheckStatusWrapper* status, unsigned int length, const void* buffer) override;
63 void cancel(Firebird::CheckStatusWrapper* status) override;
64 void close(Firebird::CheckStatusWrapper* status) override;
65 int seek(Firebird::CheckStatusWrapper* status, int mode, int offset) override; // returns position
66 void deprecatedCancel(Firebird::CheckStatusWrapper* status) override;
67 void deprecatedClose(Firebird::CheckStatusWrapper* status) override;
68
69public:
70 JBlob(blb* handle, StableAttachmentPart* sa);
71
72 StableAttachmentPart* getAttachment()
73 {
74 return sAtt;
75 }
76
77 blb* getHandle() throw()
78 {
79 return blob;
80 }
81
82 void clearHandle()
83 {
84 blob = NULL;
85 }
86
87private:
88 blb* blob;
89 Firebird::RefPtr<StableAttachmentPart> sAtt;
90
91 void freeEngineData(Firebird::CheckStatusWrapper* status);
92 void internalClose(Firebird::CheckStatusWrapper* status);
93};
94
95class JTransaction final :
96 public Firebird::RefCntIface<Firebird::ITransactionImpl<JTransaction, Firebird::CheckStatusWrapper> >

Callers 2

createBlobMethod · 0.85
openBlobMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected