Главная страница
Случайная страница
Разделы сайта
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Структура приложения
Базовая часть состоит из трех модулей – трех проектов Eclipse:
v com.swiftteams.people.model
Проект, реализующий модель приложения. Содержит файлы model.ecore и model.genmodel, используемые системой моделирования Eclipse для генерации классов модели.
Представляет собой плагин, реализующий расширение com.swiftteams.people.model.ModelPackage, отвечающее точке расширения org.eclipse.emf.ecore.generated_package.
Манифест-файлы обеспечивают загрузку плагина системой, в них отражены зависимости и требования плагина:
plugin.xml:
| <? xml version=" 1.0" encoding=" UTF-8"? >
<? eclipse version=" 3.0"? >
< plugin>
< extension point=" org.eclipse.emf.ecore.generated_package" >
< package uri = https:///com/swiftteams/people/model.ecore
class = " com.swiftteams.people.model.ModelPackage"
genModel = " model/model.genmodel" />
< /extension>
< /plugin>
| Manifest.mf:
| Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: com.swiftteams.people.model; singleton: =true
Bundle-Version: 1.0.0
Bundle-ClassPath:.
Bundle-Vendor: %providerName
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Export-Package: com.swiftteams.people.model,
com.swiftteams.people.model.util
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.ecore; visibility: =reexport,
org.eclipse.core.resources; bundle-version=" 3.4.0"
Bundle-ActivationPolicy: lazy
| После генерации получены классы Candidate, Comment, Company, Criteria, CriteriaRate, Element, Interview, Model, ModelFactory, ModelPackage, Rating, Sex, Vacancy.
v com.swiftteams.people.application
Реализует приложение типа расширенная платформа клиента. Отвечает за корректное отображение, возможность изменения и сохранение модели. Использует функциональность, предоставляемую Eclipse, для построения графического интерфейса, создания и управления моделью и расширяет точки, соответствующие этой функциональности. Манифест-файл отражает эти зависимости:
Manifest.mf:
| Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Application Plug-in
Bundle-SymbolicName: com.swiftteams.people.application; singleton: =true
Bundle-Version: 1.0.0
Bundle-Activator: com.swiftteams.people.application.Activator
Bundle-Vendor: SWIFTTEAMS
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
org.eclipse.core.resources,
org.eclipse.emf.ecore.xmi,
org.eclipse.ui.ide,
org.eclipse.jface.text,
org.eclipse.ui.editors,
org.eclipse.ui.forms,
com.swiftteams.people.model; bundle-version=" 1.0.0",
org.eclipse.emf.edit.ui; bundle-version=" 2.4.0",
org.eclipse.core.expressions; bundle-version=" 3.4.0",
org.eclipse.emf.transaction; bundle-version=" 1.2.0",
org.eclipse.emf.transaction.ui; bundle-version=" 1.2.0",
org.eclipse.emf.workspace.ui; bundle-version=" 1.2.0",
org.eclipse.emf.workspace; bundle-version=" 1.2.0"
Bundle-ActivationPolicy: lazy
Export-Package: com.swiftteams.people.application.projectmanager
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
| Этот проект содержит классы, реализующие редакторы кандидатов, компаний и вакансий, мастера по созданию новых объектов, слушатели меню, панели, отображающие информацию об объектах.
v com.swiftteams.people.featrure
Этот проект дает возможность внедрить приложение, состоящее из нескольких плагинов как единое целое, готовый продукт.
В состав проекта входит только один файл feature.xml, по содержимому которого ядро исполнения Eclipse определяет, какие плагины входят в продукт, какими требованиями к окружающим плагинам обладает продукт.
feature.xml:
| <? xml version=" 1.0" encoding=" UTF-8"? >
< feature
id=" com.swiftteams.people.feature"
label=" Feature Feature"
version=" 1.0.0"
provider-name=" SWIFTTEAMS" >
< description url=" https://www.example.com/description" >
[Enter Feature Description here.]
< /description>
< copyright url=" https://www.example.com/copyright" >
[Enter Copyright Description here.]
< /copyright>
< license url=" https://www.example.com/license" >
[Enter License Description here.]
< /license>
< requires>
< import plugin=" org.eclipse.ui" />
< import plugin=" org.eclipse.core.runtime" />
< import plugin=" org.eclipse.emf.ecore" />
< /requires>
< plugin
id=" com.swiftteams.people.application"
download-size=" 0"
install-size=" 0"
version=" 0.0.0"
unpack=" false" />
< plugin
id=" com.swiftteams.people.model"
download-size=" 0"
install-size=" 0"
version=" 0.0.0"
unpack=" false" />
< /feature>
|
|