IBM Content Manager, バージョン 8.5           

Java または C++ API を使用した、コンテンツのユーザー指定コレクションへの保管

オブジェクトを保管するときに、DKLobICM クラスを変更して、 カスタム・アプリケーションの中で代替のリソース・マネージャー・コレクションを指定できます。

ItemSetRMCollection 特権は、DKLobICM クラスの 既存の特権セットに追加されます。ItemSetRMCollection 特権によって、 管理者が設定したリソース・マネージャー・コレクションを オーバーライドできます。リソース・マネージャー名とコレクション名は、 有効であって、IBM® Content Manager システム内に存在していなければなりません。 リソース・マネージャー名とコレクション名を指定しなければ、DKUsageError 例外を 取得することがあります。また、コレクション名は、他のリソース・マネージャーではなく、 指定されたリソース・マネージャー内に定義する必要があります。指定されたリソース・マネージャー内に コレクション名を定義しなければ、DKUsageException 例外を 取得することがあります。詳細は、「Application Programming Reference」の DKLobICM クラスを参照してください。

文書パーツと、 項目レベルのユーザー指定の場所を伴うリソース項目に関連付けられたコンテンツを 保管するために、Java™ および C++ API は、 次のメソッドを提供します。

DKStorageManageInfoICM::setStoreLocation( string ResourceManagerName, string collectionName)
このメソッド、リソース・マネージャー名、 およびコレクション名のパラメーターが有効であることを確認します。
リソース項目
DKTextICM xdo = (DKTextICM) datastore.createDDO(itemTypeName, 
(int) DKConstantICM. DK_ICM_XDO_TEXT_CLASS_ID);  
DKPidICM apid = (DKPidICM)xdo.getPidObject(); 
apid.setVersionNumber("1");  xdo.setMimeType(mimeType); 
DKStorageManageInfoICM storageInfo = (DKStorageManageInfoICM) 
xdo.getExtension("DKStorageManageInfoICM"); 
storageInfo.setStoreLocation(resourceManagerName,
															collectionName);
xdo.add(inputFileName);  // Become persistent
文書パーツ
DKDDO ddo_doc = datastore.createDDO(itemTypeName, 
														DKConstant.DK_CM_FOLDER);
DKParts partColl = null; 
short dataId = 
				ddo_doc.dataId(DKConstant.DK_CM_NAMESPACE_ATTR,
													 DKConstant.DK_CM_DKPARTS); 
if (dataId == 0) {
		dataId = ddo_doc.addData(
DKConstant.DK_CM_NAMESPACE_ATTR,DKConstant.DK_CM_DKPARTS);
 		partColl = new DKParts(); 	
		ddo_doc.setData(dataId, partColl); 
} else {
			partColl = (DKParts)ddo_doc.getData(dataId); 
			if (partColl == null){
				 	partColl = new DKParts(); 	
    			ddo_doc.setData(dataId, partColl);  
       }
 } 
	DKTextICM part_xdo = (DKTextICM)datastore.
		createDDO(partName, 
		(int) DKConstantICM. DK_ICM_XDO_TEXT_CLASS_ID);
 	DKPidICM apid  = (DKPidICM)part_xdo.getPidObject(); 
	apid.setVersionNumber("1");  
	part_xdo.setMimeType(mimeType); 
	DKStorageManageInfoICM storageInfo =
	(DKStorageManageInfoICM) 
	part_xdo.getExtension("DKStorageManageInfoICM"); 
	storageInfo.setStoreLocation(resourceManagerName,
	collectionName);
 	part_xdo.loadDataFromFile(inputFileName); 
	part_xdo.setAddLocationOption("MEMORY"); 
	partColl.addElement(part_xdo); 
	ddo_doc.add();

前の例で、DKStorageManageInfoICM::setStoreLocation( string resourceManagerName, string collectionName) メソッドを DKStorageManageInfoICM::setStoreSite(string resourceManagerName) メソッドと DKStorageManageInfoICM::setCollectionName(string collectionName) メソッドで置き換えることができます。

重要: このフィーチャーは、 新たに作成された項目のみをリソース・マネージャーに保管するためのものです。update 関数の 場合、RMName および SMSCollectionName 構成可能パラメーターを 指定すると、IBM Content Manager は、入力データを考慮せず、 オブジェクトが保管されているところで、RMName および SMSCollectionName パラメーター・ペアの 更新を続行します。


フィードバック

最終更新: 2013 年 12 月
dcmcm115.htm

© Copyright IBM Corp. 2013.