uCosminexus DocumentBroker Version 3 クラスライブラリ C++ 解説

[目次][用語][索引][前へ][次へ]

2.4.1 オブジェクトの作成

オブジェクトは,CreateObjectメソッドをコールして作成します。このメソッドによって,文書空間上にDMAオブジェクトを構成要素としたクラスライブラリのオブジェクトが作成されます。作成するクラスライブラリのオブジェクトを構成するDMAオブジェクトを特定するために,CreateObjectメソッドをコールする時に,DMAオブジェクトを作成する基になるDMAクラスをCreateObjectメソッドの引数に指定する構造体(SDBR_DMAINFO構造体)に指定します。

それぞれのクラスライブラリのオブジェクトを作成する時に指定するDMAオブジェクトのクラス識別子を次の表に示します。なお,クラス識別子の代わりにNULLを指定することもできます。NULLを指定すると,デフォルトのクラス識別子を指定したものとしてオブジェクトが作成されます。

表2-1 クラスライブラリのオブジェクトを作成するときに指定するDMAオブジェクトのクラス識別子

クラスライブラリのクラス 指定するDMAオブジェクトのクラス識別子 デフォルトのクラス識別子
CdbrConfiguratedReferentialContainerクラス dmaClass_ConfigurationHistoryクラスまたはそのサブクラス dmaClass_ConfigurationHistory
edmClass_ContainerVersionクラスまたはそのサブクラス edmClass_ContainerVersion
CdbrDocumentクラス dmaClass_DocVersionクラスまたはそのサブクラス edmClass_VersionTracedComponentDocversion
CdbrIndependentPersistenceクラス edmClass_IndependentPersistenceクラスまたはそのサブクラス edmClass_IndependentPersistence
CdbrPublicACLクラス edmClass_PublicACLクラス edmClass_PublicACL
CdbrReferentialContainerクラス dmaClass_Containerクラスまたはそのサブクラス dmaClass_Container
CdbrVersionableDocumentクラス dmaClass_ConfigurationHistoryクラスまたはそのサブクラス dmaClass_ConfigurationHistory
dmaClass_DocVersionクラスまたはそのサブクラス edmClass_VersionTracedComponentDocversion
CdbrVersionTraceableContainerクラス edmClass_ContainerVersionクラスまたはそのサブクラス edmClass_ContainerVersion

CreateObjectメソッドによってオブジェクトを作成するコールシーケンスの例を示します。

CreateObjectメソッドによってオブジェクトを作成するコールシーケンス
CdbrDocument ObjDoc;
SDBR_DMAINFO DmaClassList[1];
 
//DMA情報構造体にクラス識別子を設定する
DmaClassList[0].ClassId = usrClass_DocVersion;
DmaClassList[0].PropList.pItem = NULL;
DmaClassList[0].PropList.lCount = 0;
pSession->Begin();
ObjDoc.CreateObject(pSession,
     1, DmaClassList,
    "file:///tmp/sample.txt", "MIME::text/plain", &pOIID,
     DBR_CREATE_INDEX);
ObjDoc.ReleaseObject();
pSession->Commit();