Фабрики элементов
Идентификатор:
org.eclipse.ui.elementFactories
Описание:
Эта точка расширения служит для добавления в рабочую среду фабрик элементов. Фабрика элементов служит для восстановления объектов IAdaptable, сохраненных во время выключения рабочей среды.
Примером использования фабрики элементов может служить сохранение данных, вводимых в редактор. Данные, вводимые в редактор, должны обрабатываться с помощью org.eclipse.ui.EditorInput.
Жизненный цикл IEditorInput в редакторе состоит из нескольких этапов.
-
Начальные данные для редактора передаются во время его создания.
-
При выключении рабочей среды делается снимок ее состояния.
Рабочая среда в это время создает копии для каждого открытого редактора и его данных. Введенные данные сохраняются в двухкомпонентной копии, содержащей ИД фабрики и базовые данные, необходимые для восстановления элемента при запуске. Дополнительные сведения см. в документации по org.eclipse.ui.IPersistableElement.
-
При запуске состояние рабочей среды считывается, и по нему восстанавливаются редакторы, открытые в предыдущем сеансе.
В это время рабочая среда восстанавливает введенные элементы для каждого открытого редактора. Для этого она сопоставляет первоначальный ИД фабрики для введенного элемента с конкретным классом, определенным в регистре.
Если запись преобразования существует, и класс фабрики допустим, то создается экземпляр этого класса фабрики. Затем рабочая среда просит фабрику восстановить первоначальный элемент по оставшимся базовым данным в копии. Результат восстановления, IAdaptable, приводится к IEditorInput и передается в новый редактор.
Описание конфигурации:
<!ELEMENT extension (factory*)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
- point - полный идентификатор целевой точки расширения
- 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.
Для восстановления других типов IAdaptable, обычно имеющихся в других моделях объектов, например, модели Java, следует добавить дополнительные фабрики.
Copyright (c) 2002, 2004 IBM Corporation and others.
Все права защищены.
Эта программа и сопутствующие материалы распространяются на условиях Eclipse Public License v1.0, поставляемой вместе с продуктом и доступной на Web-сайте
http://www.eclipse.org/legal/epl-v10.html