エレメント・ファクトリー

ID: org.eclipse.ui.elementFactories

説明: この拡張ポイントは、エレメント・ファクトリーをワークベンチに追加するために使用されます。 エレメント・ファクトリーは、ワークベンチのシャットダウン中に永続化する IAdaptable オブジェクトを 再作成するために使用されます。

たとえば、エレメント・ファクトリーを使用することによって、エディター入力を永続化します。 エディターの入力は、org.eclipse.ui.EditorInput をインプリメントする必要があります。 エディター内の IEditorInput のライフ・サイクルには、いくつかのフェーズが存在します。

  1. エディターの作成中に、エディターの初期入力が渡されます。
  2. シャットダウン時には、ワークベンチの状態が取得されます。 このプロセスでは、ワークベンチは開いたエディターとその入力ごとに記録を作成します。 入力は、ファクトリー ID と起動時にエレメントを再作成するために必要な基本データを含む 2 パートの記録として保管されます。 詳しくは、org.eclipse.ui.IPersistableElement の記述を参照してください。
  3. 起動時には、ワークベンチの状態が読み取られ、直前のセッションの状態を持つエディターが再作成されます。 このプロセスで、ワークベンチは、開いたエディターごとに入力エレメントを再作成します。 これを行うには、入力エレメントのオリジナルのファクトリー ID が、 レジストリー内に実際に定義されているファクトリー・クラスにマップされます。 マッピングが存在し、ファクトリー・クラスが有効であれば、ファクトリー・クラスのインスタンスが作成されます。 さらにワークベンチは、ファクトリーに対し、記録内の残りの基本データからオリジナルのエレメントを再作成するよう指示します。 この結果の IAdaptableIEditorInput にキャストされ、新しいエディターに渡されます。

構成マークアップ:

   <!ELEMENT extension (factory*)>

   <!ATTLIST extension
     point CDATA #REQUIRED
     id    CDATA #IMPLIED
     name  CDATA #IMPLIED
   >

   <!ELEMENT factory EMPTY>

   <!ATTLIST factory
     id    CDATA #REQUIRED
     class CDATA #REQUIRED
   >

例: エレメント・ファクトリー拡張機能の例を以下に示します。

   <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 IBM Corporation and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Common Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/cpl-v10.html