theSq3Lite 10.0
Loading...
Searching...
No Matches
Sq3BlobC_jv.c
Go to the documentation of this file.
1
9/* LABEL-START */
10#define META_FILE_NAME "Sq3BlobC_jv.c"
11
12#include "jni_h/jvsq3lite_Sq3BlobC.h"
13#include "LibSq3Lite_private_jv.h"
14
15
16jobject NS(Sq3BlobC_ObjNew) (MK_RT_ARGS JNIEnv *env, SQ3_BLOB hdl) {
17 static MkThreadLocal jobject NS_NULL = NULL;
18 return (hdl ? MK(AtomObjNew)(MK_RT_CALL env, Sq3BlobC_X2obj(hdl)) : MK_GET__NS_NULL(Sq3BlobC));
19}
20
22static jobject NS(Sq3BlobC_ObjCreate) (MK_RT_ARGS JNIEnv *env, SQ3_BLOB hdl) {
23 return MK(AtomObjCreate)(MK_RT_CALL env, Sq3BlobC_X2obj(hdl));
24}
25
26static MK_PTR NS(Sq3BlobC_selfCreate) (MK_RT_ARGS MK_OBJ obj, MK_PTR envP) {
27 JNIEnv *env = (JNIEnv*) envP;
28 return (*env)->NewObject(env, NS(Class_Sq3BlobC), NS(MID_Sq3BlobC_INIT), (jlong) obj, JNI_TRUE);
29}
30
31#define ClassInit \
32
33// printTxt("init: Sq3BlobC");
34
35/* LABEL-END */
36
37// BEGIN-Sq3BlobC - created by 'jv_MqC.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
38
42
43// doc-key: Sq3BlobC,Sq3BlobC-Class-Export,sc_
44
46JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_HandleResolve (JNIEnv *env, jclass class, jint netHdl) {
48 SQ3_BLOB __retVal__L = Sq3BlobHandleResolve(netHdl);
49 jobject __retVal__S = SQ3(Sq3BlobC_ObjNew)(MK_RT_CALL env,__retVal__L);
50 return __retVal__S;
51}
52
53// doc-key: Sq3BlobC,Sq3BlobC-Class-Export,om_
54
55// skip class-overload: HandleGet = Sq3BlobHandleGet → MkObjectHandleGet
56
58// Sq3BlobC_Class_JV_API
59
63
64// doc-key: Sq3BlobC,Sq3BlobC-Class-Introspection,oc_
65
67JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_Next (JNIEnv *env, jobject self) {
68 SQ3_BLOB hdl = (SQ3_BLOB)pObj2Hdl(env,"Sq3BlobC",self);
69 JavaErrorCheck;
70 MkRtSetup_X(hdl);
71 SQ3_BLOB __retVal__L = Sq3BlobNext(hdl);
72 jobject __retVal__S = SQ3(Sq3BlobC_ObjNew)(MK_RT_CALL env,__retVal__L);
73 return __retVal__S;
74error:
75 return 0;
76}
77
79JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_Prev (JNIEnv *env, jobject self) {
80 SQ3_BLOB hdl = (SQ3_BLOB)pObj2Hdl(env,"Sq3BlobC",self);
81 JavaErrorCheck;
82 MkRtSetup_X(hdl);
83 SQ3_BLOB __retVal__L = Sq3BlobPrev(hdl);
84 jobject __retVal__S = SQ3(Sq3BlobC_ObjNew)(MK_RT_CALL env,__retVal__L);
85 return __retVal__S;
86error:
87 return 0;
88}
89
90// doc-key: Sq3BlobC,Sq3BlobC-Class-Introspection,sc_
91
93JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_Instances (JNIEnv *env, jclass class) {
95 SQ3_BLOB __retVal__L = Sq3BlobInstances();
96 jobject __retVal__S = SQ3(Sq3BlobC_ObjNew)(MK_RT_CALL env,__retVal__L);
97 return __retVal__S;
98}
99
101// Sq3BlobC_Class_JV_API
102
106
107// doc-key: Sq3BlobC,Sq3BlobC-Class-Misc,sc_
108
110JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_GetNull (JNIEnv *env, jclass class) {
112 SQ3_BLOB __retVal__L = Sq3BlobGetNull();
113 jobject __retVal__S = SQ3(Sq3BlobC_ObjNew)(MK_RT_CALL env,__retVal__L);
114 return __retVal__S;
115}
116
118// Sq3BlobC_Class_JV_API
119
123
124// doc-key: Sq3BlobC,Sq3BlobC-Misc,oci
125
127JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_Read (JNIEnv *env, jobject self, jobject Z_inout, jint iOffset) {
128 SQ3_BLOB hdl = (SQ3_BLOB)pObj2Hdl(env,"Sq3BlobC",self);
129 JavaErrorCheck;
130 MkRtSetup_X(hdl);
131 MK_BUF Z_inout_hdl = (MK_BUF)pObj2Hdl__null_allow(env,Z_inout);
132 JavaErrorCheck;
133 enum MkErrorE errVal = Sq3BlobRead(hdl, &Z_inout_hdl, iOffset);
134 MkErrorC_Check(hdl, errVal)
135 jobject __retVal__S = MK(MkBufferC_ObjNew)(MK_RT_CALL env,Z_inout_hdl);
136 return __retVal__S;
137error:
138 return 0;
139}
140
141// doc-key: Sq3BlobC,Sq3BlobC-Misc,om_
142
144JNIEXPORT jint JNICALL Java_jvsq3lite_Sq3BlobC_Bytes (JNIEnv *env, jobject self) {
145 SQ3_BLOB hdl = (SQ3_BLOB)pObj2Hdl(env,"Sq3BlobC",self);
146 JavaErrorCheck;
147 MkRtSetup_X(hdl);
148 MK_I32 __retVal__L = Sq3BlobBytes(hdl);
149 jint __retVal__S = __retVal__L;
150 return __retVal__S;
151error:
152 return 0;
153}
154
156JNIEXPORT void JNICALL Java_jvsq3lite_Sq3BlobC_Reopen (JNIEnv *env, jobject self, jlong arg1) {
157 SQ3_BLOB hdl = (SQ3_BLOB)pObj2Hdl(env,"Sq3BlobC",self);
158 JavaErrorCheck;
159 MkRtSetup_X(hdl);
160 enum MkErrorE errVal = Sq3BlobReopen(hdl, arg1);
161 MkErrorC_Check(hdl, errVal)
162error:
163 return;
164}
165
167JNIEXPORT void JNICALL Java_jvsq3lite_Sq3BlobC_Write (JNIEnv *env, jobject self, jobject z, jint iOffset) {
168 SQ3_BLOB hdl = (SQ3_BLOB)pObj2Hdl(env,"Sq3BlobC",self);
169 JavaErrorCheck;
170 MkRtSetup_X(hdl);
171 MK_BUF z_hdl = (MK_BUF)pObj2Hdl(env,"MkBufferC",z);
172 JavaErrorCheck;
173 enum MkErrorE errVal = Sq3BlobWrite(hdl, z_hdl, iOffset);
174 MkErrorC_Check(hdl, errVal)
175error:
176 return;
177}
178
180// Sq3BlobC_Misc_JV_API
181
185
186// doc-key: Sq3BlobC,Sq3BlobC-TOR,sCo
187
189JNIEXPORT jlong JNICALL Java_jvsq3lite_Sq3BlobC_CTOR (JNIEnv *env, jclass class, jobject sq3lite, jstring zDb, jstring zTable, jstring zColumn, jlong iRow, jint flags) {
191 SQ3_BLOB ppBlob;
192 SQ3_LITE sq3lite_hdl = (SQ3_LITE)pObj2Hdl(env,"Sq3LiteC",sq3lite);
193 JavaErrorCheck;
194 MK_STRN zDb_ptr = (zDb?(*env)->GetStringUTFChars(env,zDb,NULL):NULL);
195 JavaErrorCheck;
196 MK_STRN zTable_ptr = (zTable?(*env)->GetStringUTFChars(env,zTable,NULL):NULL);
197 JavaErrorCheck;
198 MK_STRN zColumn_ptr = (zColumn?(*env)->GetStringUTFChars(env,zColumn,NULL):NULL);
199 JavaErrorCheck;
200 enum MkErrorE errVal = Sq3BlobOpen(sq3lite_hdl, zDb_ptr, zTable_ptr, zColumn_ptr, iRow, flags, &ppBlob);
201 MkErrorC_Check(NULL, errVal)
202 jlong __retVal__S = (jlong)ppBlob;
203 if (zDb_ptr) (*env)->ReleaseStringUTFChars(env,zDb,zDb_ptr);
204 if (zTable_ptr) (*env)->ReleaseStringUTFChars(env,zTable,zTable_ptr);
205 if (zColumn_ptr) (*env)->ReleaseStringUTFChars(env,zColumn,zColumn_ptr);
206 return __retVal__S;
207error:
208 return 0;
209}
210
212JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_Open (JNIEnv *env, jclass class, jobject sq3lite, jstring zDb, jstring zTable, jstring zColumn, jlong iRow, jint flags) {
214 SQ3_BLOB ppBlob;
215 SQ3_LITE sq3lite_hdl = (SQ3_LITE)pObj2Hdl(env,"Sq3LiteC",sq3lite);
216 JavaErrorCheck;
217 MK_STRN zDb_ptr = (zDb?(*env)->GetStringUTFChars(env,zDb,NULL):NULL);
218 JavaErrorCheck;
219 MK_STRN zTable_ptr = (zTable?(*env)->GetStringUTFChars(env,zTable,NULL):NULL);
220 JavaErrorCheck;
221 MK_STRN zColumn_ptr = (zColumn?(*env)->GetStringUTFChars(env,zColumn,NULL):NULL);
222 JavaErrorCheck;
223 enum MkErrorE errVal = Sq3BlobOpen(sq3lite_hdl, zDb_ptr, zTable_ptr, zColumn_ptr, iRow, flags, &ppBlob);
224 MkErrorC_Check(NULL, errVal)
225 jobject __retVal__S = SQ3(Sq3BlobC_ObjCreate)(MK_RT_CALL env,ppBlob);
226 if (zDb_ptr) (*env)->ReleaseStringUTFChars(env,zDb,zDb_ptr);
227 if (zTable_ptr) (*env)->ReleaseStringUTFChars(env,zTable,zTable_ptr);
228 if (zColumn_ptr) (*env)->ReleaseStringUTFChars(env,zColumn,zColumn_ptr);
229 return __retVal__S;
230error:
231 return 0;
232}
233
235// Sq3BlobC_TOR_JV_API
236
237// END-Sq3BlobC - created by 'jv_MqC.tcl -i NHI1_HOME/theSq3Lite/c/gen/c_sq3lite.meta' - DO NOT change
238
239// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
240
241void NS(Sq3BlobC_Init)(SQ3_RT_ARGS_ONLY) {
243
244 Sq3BlobC_TT->selfCreate = NS(Sq3BlobC_selfCreate) ;
245 Sq3BlobC_TT->selfUnlink = MK(AtomSelfUnlink) ;
246}
247
248// ====================================================================================================
249// OVERLOAD
#define SQ3_RT_ARGS_ONLY
#define ClassInit
Definition Sq3BlobC_jv.c:31
struct MkBufferS * MK_BUF
#define MK_UNUSED
MkErrorE
MK_PTRB * MK_PTR
const MK_STRB * MK_STRN
signed int MK_I32
#define MkThreadLocal
#define MK_RT_CALL
#define MkRtSetup_X(x)
#define MK_RT_ARGS
#define MkRtSetup_NULL
static MK_ARTIFICIAL SQ3_BLOB Sq3BlobC_ObjNew(sqlite3_blob *hdl)
return Programming-Language-Micro-Kernel (PLMK) instance from native hdl …
#define Sq3BlobHandleResolve(...)
static SQ3_BLOB Sq3BlobPrev(SQ3_BLOB const blob)
get previous instance from linked-list of Sq3BlobS type
static SQ3_BLOB Sq3BlobC_ObjCreate(sqlite3_blob *hdl)
return Programming-Language-Micro-Kernel (PLMK) instance from native hdl …
struct Sq3BlobS * SQ3_BLOB
class-shortcut for struct Sq3BlobS *, all shortcut using the XX_YYY syntax (only for public API) …
#define Sq3BlobInstances()
static SQ3_BLOB Sq3BlobNext(SQ3_BLOB const blob)
get next instance from linked-list of Sq3BlobS type
static SQ3_BLOB Sq3BlobGetNull(void)
Null-Slot - return a Sq3BlobC typed NULL instance …
#define Sq3BlobC_X2obj(x)
__thread MK_TYP Sq3BlobC_TT
class as MkTypeDefS-class-type …
JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_HandleResolve(JNIEnv *env, jclass class, jint netHdl)
Java: [static] Sq3BlobC Sq3BlobC.HandleResolve(int netHdl) → C-API Handle-Resolve-Slot - return ...
Definition Sq3BlobC_jv.c:46
JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_Next(JNIEnv *env, jobject self)
Java: Sq3BlobC blob.Next() → C-API get next instance from linked-list of Sq3BlobS type
Definition Sq3BlobC_jv.c:67
JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_GetNull(JNIEnv *env, jclass class)
Java: [static] Sq3BlobC Sq3BlobC.GetNull() → C-API Null-Slot - return a Sq3BlobC typed NULL inst...
JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_Instances(JNIEnv *env, jclass class)
Java: [static] Sq3BlobC Sq3BlobC.Instances() → C-API get head-instance from linked-list of Sq3Bl...
Definition Sq3BlobC_jv.c:93
JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_Prev(JNIEnv *env, jobject self)
Java: Sq3BlobC blob.Prev() → C-API get previous instance from linked-list of Sq3BlobS type
Definition Sq3BlobC_jv.c:79
static MK_I32 Sq3BlobBytes(SQ3_BLOB sq3blob)
Return The Size Of An Open BLOB …
#define Sq3BlobWrite(...)
#define Sq3BlobRead(...)
static enum MkErrorE Sq3BlobReopen(SQ3_BLOB sq3blob, MK_I64 arg1)
Move a BLOB Handle to a New Row …
JNIEXPORT jint JNICALL Java_jvsq3lite_Sq3BlobC_Bytes(JNIEnv *env, jobject self)
Java: int sq3blob.Bytes() → C-API Return The Size Of An Open BLOB …
JNIEXPORT void JNICALL Java_jvsq3lite_Sq3BlobC_Write(JNIEnv *env, jobject self, jobject z, jint iOffset)
Java: sq3blob.Write(MkBufferC z, int iOffset) → C-API Write Data Into A BLOB Incrementally …
JNIEXPORT void JNICALL Java_jvsq3lite_Sq3BlobC_Reopen(JNIEnv *env, jobject self, jlong arg1)
Java: sq3blob.Reopen(long arg1) → C-API Move a BLOB Handle to a New Row …
JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_Read(JNIEnv *env, jobject self, jobject Z_inout, jint iOffset)
Java: MkBufferC sq3blob.Read(?MkBufferC Z_inout = null?, int iOffset) → C-API Read Data From ...
static enum MkErrorE Sq3BlobOpen(SQ3_LITE sq3lite, MK_STRN zDb, MK_STRN zTable, MK_STRN zColumn, MK_I64 iRow, MK_I32 flags, SQ3_BLOB *ppBlob)
Open A BLOB For Incremental I/O …
JNIEXPORT jobject JNICALL Java_jvsq3lite_Sq3BlobC_Open(JNIEnv *env, jclass class, jobject sq3lite, jstring zDb, jstring zTable, jstring zColumn, jlong iRow, jint flags)
Java: [constructor,static] Sq3BlobC Sq3BlobC.Open(Sq3LiteC sq3lite, String zDb, String zTable,...
JNIEXPORT jlong JNICALL Java_jvsq3lite_Sq3BlobC_CTOR(JNIEnv *env, jclass class, jobject sq3lite, jstring zDb, jstring zTable, jstring zColumn, jlong iRow, jint flags)
Java: [constructor,static] Sq3BlobC Sq3BlobC.Open(Sq3LiteC sq3lite, String zDb, String zTable,...
struct Sq3LiteS * SQ3_LITE
class-shortcut for struct Sq3LiteS *, all shortcut using the XX_YYY syntax (only for public API) …
MkSelfUnlinkF selfUnlink
MkSelfCreateF selfCreate
Struct to represent the data of the Sq3BlobC …
Struct to represent the data of the Sq3LiteC …