2009-04-06 7 views
0

Ich erkunde ein Stück Software mit Oracle API und soweit ich sehen kann, erwarten Objektmethoden als Argument oft einen "OCCI-Kontext" oder "OCCI-Umgebung" -Werte.Was ist ein OCCI-Kontext und eine Umgebung?

Ein Beispiel ist ein Konstruktor eines Kontos Objekt:

Account(oracle::occi::Environment* env); 

überlastet später mit

Account(void* oraCtx); 

ich, dass irgendwie müssen sie mit Art „Verbindungssteuerung“ tun verstehen kann, aber Ich würde gerne mehr wissen.

Ich googelte herum, aber ich konnte nichts klar genug für mich finden, es scheint, dass jedes Dokument von der Annahme ausgeht, dass Sie Oracle API bereits kennen.

Danke.

Antwort

3

OCCI Environment können Sie Ihre eigenen Speicherverwaltung Funktionen definieren, die später verwenden wird.

Wenn Sie eine environment erstellen, übergeben Sie die Zeiger auf Ihre eigenen malloc, realloc und free:

static Environment * createEnvironment(Mode mode = DEFAULT, 
    void *ctxp = 0, 
    void *(*malocfp)(void *ctxp, size_t size) = 0, 
    void *(*ralocfp)(void *ctxp, void *memptr, size_t newsize) = 0, 
    void (*mfreefp)(void *ctxp, void *memptr) = 0); 

Context ist nur ein Zeiger auf ein Environment, die an diese Funktionen übergeben wird, wenn sie nennt.