Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Gendoc/developerResources/architecture
Contents
- 1 Features & Bundles
- 2 List of Services
- 3 Processes
Features & Bundles
- org.eclipse.gendoc.feature
- all the common bundles needed to use Gendoc
- org.eclipse.gendoc.batch
- org.eclipse.gendoc.bundle.acceleo.commons
- org.eclipse.gendoc.bundle.acceleo.gmf
- org.eclipse.gendoc.document.parser
- org.eclipse.gendoc.documents.image.svg
- org.eclipse.gendoc.documents
- org.eclipse.gendoc.m2t
- org.eclipse.gendoc.process
- org.eclipse.gendoc.script.acceleo
- org.eclipse.gendoc.services.docx
- org.eclipse.gendoc.services.odt
- org.eclipse.gendoc.services
- org.eclipse.gendoc.tags.handlers
- org.eclipse.gendoc.tags.html
- org.eclipse.gendoc.tags.hyperlink
- org.eclipse.gendoc.tags.parsers
- org.eclipse.gendoc.tags
- org.eclipse.gendoc.ui
- org.eclipse.gendoc.wizard.gmf
- org.eclipse.gendoc.wizard
- org.eclipse.gendoc
- org.eclipse.gendoc.papyrus.feature
- specific bundles (diagram and queries) for Papyrus
- org.eclipse.gendoc.wizard.papyrus
- org.eclipse.gendoc.bundle.acceleo.papyrus
- org.eclipse.gendoc.sirius.feature
- specific bundles (diagram and queries) for Sirius
- org.eclipse.gendoc.bundle.acceleo.sirius
List of Services
all of the declared services bellow can be overridden by a developer using the extension point org.eclipse.gendoc.services
org.eclipse.gendoc.services
GendocDiagnostician
- Information displayed to the user at the end of the process
- interface : org.eclipse.gendoc.services.IGendocDiagnostician
Logger
- log creation (error log for example)
- interface : org.eclipse.gendoc.services.ILogger
ProgressMonitorService
- a service to manage progress
- interface : org.eclipse.gendoc.services.IProgressMonitorService
RegistryService
- a map which can be used by developers to share data through services
- interface : org.eclipse.gendoc.services.IRegistryService
BookmarkService
- The service linked to bookmark tag
- save all the bindings from the bookmark tag
- interface : org.eclipse.gendoc.services.IBookmarkService
org.eclipse.gendoc.documents
DocumentManager
- load template Document
- interface : org.eclipse.gendoc.documents.IDocumentManager
DocumentService
- main operations for document modifications
- interface : org.eclipse.gendoc.documents.IDocumentService
IImageInfoServiceFactory
- image information and transformations for specific formats
- interface : org.eclipse.gendoc.documents.IImageManipulationServiceFactory
org.eclipse.gendoc.process
ProcessExtensionService
- Manage the list of processes of the platorm
- interface : org.eclipse.gendoc.process.IProcessExtensionService
org.eclipse.gendoc.tags
ConfigurationService
- The service linked to config tag
- information about : parameters, output path ...
- interface : org.eclipse.gendoc.tags.parsers.ITagParserService
org.eclipse.gendoc.tags.parsers
TagExtensionService
- information about registered tags through extension points
- interface : org.eclipse.gendoc.tags.ITagExtensionService
org.eclipse.gendoc.tags.handler
TagParserService
- transform text into tags
- interface : org.eclipse.gendoc.tags.handlers.IConfigurationService
ContextService
- the service linked to context tag
- information about : model path, context eobject, path to the eobject, the way to compute path ...
- interface : org.eclipse.gendoc.tags.handlers.IContextService
PropertiesService
- the service linked to properties tag
- load a file to register parameters
- interface : org.eclipse.gendoc.tags.handlers.IPropertiesService
TagHandlerService
- the service used by gendoc to determine handlers from an org.eclipse.gendoc.tags.ITag
- interface : org.eclipse.gendoc.tags.handlers.ITagHandlerService
EMFModelLoaderService
- the service which loads EMF models
- used mainly by the IConfigurationService
- interface : org.eclipse.gendoc.tags.handlers.IEMFModelLoaderService
TagAnalyserBuffer
- the service used to bufferize tag transformation content
- interface : org.eclipse.gendoc.tags.handlers.process.buffers.ITagAnalyserBuffer
org.eclipse.gendoc.m2t
ScriptLanguageExtensionService
- The service able to get a script processor
- interface : org.eclipse.gendoc.m2t.IScriptLanguageExtensionService
FragmentService
- the service linked to fragment tag
- parse and compile fragment content
- interface : org.eclipse.gendoc.m2t.IFragmentService
org.eclipse.gendoc.script.acceleo
ModuleManager
- The service able to manage acceleo modules and dependencies
- interface : org.eclipse.gendoc.script.services.IModuleManagerService
FileAndMetaModelsRegistry
- The service managing metamodels registry
- interface : org.eclipse.gendoc.script.acceleo.IFileAndMMRegistry
org.eclipse.gendoc.tags.html
HtmlService
- the service linked to richText tag
- The service able to manage rich text content (html content by default)
- interface : org.eclipse.gendoc.tags.html.IHtmlService
Processes
Processes in gendoc are java classes which implement org.eclipse.gendoc.process.IProcess (or inherit from org.eclipse.gendoc.process.AbstractProcess)
A process is declared through the extension point : org.eclipse.gendoc.processes.
Each Process mentions its id, label, if it can run in parallel, priority, and java class (processor)
It is also possible to mention predecessors or successors. It is gendoc engine which will schedule the processes according the defined rules.
List of processes
when a node have several incoming edges all the previous activities must be finished to start its execution
green edges are successor constraints, blue edges are predecessor constraints
org.eclipse.gendoc.process
- countSteps
- A process that identifies the number of steps in the document (useful for the gendoc progress monitor)
org.eclipse.gendoc
- generate
- predecessor : countSteps
- parse and analyse the tags in the document
- save
- predecessor : generate
- additionalResources
- predecessor : generate
- successor : save
- add the additional ressources potentially generated during the gendoc process
org.eclipse.gendoc.tags.handlers
- drop
- predecessor : generate
- successor : save
- remove paragraphs containing drop tags
- nobr
- predecessor : drop
- successor : save
- remove line breaks
- fragment
- predecessor : countSteps
- successor : generate
- analyse and compile fragment tags
- RegisterVariableProcess
- predecessor : countSteps
- successor : generate
- register predefined variables available in gendoc
- bookmark
- predecessor : countSteps
- successor : fragment
- analyse bookmarks for replacement
org.eclipse.gendoc.tags.html
- additionalStyles
- predecessor : generate
- successor : save
- add styles according to HTML content
org.eclipse.gendoc.bundle.acceleo.papyrus
- org.eclipse.gendoc.bundle.acceleo.papyrus.factoryassignment
- successor : countSteps
- override the factories for Papyrus model loading