<< 目次を表示 >> ページ位置: API・アドイン・スクリプト > API > リファレンス > リポジトリ > Package |
パッケージオブジェクトは、EAのモデルブラウザのパッケージ(モデルルートも含みます)に対応したオブジェクトです。RepositoryのModelsコレクションかPackageのPackagesコレクションを通して取得できます。
PackageはElementオブジェクトを属性として持っていることに注意してください。多くのプロパティを設定するためには、このElementオブジェクトを参照・編集する必要があります。なお、Package.PackageGUIDとそのElementのElement.ElementGUIDは同一になります。
パッケージに対して要素と同じ情報を設定する場合には、Elementに対して設定してください。また、パッケージを要素としてダイアグラムに配置する場合には、対応するElementを配置してください。要素間をつなぐ接続(Connector)の両端の指定はElementIDになりますので、パッケージに対して接続を設定する場合には、Package.Elementで取得できるElement要素のElementIDを指定します。
モデルルートには、Package.Elementはありません。対応するElementIDもありませんので、モデルルートをダイアグラムに配置したり、モデルルートを接続の対象とできません。
プロジェクト内の関係するテーブル
t_package
属性
属性 |
型 |
R/W |
説明 |
Alias |
string |
R |
別名です。 |
BatchLoad |
int |
RW |
XMI入力時に一括処理の対象であるかどうかを示します。 現在使われていません。 |
BatchSave |
int |
RW |
XML出力時に一括処理の対象であるかどうかを示します。 |
CodePath |
string |
RW |
現在使われていません。 |
Connectors |
R |
関係する接続の一覧です。 |
|
Created |
DateTime |
RW |
パッケージの作成日です。 |
Diagrams |
R |
このパッケージに含まれているダイアグラムのコレクションです。 |
|
Element |
Element |
R |
このパッケージに関連するElementオブジェクトです。Stereotype, Complexity, Alias, Author, Constraints, Scenariosなどの情報をパッケージに設定する場合には、このオブジェクトに設定します。 モデルルートの場合にはこの属性は利用できません。(nullになります) |
Elements |
R |
このパッケージに含まれている要素のコレクションです。 |
|
Flags |
string |
RW |
このパッケージの追加情報です。 |
IsControlled |
bool |
RW |
パッケージがコントロールパッケージとして設定されているかどうかを示します。 |
IsModel |
bool |
R |
このパッケージかモデルルートであるかどうかを示します。 |
IsNamespace |
bool |
RW |
このパッケージが名前空間のルートであるかどうかを示します。 |
IsProtected |
bool |
RW |
このパッケージか保護されているかどうかを示します。 |
IsVersionControlled |
bool |
R |
バージョン管理の対象になっているかどうかを示します。 |
LastLoadDate |
DateTime |
RW |
このパッケージに対応するXMLファイルの最終読み込み日です。 |
LastSaveDate |
DateTime |
RW |
このパッケージに対応するXMLファイルの最終出力日です。 |
LogXML |
bool |
RW |
XML出力時にログを出力するかどうかを指定します。 |
Modified |
DateTime |
RW |
パッケージの最終変更日です。 |
Name |
string |
RW |
パッケージの名前です。 |
Notes |
string |
RW |
このパッケージのノートです。 |
ObjectType |
R |
要素を区別するために利用する属性です。 |
|
Owner |
string |
RW |
コントロールパッケージを利用している場合の所有者です。 |
PackageGUID |
object |
R |
パッケージのGUIDです。プロジェクトを超えて利用できます。 |
PackageID |
int |
R |
パッケージのID番号です。このプロジェクト内でのみ有効です。 |
Packages |
R |
このパッケージの中にある子パッケージのコレクションです。 |
|
ParentID |
int |
RW |
パッケージの親となるパッケージのIDです。 この値が 0 の場合には、親パッケージはありません。 |
StereotypeEx |
string |
RW |
パッケージのステレオタイプです。複数のステレオタイプがある場合にはカンマで区切られます。 (ビルド1500以降で利用可能) |
TreePos |
int |
RW |
モデルブラウザ内の相対的な位置を示しています。 モデルブラウザ内の上下位置がユーザーによって変更されていない場合には、0 になっています。 |
TypeInfoProperties |
R |
TypeInfoPropertiesを参照する場合に利用します。 (ビルド1500以降で利用可能) |
|
UMLVersion |
string |
RW |
XML出力時のバージョンを示しています。 |
UseDTD |
bool |
RW |
XML出力時にDTDを利用するかどうかを指定します。 |
Version |
string |
RW |
パッケージのバージョンです。 |
XMLPath |
string |
RW |
XMLファイルを出力する位置です。 |
操作
操作 |
戻り値の型 |
説明 |
ApplyGroupLock (string aGroupName) |
bool |
このパッケージに対して、グループを指定してグループロックを設定します。 ロックの設定に成功した場合には、true が、失敗した場合には false が戻ります。GetLastErrorで失敗原因を確認できます。
引数:
|
ApplyGroupLockRecursive (string aGroupName, bool IncludeElements, bool IncludeDiagrams, bool IncludeSubPackages) |
bool |
このパッケージおよびすべての子パッケージに対して、グループを指定してグループロックを設定します。
ロックの設定に成功した場合には、trueが、失敗した場合にはfalseが戻ります。GetLastErrorで失敗原因を確認できます。
引数:
|
ApplyUserLock() |
bool |
このパッケージに対して、現在のユーザーで排他ロックを設定します。 ロックの設定に成功した場合には、trueが、失敗した場合にはfalseが戻ります。GetLastErrorで失敗原因を確認できます。 |
ApplyUserLockRecursive (bool IncludeElements, bool IncludeDiagrams, bool IncludeSubPackages) |
bool |
このパッケージおよびすべての子パッケージに対して、現在のユーザーで排他ロックを設定します。
ロックの設定に成功した場合には、trueが、失敗した場合にはfalseが戻ります。GetLastErrorで失敗原因を確認できます。
引数:
|
Clone() |
object |
このパッケージと同じ内容のパッケージ(GUIDは異なります)を、同じ親パッケージの下に複製します。 戻り値は新しく作成されたパッケージです。 |
FindObject (string DottedID) |
object |
指定されたパッケージや要素・属性・操作などを返します。 指定された項目が見つからない場合にはエラーが発生します。
引数:
|
GetLastError() |
string |
最後に発生したエラーの詳細情報です。エラーが発生したときには例外が発生しますので、この操作を利用することはほとんどありません。 |
GetTXAlias (string Code, long Flag) |
string |
複数言語機能を利用時に、指定した言語の別名を取得します。 (ビルド1526以降で利用可能)
引数:
- 0 = プロジェクトに保存されている情報を取得 - 1 = プロジェクトに保存されている情報が更新されていれば、自動翻訳した結果を返す。更新されていなければ、プロジェクトに保存されている情報を取得 - 2 = 自動翻訳した結果を返す |
GetTXName (string Code, long Flag) |
string |
複数言語機能を利用時に、指定した言語の名前を取得します。 (ビルド1526以降で利用可能)
引数:
- 0 = プロジェクトに保存されている情報を取得 - 1 = プロジェクトに保存されている情報が更新されていれば、自動翻訳した結果を返す。更新されていなければ、プロジェクトに保存されている情報を取得 - 2 = 自動翻訳した結果を返す |
GetTXNote (string Code, long Flag) |
string |
複数言語機能を利用時に、指定した言語のノートを取得します。 (ビルド1526以降で利用可能)
引数:
- 0 = プロジェクトに保存されている情報を取得 - 1 = プロジェクトに保存されている情報が更新されていれば、自動翻訳した結果を返す。更新されていなければ、プロジェクトに保存されている情報を取得 - 2 = 自動翻訳した結果を返す |
ReleaseUserLock() |
bool |
このパッケージに設定された排他ロックやグループロックを解除します。 ロックの解除に成功した場合には、trueが、失敗した場合にはfalseが戻ります。
GetLastErrorで失敗原因を確認できます。 |
ReleaseUserLockRecursive (bool IncludeElements, bool IncludeDiagrams, bool IncludeSubPackages) |
bool |
指定された条件で、排他ロックやグループロックを解除します。 ロックの解除に成功した場合には、trueが、失敗した場合にはfalseが戻ります。GetLastErrorで失敗原因を確認できます。
引数:
|
SetReadOnly (bool ReadOnly, bool IncludeSubPkgs) |
なし |
パッケージの内容を読み込み専用(編集不可)に設定、あるいは解除します。 もし、セキュリティ(アクセス権)機能が有効になっている場合には、パッケージの管理のアクセス権が必要です。 必要なアクセス権を持っていない場合には、例外がスローされます。 GetLastError( )でエラーの内容を確認できます。
引数:
バージョン管理機能を利用している場合、この操作はチェックアウト状態に関わらず利用可能です。セキュリティ(アクセス権)機能が有効になっている場合でパッケージに対する編集権限がない場合には、この操作も利用できません。 |
SetTXAlias (string Code, string Translation) |
なし |
複数言語機能を利用時に、指定した言語の別名を設定します。 (ビルド1526以降で利用可能)
引数:
|
SetTXName (string Code, string Translation) |
なし |
複数言語機能を利用時に、指定した言語の名前を設定します。 (ビルド1526以降で利用可能)
引数:
|
SetTXNote (string Code, string Translation) |
なし |
複数言語機能を利用時に、指定した言語のノートを設定します。 (ビルド1526以降で利用可能)
引数:
|
Update() |
bool |
既存の要素を変更した場合や新しい要素を追加した場合に更新するメソッドです。falseが返された場合にはGetLastErrorメソッドで詳細な情報を取得できます。 パッケージ要素にはElement属性が指す要素も常に考慮する必要があります。このパッケージオブジェクトには階層構造や中身の情報が含まれています。 Element属性が指す要素には、ステレオタイプや制約などの情報が含まれています。 |
VersionControlAdd (string ConfigGuid, string XMLFile, string Comment, bool KeepCheckedOut) |
なし |
対象のパッケージをバージョン管理の対象として追加します。バージョン管理の設定とXMIファイルの名前を指定する必要があります。 処理に失敗した場合には例外が発生しますので、GetLastError( )を利用して詳細情報を取得してください。 パッケージの内容を編集した場合には、VersionControlAdd()を呼ぶ前にUpdate()を実行してください。編集内容が破棄される場合があります。
引数:
|
VersionControlCheckin (string Comment) |
なし |
パッケージをコミットします。次のVersionCntrolCheckinExもご覧ください。 コミットに失敗した場合には、例外がスローされます。GetLastError( )でエラーに関する情報を取得できます。
引数:
|
VersionControlCheckinEx (string Comment, bool PreserveCrossPkgRefs) |
なし |
バージョン管理されているパッケージのコミットを実行します。 コミットに失敗した場合には、例外がスローされます。GetLastError( )でエラーに関する情報を取得できます。
引数:
|
VersionControlCheckout (string Comment) |
なし |
パッケージをチェックアウトします。 チェックアウトに失敗した場合には、例外がスローされます。GetLastError( )でエラーに関する情報を取得できます。
引数:
複数のプロジェクトとバージョン管理機能を利用して分散設計を行っている場合で、バージョン管理されているパッケージにまたがって要素や接続を利用している場合には、定期的にRepository.ScanXMIAndReconcile( )を実行して整合性を確保することをお勧めします。 また、Package.VersionControlGetLatest( )を実行した後にも、 ScanXMIAndReconcileの実行をお勧めします。 |
VersionControlGetLatest (bool ForceImport) |
なし |
対象のパッケージの内容をバージョン管理ツールから取得し、内容を更新します。
引数:
バージョン管理機能のページの「最新バージョンの取得」もご覧ください。
複数のプロジェクトとバージョン管理機能を利用して分散設計を行っている場合で、バージョン管理されているパッケージにまたがって要素や接続を利用している場合には、定期的にRepository.ScanXMIAndReconcile( )を実行して整合性を確保することをお勧めします。 また、Package.VersionControlGetLatest( )を実行した後にも、 ScanXMIAndReconcileの実行をお勧めします。 |
VersionControlGetStatus() |
int |
バージョン管理ツールから現在の状態を取得します。 処理に失敗した場合には、例外がスローされます。GetLastError( )でエラーに関する情報を取得できます。 戻り値は次の列挙型になります。
enum EnumCheckOutStatus { csUncontrolled = 0, csCheckedIn, csCheckedOutToThisUser, csReadOnlyVersion, csCheckedOutToAnotherUser, csOfflineCheckedIn, csCheckedOutOfflineByUser, csCheckedOutOfflineByOther, csDeleted, };
|
VersionControlPutLatest (string CheckInComment) |
なし |
コミットを実行し、状態を引き続きチェックアウトのままにします。
処理に失敗した場合には例外が発生します。 GetLastError( ) で詳細情報を取得できます。 パッケージがオフラインチェックアウトに設定されている場合で、この処理が成功した場合には、オフラインチェックアウトの状態は解除されます。
引数:
|
VersionControlRemove() |
なし |
パッケージをバージョン管理の対象から外します。 処理に失敗した場合には、例外がスローされます。GetLastError( )でエラーに関する情報を取得できます。 |
VersionControlResynchPkgStatus (bool ClearSettings) |
なし |
バージョン管理の状態をバージョン管理ツールから取得し、最新の状態に更新します。
引数:
|
参照: