エレメント・ファクトリー
識別子:
org.eclipse.ui.elementFactories
記述:
この拡張ポイントは、エレメント・ファクトリーをワークベンチに追加するために使用されます。 エレメント・ファクトリーは、ワークベンチのシャットダウン中に永続化する IAdaptable オブジェクトを
再作成するために使用されます。
例えば、エレメント・ファクトリーを使用することによって、エディター入力を永続化します。 エディターの入力は、org.eclipse.ui.EditorInput を実装する必要があります。
エディター内の IEditorInput のライフ・サイクルには、いくつかのフェーズが存在します。
-
エディターの作成中に、エディターの初期入力が渡されます。
-
シャットダウン時には、ワークベンチの状態が取得されます。
このプロセスでは、ワークベンチは開いたエディターとその入力ごとに記録を作成します。 入力は、ファクトリー ID と起動時にエレメントを再作成するために必要な基本データを含む 2 パートの記録として保管されます。 詳しくは、org.eclipse.ui.IPersistableElement の記述を参照してください。
-
起動時には、ワークベンチの状態が読み取られ、直前のセッションの状態を持つエディターが再作成されます。
このプロセスで、ワークベンチは、開いたエディターごとに入力エレメントを再作成します。 これを行うには、入力エレメントのオリジナルのファクトリー ID が、
レジストリー内に実際に定義されているファクトリー・クラスにマップされます。
マッピングが存在し、ファクトリー・クラスが有効であれば、ファクトリー・クラスのインスタンスが作成されます。 さらにワークベンチは、ファクトリーに対し、記録内の残りの基本データからオリジナルのエレメントを再作成するよう指示します。 この結果の IAdaptable は IEditorInput にキャストされ、新しいエディターに渡されます。
構成マークアップ:
<!ELEMENT extension (factory*)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
- point - ターゲット拡張ポイントの完全修飾 ID
- id - 拡張インスタンスの ID (オプション)
- name - 拡張インスタンスの名前 (オプション)
<!ELEMENT factory EMPTY>
<!ATTLIST factory
id CDATA #REQUIRED
class CDATA #REQUIRED>
- id - このファクトリーの識別に使用する固有名
- class - org.eclipse.ui.IElementFactory を実装するクラスの完全修飾名
例:
エレメント・ファクトリー拡張の例を以下に示します。
<extension
point =
"org.eclipse.ui.elementFactories"
>
<factory
id =
"com.xyz.ElementFactory"
class=
"com.xyz.ElementFactory"
>
</factory>
</extension>
API 情報:
class 属性の値は、org.eclipse.ui.IElementFactory を
実装するクラスの完全修飾名である必要があります。 このクラスのインスタンスは、ワークベンチの記録から IAdaptable オブジェクトを作成する必要があります。
提供される実装:
ワークベンチには IResource ファクトリーが用意されています。
Java Model など、他のオブジェクト・モデル内に共通して見られる他の IAdaptable タイプを再作成するため、
ファクトリーがさらに用意されています。
Copyright (c) 2002, 2004 IBM Corporation and others.
All rights reserved. This program and the accompanying materials are made
available under the terms of the Eclipse Public License v1.0 which accompanies
this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html