dbrgetprop(プロパティの取得)
機能
プロパティ情報ファイルに記述した内容に従って,オブジェクトのプロパティを取得します。OIIDファイルに複数のOIIDを指定すると,複数のオブジェクトのプロパティを一括して取得できます。
操作クラス
- CdbrIndependentPersistenceクラス
- CdbrDocumentクラス
- CdbrVersionableDocumentクラス
- CdbrReferentialContainerクラス
- CdbrVersionTraceableContainerクラス
- CdbrConfiguratedReferentialContainerクラス
- CdbrPublicACLクラス
形式
dbrgetprop 〔 { -v { バージョン識別子 | バージョン識別子ファイル } |
-L { リンク識別子 | リンク識別子ファイル } }〕
{ OIID | OIIDファイル } プロパティ情報ファイル
オプション
- -v { バージョン識別子 | バージョン識別子ファイル }
- バージョン付き文書またはバージョン付き構成管理コンテナの場合,プロパティを取得するバージョンのバージョン識別子を指定します。このオプションおよび-Lオプションを省略した場合は,すべてのバージョンで共有するプロパティを取得します。
- バージョン付き文書およびバージョン付き構成管理コンテナ以外のプロパティを取得する場合にこのオプションを指定するとエラーになります。
- バージョン識別子
- プロパティを取得するバージョンのバージョン識別子を指定します。
- バージョン識別子ファイル
- プロパティを取得するバージョンのバージョン識別子を記述したバージョン識別子ファイルのファイルパスを指定します。ファイルパスは,絶対パスまたは相対パスのどちらでも指定できます。ただし,「DBRVTVERSION」という文字列および「acl://」で始まるパスは指定できません。なお,バージョン識別子ファイルに記述できるバージョン識別子の数は一つだけです。
- -L { リンク識別子 | リンク識別子ファイル }
- コンテナに設定したコンテインメントのプロパティを取得する場合に,プロパティを取得するコンテインメントのリンク識別子を指定します。このオプションおよび-vオプションを省略した場合は,すべてのバージョンで共有するプロパティを取得します。
- コンテナ以外のプロパティを取得するときにこのオプションを指定するとエラーになります。
- リンク識別子
- プロパティを取得するコンテインメントのリンク識別子を指定します。
- リンク識別子ファイル
- プロパティを取得するコンテインメントのリンク識別子を記述したリンク識別子ファイルのファイルパスを指定します。ファイルパスは,絶対パスまたは相対パスのどちらでも指定できます。ただし,「acl://」で始まるパスは指定できません。なお,リンク識別子ファイルに記述できるリンク識別子の数は一つだけです。
コマンド引数
- OIID
- プロパティを取得するオブジェクトのOIIDを指定します。
- OIIDファイル
- プロパティを取得するオブジェクトのOIIDを記述したOIIDファイルのファイルパスを指定します。OIIDファイルには,複数のOIIDが指定できます。ただし,-vオプションを指定している場合または-Lオプションを指定している場合,記述できるOIIDの数は一つだけです。
- OIIDファイルのファイル名はオブジェクトのOIID形式以外であれば任意です。ファイルパスは,絶対パスまたは相対パスのどちらでも指定できます。ただし,「dma://」で始まるパスは指定できません。
- プロパティ情報ファイル
- 取得するオブジェクトのクラス名および設定するプロパティを記述したプロパティ情報ファイルのファイルパスを指定します。ファイルパスは,絶対パスまたは相対パスのどちらでも指定できます。
プロパティ情報ファイルの記述例
独立データのプロパティを取得する場合のedmClass_IndependentPersistence用プロパティ情報ファイルの記述例を示します。このファイルには,取得するプロパティの名前だけ指定します。
;; usrClass_IndependentPersistence
[usrClass_IndependentPersistence]
usrProp_IsReadOnly
usrProp_State
usrProp_Title
usrProp_Authors
実行例
実行例を次に示します。なお,この例はWindowsの場合です。UNIXの場合は,「type PropFile」を「cat PropFile」に読み替えてください。
$ type PropFile
[usrClass_IndependentPersistence]
usrProp_IsReadOnly
usrProp_State
usrProp_Title
usrProp_Authors
$ dbrgetprop dma:///07a17522-…-0000000001 PropFile
# Properties by dbrgetprop 1999/08/01 15:00:00
# dma:///07a17522-a626-11d0-b11f-0020af27a837/673d2be0-…-0000000001
[usrClass_IndependentPersistence]
usrProp_IsReadOnly=TRUE
usrProp_State=1
usrProp_Title='Independent'
usrProp_Authors[3][2]=
{
{usrProp_Name='suzuki',
usrProp_Age=27},
{usrProp_Name='yamada',
usrProp_Age=30},
{usrProp_Name='sato',
usrProp_Age=32}
}
注意事項
- 文字としてのシングルクォート(')を含むString型プロパティを取得する場合,文字列を囲むシングルクォート(')とは別にシングルクォート(')が二つ続けて出力されます。
- OIIDファイルに記述したOIID数とプロパティ情報ファイルに記述したセクション数が同じでない場合,エラーになります。オブジェクトのOIIDを指定した場合,プロパティ情報ファイルに記述するセクション数は一つでなければなりません。
- 取得するプロパティを記述したプロパティ情報ファイルには値を指定する必要はありません。また,指定していてもエラーにはなりません。
- -vオプションのオプションの引数に「DBRVTVERSION」を指定するとエラーになります。
- -vオプションまたは-Lオプション指定時には,複数のオブジェクトのプロパティを一括して取得することはできません。指定したバージョンまたはコンテインメントのプロパティを取得できるオブジェクトは一つだけです。OIIDファイルに複数のOIIDを指定した場合はエラーになります。
- バージョン付き構成管理コンテナに対して,-vオプションと-Lオプションを同時には指定できません。
- 基本単位がVariableArray型のプロパティとしては,データ型がObject型以外のプロパティを出力することはできません。
- クラスライブラリ固有のプロパティは,クラス定義情報ファイルに記述していなくても,セクション名に指定したクラスのプロパティとして取得できます。ただし,指定したオブジェクトの操作クラスに導入されていないクラスライブラリ固有のプロパティを指定した場合は,実行メソッドでエラーになります。
- プロパティ情報ファイルに記述したクラス名は,クラス定義情報ファイルにアクセスするときだけ使用します。プロパティの取得には影響しません。
- 値がNULL値の場合は,「NULL」という文字列が出力されます。
- 値取得時にエラーが発生した場合,「ERROR」という文字列と付加情報が出力されます。