| Oracle® Fusion Middleware Oracle Enterprise Repository統合ガイド 11g リリース1 (11.1.1.7) B72433-02 |
|
![]() 前 |
![]() 次 |
この章では、CMFエントリ・タイプAPIのユースケースについて説明します。また、Oracle Enterprise Repositoryへの新しいCMFエントリ・タイプの追加、およびアセットへの既存のCMFエントリ・タイプの割当てを行う方法について解説します。
この章では、次の項目について説明します。
CMFエントリ・タイプは、アセットにアタッチできるメタデータを記述します。CMFエントリ・タイプは、IDと単一の名前の文字列で識別されます。
検証: CMFエントリ・タイプを保存する場合、Oracle Enterprise Repositoryは、現在、次の内容を検証します。
CMFエントリ・タイプ名の長さが範囲内であること
CMFエントリ・タイプ名が一意であること
CMFエントリ・タイプの更新時に、CMFエントリ・タイプIDが存在していること
関連するサブシステム
アセットの観点からでは、CMFエントリはアセットにリンクしています。CMFエントリ・タイプでは、これらのエントリのパラメータを定義します。
追加で必要なインポート
import com.flashline.registry.openapi.entity.MetadataEntryTypeSummary; import com.flashline.registry.openapi.query.MetadataEntryTypeCriteria;
この項では、CMFエントリ・タイプAPIを使用するユースケースについて説明します。内容は次のとおりです。
説明
新しいCMFエントリ・タイプをOracle Enterprise Repositoryに追加します。
既存のCMFエントリ・タイプをアセットに割り当てます。
サンプル・コード
例19-1 ユースケース: CMFエントリ・タイプの操作
package com.flashline.sample.metadataentrytypeapi;
import java.net.MalformedURLException;
import java.net.URL;
import java.rmi.RemoteException;
import javax.xml.rpc.ServiceException;
import com.flashline.registry.openapi.base.OpenAPIException;
import com.flashline.registry.openapi.entity.AuthToken;
import com.flashline.registry.openapi.entity.MetadataEntryTypeSummary;
import com.flashline.registry.openapi.query.MetadataEntryTypeCriteria;
import com.flashline.registry.openapi.service.v300.FlashlineRegistry;
import
com.flashline.registry.openapi.service.v300.FlashlineRegistryServiceLocator;
public class MetadataEntryTypes {
public static void main(String pArgs[]) throws OpenAPIException,
RemoteException,
ServiceException {
try {
///////////////////////////////////////////////////////////
// Connect to Oracle Enterprise Repository
///////////////////////////////////////////////////////////
URL lURL = null;
lURL = new URL(pArgs[0]);
FlashlineRegistry repository = new
FlashlineRegistryServiceLocator().getFlashlineRegistry(lURL);
// //////////////////////////////
// Authenticate with OER
// //////////////////////////////
AuthToken authToken = repository.authTokenCreate(pArgs[1],pArgs[2]);
// -----------------------------------------
// Create a new CMF Entry Type
String newMetadataEntryTypeName = "Sample MetadataEntryType";
MetadataEntryTypeSummary newMetadataEntryType =
repository.metadataEntryTypeCreate(authToken, newMetadataEntryTypeName);
System.out.println("The new MetadataEntryType id =\"" +
newMetadataEntryType.getID() + "\"");
// -----------------------------------------
// Find a CMF Entry Type
MetadataEntryTypeCriteria criteria = new MetadataEntryTypeCriteria();
criteria.setNameCriteria("Sample");
MetadataEntryTypeSummary[] metadataEntryTypes =
repository.metadataEntryTypeQuery(authToken, criteria);
long myMetadataEntryTypeID = metadataEntryTypes[0].getID();
// -----------------------------------------
// Read a CMF Entry Type
MetadataEntryTypeSummary readMetadataEntryType =
repository.metadataEntryTypeRead(authToken, myMetadataEntryTypeID);
System.out.println("The MetadataEntryType name =\"" +
readMetadataEntryType.getName() + "\"");
// -----------------------------------------
// Delete a CMF Entry Type
repository.metadataEntryTypeDelete(authToken, myMetadataEntryTypeID);
} catch (OpenAPIException lEx) {
System.out.println("ServerCode = " + lEx.getServerErrorCode());
System.out.println("Message = " + lEx.getMessage());
System.out.println("StackTrace:");
lEx.printStackTrace();
} catch (RemoteException lEx) {
lEx.printStackTrace();
} catch (ServiceException lEx) {
lEx.printStackTrace();
} catch (MalformedURLException lEx) {
lEx.printStackTrace();
}
}
}