Collection

<< 目次を表示 >>

ページ位置:  API・アドイン・スクリプト > API > リファレンス > リポジトリ >

Collection

このクラスは、API内の全ての要素に対して利用されるコレクションクラスです。このクラスには、コレクション内を順に参照するメソッドや、コレクションを更新するメソッド・コレクションから要素を削除するメソッドがあります。AddNew が呼ばれた場合には、コレクションには自動的に追加されないので注意する必要があります。

 

この場合の一般的な流れとしては、次のようになります。

 

削除の場合もほぼ同じ流れになります。Refresh が呼ばれるまで、コレクションは削除された要素の情報を保持し続けています。

プログラム言語で、コレクションの操作に対応する文法がある場合には、このクラスに対して個々の要素を取得することができます。

(例: VB.NETのFor Each文)

 

属性

属性

R/W

説明

Count

short

R

コレクションが保有している要素数を取得します。

ObjectType

ObjectType

R

このオブジェクトの種類を区別するために利用できる値です。

 

操作

操作

戻り値の型

説明

AddNew

(string Name,

string Type)

object

コレクションに新しい要素を追加します。

このインターフェースはすべてのコレクションで共通です。必ず名前と型を指定する必要があります。

ここで指定された内容は生成されるオブジェクトに反映されます。また、AddNewを行った後はUpdateを実行する必要があります。Updateが呼ばれない場合には、オブジェクトの情報は中途半端のままになることになります。

処理中にエラーが発生した場合やセキュリティ機能が有効で編集権限がない場合には、例外をスローします。

 

UMLプロファイルで定義されている要素やダイアグラムを新規に追加する場合には、第2引数のTypeに、「UMLプロファイル名::種類名」を指定します。例えば、DFDのプロセス要素であれば、「データフロー::プロセス」の文字列を第2引数に指定します。

 

引数:

  • Name: string
  • Type: string (30文字まで)

 

参照:AddNewメソッド

Delete

(short index)

なし

要素を削除します。

引数:

  • index: short

DeleteAt

(short index,

bool Refresh)

なし

指定した位置のオブジェクトを削除します。削除した後にはRefreshで内容を更新する必要があります。

ループで削除処理をするような場合には、インデックスがずれるので内容を更新すべきではありません。削除したオブジェクトを利用した場合には例外が投げられます。

 

引数:

  • index: short
  • Refresh: bool

GetAt

(short index)

object

指定した位置の要素のオブジェクトの参照ポインタを取得します。

もし、オブジェクトが生成できない場合や無効な位置を指定した場合には、エラーが発生するか、あるいはNullが返されます。

 

引数:

  • index: short

GetByName

(string Name)

object

現在のコレクションにおいて、名前を指定してオブジェクトを取得します。

コレクションに項目が何も含まれていない場合には、NULL値が戻ります。もしコレクションに項目が含まれているが指定された名前の項目がない場合には、例外が発生します。

 

利用可能なコレクションは次のいずれかのオブジェクトのコレクションになります。: Package, Element, Diagram, TaggedValue, ConnectorTag

 

引数:

  • Name: string

GetLastError()

string

最後に発生したエラーの詳細情報です

エラーが発生したときには例外が発生しますので、この操作を利用することはほとんどありません。

Refresh()

なし

モデルからコレクションの情報を再取得することで、内容を更新します。

オブジェクトの追加や削除を行った後に呼ぶとよいでしょう。

Update()

bool

コレクションに内容を追加した後に、その変更を保存します。成功すると trueが返ります。falseの場合には、GetLastError()でその原因を確認できます。

(ビルド1100以降で利用可能)