IModel インタフェース
名前空間: NextDesign.Core
説明
NextDesignの設計モデル情報へのアクセス手段を提供します。
所属エリア
名前 | 説明 |
---|---|
モデル | モデルにアクセスするAPI群です。 |
継承元
名前 | 説明 |
---|---|
IObject | 識別可能なオブジェクトを表します。 |
派生先
名前 | 説明 |
---|---|
IFrame | フレーム情報へのアクセスオブジェクトです。 |
IInteractionElement | 相互作用モデル要素情報へのアクセスオブジェクトです。 相互作用を表現する要素に共通の特性を定義します。 |
IFeature | プロダクトの特徴(フィーチャ)情報に対するアクセスオブジェクトです。 |
IProductLineModel | プロダクトライン開発支援モデルに対するアクセスオブジェクトです。 |
IConfigurationModel | プロダクトコンフィグレーションモデル対するアクセスオブジェクトです。 |
IProject | プロジェクト情報へのアクセス手段を提供します。 |
IInteraction | 相互作用モデル情報へのアクセスオブジェクトです。 |
IFeatureModel | プロダクトの特徴(フィーチャ)を構造化した管理モデルに対するアクセスオブジェクトです。 |
IRelationship | 関連情報へのアクセスオブジェクトです。 |
IProduct | プロダクト情報対するアクセスオブジェクトです。 |
プロパティ
名前 | 説明 |
---|---|
ClassName | クラス名 Metaclass の名前を取得します。 |
Description | 説明 |
Errors | このモデルのエラー情報のコレクションを取得します。 エラー情報にはサマリー情報を含みます。 |
HasError | このモデルにエラーがあるか調べます。 このモデルにエラーがある場合はTrueを返します。 この評価はサマリー情報を含みます。 |
HasErrorWithChildren | このモデル、およびこのモデルが所有する子要素以下の要素においてエラーがあるか調べます。 このモデル、およびこのモデルが所有する子要素以下の要素にエラーがある場合はTrueを返します。 この評価はサマリー情報を含みます。 |
IsDeleted | このインスタンスが削除済みであるか調べます。 |
IsDeleting | このモデルが削除中であるか調べます。 |
IsDirty | このモデルがダーティー状態(未保存)であるか調べます。 未保存の場合はTrueを返し ます。 |
IsEditable | このインスタンスが編集可能であるかを調べます。 |
IsProxy | このインスタンスがプロキシ要素であるか調べます。 プロキシ要素は、分散環境において、このインスタンス情報を記録したユニットが読み込まれていない場合に生成されます。 |
IsUnitTopModel | このインスタンスがユニットの基点モデルであるか調べます。 |
Metaclass | クラス |
ModelPath | このインスタンスのモデル階層パス モデルのルート、プロダクトラインまたはユニットにおける基点であり親要素が読み込まれていないモデルを起点としたモデル階層を、パス区切り文字("/")で結合したパス文字列を返します。 このインスタンスが属するルートノードが、親要素が読み込まれていないモデルの場合、パス区切り文字で結合したパス文字列の先頭に「\partial;」が付与されます。 |
ModelUnit | このインスタンス情報を管 理するユニット(物理ファイル)情報 |
Name | 名前 |
Owner | このインスタンスを直接所有するモデル このインスタンスが関連の場合、または、所有するモデルが存在しない場合は null を返します。 |
OwnerProject | このインスタンスを保持するプロジェクト |
メソッド
名前 | 説明 |
---|---|
AddError | このモデルに対するエラー情報を追加して、追加したエラー情報を返します。 |
AddNewModel | このインスタンスの指定されたフィールドに指定されたクラスのインスタンスをフィールド値として追加します。 インスタンスが、該当フィールドの末尾の要素として追加されます。 指定されたクラスが抽象クラスの場合でもインスタンス化を許容し、該当フィールドの末尾の要素として追加されます。 指定するフィールドは、クラス型の所有フィールドでなければなりません。 多重度が2以上のフィールドの多重度上限制約に違反しても例外はスローされません。 また、指定するクラス名は、フィールドのデータ型と互換する型を指定する必要があります。 なお、あいまい一致とするときに、一致するクラスが複数ある場合、一番最初に見つかった型互換のあるクラスのインスタンスを追加します。 |
AddNewModelAt | このインスタンスの指定されたフィールドに、追加位置を指定して指定されたクラスのインスタンスをフィールド値として追加します。 指定されたクラスが抽象クラスの場合でもインスタンス化を許容し、指定された位置にフィールド値として追加します。 指定するフィールドは、クラス型の所有フィールドでなければなりません。 なお、多重度が2以上のフィールドの多重度上限制約に違反しても例外はスローされません。 指定するクラス名は、フィールドのデータ型と互換する型を指定する必要があります。 また、あいまい一致とするときに、一致するクラスが複数ある場合、一番最初に見つかった型互換のあるクラスのインスタンスを追加します。 |
AddNewModelTo | このインスタンスの指定されたフィールドに、追加位置を指定して指定されたクラスのインスタンスをフィールド値として追加します。 指定されたクラスが抽象クラスの場合でもインスタンス化を許容し、指定された位置にフィー ルド値として追加します。 指定するフィールドは、クラス型の所有フィールドでなければなりません。 なお、多重度が2以上のフィールドの多重度上限制約に違反しても例外はスローされません。 指定するクラス名は、フィールドのデータ型と互換する型を指定する必要があります。 また、あいまい一致とするときに、一致するクラスが複数ある場合、一番最初に見つかった型互換のあるクラスのインスタンスを追加します。 |
As | このインスタンスが指定されたクラス型と互換するか調べます。 このインスタンスが指定されたクラス、またはそのサブクラスのインスタンスである場合に True を返します。 |
AsIn(IEnumerable<string>,bool) | このインスタンスが複数の string 型で指定されたクラス型と互換するか調べます。 このインスタンスが指定されたいずれかのクラス、またはそれらのサブクラスのインスタンスである場合に True を返します。 |
AsIn(string,bool) | このインスタンスがカンマ区切りの string 型で指定されたクラス型と互換するか調べます。 このインスタンスが指定されたいずれかのクラス、またはそれらのサブクラスのインスタンスである場合に True を返します。 |
AssignFeature | このモデルに指定されたフィーチャを割り当てます。 |
AssignFeatureByName | このモデルに指定された名前のフィーチャを割り当てます。 |
AssignFeatures | このモデルに指定されたすべてのフィーチャを割り当てます。 |
AssignFeaturesByName | このモデルに指定された名前のすべてのフィーチャを割り当てます。 |
CanRelate | このインスタンスの指定されたフィールドで与えられたモデルと関連づけできるか調べます。 関連づけできる場合はTrueを返します。 このメソッドでは、フィールドの型だけでなく、以下のフィールド制約についても評価します。 [評価する制約] - パス制約 - 型制約 - 多重度上限 なお、自身、もしくは関連づけするモデルが削除済みモデル、一時プロキシの場合はFalseを返します。 また、以下のフィールドが指定された場合もFalseを返します。 - プロダクトラインのフィーチャ割り当てフィールド - System.Coreタグが付与されたフィールド - 所有フィールド |
CanRelateAny | このインスタンスを与えられたモデルと関連づけできるか調べます。 このインスタンスのいずれかの参照フィールドで関連づけることができる場合はTrueを返します。 なお、自身、もしくは関連づけするモデルが削除済みモデル、一時プロキシの場合はFalseを返します。 なお、所有のフィールドに関しては対象としません。 |
Count | 指定されたフィールドの値件数を取得します。 このメソッドは、IContextOption.PlModelAccessMode を評価しません。 |
CreateAsyncValidationContext | このモデルに対する非同期検証コンテキストを生成します。 |
Delete | このインスタンスを削除します。 既に削除されたインスタンスに対してこのメソッドを呼び出した場合は何も行われません。 このインスタンスを削除することにより、以下のようなモデルに対する変更が発生します。 ・このインスタンスと所有元(親要素)との所有関連が削除されます。 ・このインスタンスを関連端とする全ての参照関連が削除されます。 ・このインスタンスが所有するすべての子要素以下の要素、およびそれらの要素を関連端とする参照関連が削除されます。 |
FindChildrenByClass | このインスタンスの所有関係にあるインスタンスのうち指定されたクラスのインスタンスを検索します。 このメソッドは、IContextOption.PlModelAccessMode を評価します。 所有関係にあるインスタンスのうち、指定されたクラスのインスタンスのコレクションを返します。 なお、クラス名に指定したクラスが見つからない場合は空のコレクションを返します。 また、該当するインスタンスが存在しない場合も空のコレクションを返します。 |
FindChildrenByClassDisplayName | このインスタンスの所有関係にあるインスタンスのうち指定された表示名をもつクラスのインスタンスを検索します。 このメソッドは、IContextOption.PlModelAccessMode を評価します。 所有関係にあるインスタンスのうち、指定された表示名をもつクラスのインスタンスのコレクションを返します。 該当するインスタンスが存在しない場合は空のコレクションを返します。 |
FindChildrenByClassTag | このインスタンスの所有関係にあるインスタンスのうち指定されたタグが付与されたクラスのインスタンスを取得します。 このメソッドは、IContextOption.PlModelAccessMode を評価します。 所有関係にあるインスタンスのうち、指定されたタグが付与されたクラスのインスタンスのコレクションを返します。 該当するインスタンスが存在しない場合は空のコレクションを返します。 |
FindChildrenByTag | このインスタンスの所有関係にあるインスタンスのうち指定されたタグが付与されたインスタンスを取得します。 このメソッドは、IContextOption.PlModelAccessMode を評価します。 所有関係にあるインスタンスのうち、指定されたタグが付与されたインスタンスのコレクションを返します。 該当するインスタンスが存在しない場合は空のコレクションを返します。 |
FindOwnerByClass | このインスタンスを保持する指定クラスの最初の所有元インスタンスを取得します。 このインスタンスを所有するインスタンスを親方向へ辿り、最初に見つかった指定クラスのインスタンスを返します。 最上位の親要素まで探索しても、該当するインスタンスが見つからなかった場合は null を返します。 なお、クラス名に指定したクラスが見つからない場合はnullを返します。 また、あいまい一致とするときに、一致するクラスが複数ある場合、一番最初に見つかったクラスのインスタンスを返します。 |
GetAllChildren | このインスタンスから所有関係の深さ優先探索で探索できるすべての所有先インスタンスを取得します。 このメソッドは、IContextOption.PlModelAccessMode を評価します。 このインスタンスを基点として所有関係の 深さ優先探索で探索できるすべての所有先インスタンスのコレクションを返します。 該当するインスタンスが存在しない場合は空のコレクションを返します。 |
GetAllErrorsWithChildren | このモデルが所有する子要素以下の要素も含めた全てのエラー情報を取得します。 エラー情報が存在しない場合は、空のコレクションを返します。 エラー情報にはサマリー情報を含みます。 |
GetAssignedFeatures | このモデルに割り当てられているすべてのフィーチャを取得します。 |
GetChildren | このインスタンスの直接の所有関係にある所有先インスタンスを取得します。 このメソッドは、IContextOption.PlModelAccessMode を評価します。 このインスタンスと直接の所有関係にある所有先インスタンスのコレクションを返します。 該当するインスタンスが存在しない場合は空のコレクションを返します。 |
GetDerivedFromRelationsOf | このモデルが指定されたモデルから導出した要素であった場合、その全ての導出関連を取得します。 例えば、このモデルが{要素A}から導出した要素であった場合に、引数に{要素A}を指定することで、その導出関連 を取得することができます。 これは、次のような処理に利用することができます。 ・要求オブジェクトと仕様オブジェクトに導出関係がある場合に、仕様オブジェクト側から、要求オブジェクトに対する関連を取得する このメソッドは、IContextOption.PlModelAccessMode を評価します。 該当する関連が存在しない場合は、空のコレクションを返します。 |
GetDerivedModels | 指定された関連クラスにより、このインスタンスから導出したインスタンスを取得します。 関連クラスが未指定(null)の場合は、全ての導出したインスタンスを取得します。 このメソッドは、IContextOption.PlModelAccessMode を評価します。 以下のケースに該当する場合は、このメソッドは空のコレクションを返します。 - 該当する導出関連で関連づけられた導出先インスタンスが存在しない - 指定された関連クラスが見つからない - 指定された関連クラスが導出関連でない - 指定された導出関連クラスによる導出先への参照フィールドが見つからない |
GetDerivedToRelationsOf | 指定されたモデルが、このモデルから導出した要素であった場合、その全ての導出関連を取得します。 例えば、このモデルから導出した{要素B}があった場合に、引数に{要素B}を指定することで、その導出関連を取得することができます。 これは、次のような処理に利用することができます。 |