FOBJ-SPI
FLAM Object Store Exit (FOBJ) Service Provider Interface (SPI) Version: 5.2.1-42969
FobjChk Struct Reference

Parameters for FOBJ_FUNC_CHK. More...

#include <FOBJ.h>

Data Fields

unsigned int uiKeyLen
 [INPUT] Byte length of pcKeyStr (without null).
unsigned int uiMinLen
 [INPUT] Minimum data length required in bytes (0 = any).
const char * pcKeyStr
 [INPUT] Object key string (null-terminated).
unsigned int isExists
 [OUTPUT] 1 if object exists with length >= uiMinLen; else 0.
unsigned int isTooShort
 [OUTPUT] 1 if the object exists but is shorter than uiMinLen.

Detailed Description

Parameters for FOBJ_FUNC_CHK.

The provider sets isExists to 1 if the object exists and its data length is greater than or equal to uiMinLen; otherwise 0. The return code is always FLMRTC_OK; the result is in isExists.

Note
The two cases "object not found" and "object found but smaller than uiMinLen" both set isExists=0 and are told apart by isTooShort. A provider that cannot distinguish them, or that predates the field, leaves isTooShort at 0 and the caller reads the answer as "not found", which is what the interface answered before the field existed.

The OBJSSE bridge maps isExists=1 to FLMRTC_OK, isExists=0 with isTooShort=1 to FLMRTC_RNG, and isExists=0 with isTooShort=0 to FLMRTC_ONF – the same three answers every other object store gives, with OBJFLDR as the reference implementation.

Field Documentation

◆ isExists

unsigned int FobjChk::isExists

[OUTPUT] 1 if object exists with length >= uiMinLen; else 0.

◆ isTooShort

unsigned int FobjChk::isTooShort

[OUTPUT] 1 if the object exists but is shorter than uiMinLen.

Only meaningful with isExists=0. Leave it at 0 when the two cases cannot be told apart – the caller then reports "not found".

◆ pcKeyStr

const char* FobjChk::pcKeyStr

[INPUT] Object key string (null-terminated).

◆ uiKeyLen

unsigned int FobjChk::uiKeyLen

[INPUT] Byte length of pcKeyStr (without null).

◆ uiMinLen

unsigned int FobjChk::uiMinLen

[INPUT] Minimum data length required in bytes (0 = any).


The documentation for this struct was generated from the following file: