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

Method putSlice

src/jrd/jrd.cpp:3816–3857  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3814
3815
3816void JAttachment::putSlice(CheckStatusWrapper* user_status, ITransaction* tra, ISC_QUAD* array_id,
3817 unsigned int /*sdlLength*/, const unsigned char* sdl, unsigned int paramLength,
3818 const unsigned char* param, int sliceLength, unsigned char* slice)
3819{
3820/**************************************
3821 *
3822 * g d s _ $ p u t _ s l i c e
3823 *
3824 **************************************
3825 *
3826 * Functional description
3827 * Snatch a slice of an array.
3828 *
3829 **************************************/
3830 try
3831 {
3832 JTransaction* const jt = getTransactionInterface(user_status, tra);
3833 EngineContextHolder tdbb(user_status, this, FB_FUNCTION);
3834
3835 jrd_tra* transaction = jt->getHandle();
3836 validateHandle(tdbb, transaction);
3837 check_database(tdbb);
3838
3839 try
3840 {
3841 blb::put_slice(tdbb, transaction, reinterpret_cast<bid*>(array_id),
3842 sdl, paramLength, param, sliceLength, slice);
3843 }
3844 catch (const Exception& ex)
3845 {
3846 transliterateException(tdbb, ex, user_status, "JAttachment::putSlice");
3847 return;
3848 }
3849 }
3850 catch (const Exception& ex)
3851 {
3852 ex.stuffException(user_status);
3853 return;
3854 }
3855
3856 successful_completion(user_status);
3857}
3858
3859
3860JEvents* JAttachment::queEvents(CheckStatusWrapper* user_status, IEventCallback* callback,

Callers

nothing calls this directly

Calls 6

validateHandleFunction · 0.85
check_databaseFunction · 0.85
transliterateExceptionFunction · 0.85
successful_completionFunction · 0.85
getHandleMethod · 0.45
stuffExceptionMethod · 0.45

Tested by

no test coverage detected