From 74a044ad634e47b50461d92e9171af640e283262 Mon Sep 17 00:00:00 2001 From: Yuri Blankenstein Date: Tue, 26 Nov 2024 21:08:04 +0100 Subject: [PATCH] #10 Use EcoreDoc to generate meta-model documentation in developer guide --- .../adoc/_section_ecoredoc.adoc | 2542 ----------------- .../nl.esi.pps.doc.developer/adoc/index.adoc | 3 +- plugins/nl.esi.pps.doc.developer/pom.xml | 29 + pps.setup | 8 +- releng/nl.esi.pps.configuration/pom.xml | 38 + .../nl.esi.pps.target.target | 148 +- 6 files changed, 149 insertions(+), 2619 deletions(-) delete mode 100644 plugins/nl.esi.pps.doc.developer/adoc/_section_ecoredoc.adoc diff --git a/plugins/nl.esi.pps.doc.developer/adoc/_section_ecoredoc.adoc b/plugins/nl.esi.pps.doc.developer/adoc/_section_ecoredoc.adoc deleted file mode 100644 index 8f75afd..0000000 --- a/plugins/nl.esi.pps.doc.developer/adoc/_section_ecoredoc.adoc +++ /dev/null @@ -1,2542 +0,0 @@ -//// - // Copyright (c) 2018-2023 TNO and Contributors to the GitHub community - // - // This program and the accompanying materials are made available - // under the terms of the MIT License which is available at - // https://opensource.org/licenses/MIT - // - // SPDX-License-Identifier: MIT -//// - -// IMPORTANT: This document was automatically generated from the ecore models -// by a tooling which is not available in the open source. - -include::_initCommon.adoc[] - -// White Up-Pointing Triangle -:wupt: △ - -:inherited: {wupt}{nbsp} - -// Black Up-Pointing Triangle -:bupt: ▲ - -:override: {bupt}{nbsp} - -// White Down-Pointing Triangle -:wdpt: ▽ - -:inheritedBy: {wdpt}{nbsp} - -// Black Down-Pointing Triangle -:bdpt: ▼ - -:overriddenBy: {bdpt}{nbsp} - -:toc: -:toclevels: 4 -:miscellaneous.tabsize: 2 -:tabsize: 2 -:icons: font -:experimental: -:source-highlighter: pygments -:prewrap!: -:table-caption!: - -= PPS meta-models - - -[[architecture]] -== Contents of architecture - -The architecture meta-model defines the minimal set of concepts that are required to define the xref:tmsc[TMSC] meta-model. -The architecture package contains sub-packages that represent the lifecycle stages of an architecture as inspired by Koziolek et al.footnote:[H. Koziolek, "Performance Evaluation of Component-based Software Systems: A Survey", Elsevier, 2010.], where the author presents a view on the software component lifecycle. -This study considers 4 levels of lifecycle stages: the xref:specified[specification], xref:implemented[implementation], deployment and runtime level. -This architecture considers an additional distinction in the runtime level, which is divided in the (runtime) xref:instantiated[instantiated] and (runtime) stimulated stage. -The xref:tmsc[TMSC] meta-model defines concepts that belong to the stimulated stage. - -[[architecture-ecore-diagram]] -.Diagram of the architecture meta-model -image::{metamodelsdir}/architecture.png[width=1523,height=609] - - - - -Ns Prefix:: architecture -Ns URI:: http://www.esi.nl/pps/architecture - -=== Types - -[[architecture-ArchitectureModel]] -==== Interface ArchitectureModel - -ArchitectureModel is a marker interface for root containers that contain architecture elements. Is is not required for an architecture to implement the interface, but it may speed up certain analyses. - - - -.Used at -* `<>` - -[[architecture-NamedArchitectureElement]] -==== Abstract Class NamedArchitectureElement - - - - -.Super-types -* `<>` - -.Sub-types -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`name`[[architecture-NamedArchitectureElement-name]] -|`EString` -| -| -|=== - - -[[deployed]] -== Contents of deployed - -In the Deployed lifecycle stage, the implemented software components are built and bundled into binaries. -At this stage, the binaries are placed into a filesystem from where they can be installed to the different hosts. -The installation takes place during the transition from Deployed to Instantiated stage. -During this transition the binaries are mapped (installed) to specific hosts. -We consider for the sake of simplicity that the deployment of binaries onto hosts is static and performed before the system is initiated/started. - -[[deployed-ecore-diagram]] -.Diagram of the deployed lyfecycle stage in the architecture meta-model -image::{metamodelsdir}/deployed.png[width=208,height=323,pdfwidth=1.73in,pdfheight=2.69in] - - -Ns Prefix:: architecture_deployed -Ns URI:: http://www.esi.nl/pps/architecture/deployed - -=== Types - -[[deployed-Host]] -==== Class Host - - - - -.Super-types -* `<>` -* `<>` - -.Used at -* `<>` - - -[[implemented]] -== Contents of implemented - -In the Implementation lifecycle stage, the specified software components and interfaces are implemented. -Depending on the software architecture, as well as the execution platform, a component may have more than one implementation, which may be related to a specific execution platform (i.e., programming language, type of processing unit, etc.) or other factors (i.e., quality of service, etc.) - -[[implemented-ecore-diagram]] -.Diagram of the implemented lyfecycle stage in the architecture meta-model -image::{metamodelsdir}/implemented.png[width=911,height=503] - - -Ns Prefix:: architecture_implemented -Ns URI:: http://www.esi.nl/pps/architecture/implemented - -=== Enumerations - -[[implemented-FunctionParameterKind]] -==== FunctionParameterKind - - -Default Value:: `in` - -.Literals -[cols="<20m,>10m,<70a",options="header"] -|=== -|Symbol -|Value -|Description - -|IN[[implemented-FunctionParameterKind-IN]] -|0 -| - -|OUT[[implemented-FunctionParameterKind-OUT]] -|1 -| - -|IN_OUT[[implemented-FunctionParameterKind-IN_OUT]] -|2 -| - -|RETURN[[implemented-FunctionParameterKind-RETURN]] -|3 -| -|=== - -.Used at -* `<>` - -=== Types - -[[implemented-Function]] -==== Class Function - - - - -.Super-types -* `<>` -* `<>` - -.Sub-types -* `<>` -* `<>` -* `<>` - -.Containments -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`parameters`[[implemented-Function-parameters]] -|`<>` - -_EOpposite:_ `<>` -| -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`operation`[[implemented-Function-operation]] - -`<>` -|`<>` -| -| -|=== - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -[[implemented-FunctionParameter]] -==== Class FunctionParameter - - - - -.Super-types -* `<>` -* `<>` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`kind`[[implemented-FunctionParameter-kind]] -|`<>` -|`[1]` -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`function`[[implemented-FunctionParameter-function]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -*container* + -`[1]` -| -|=== - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -[[implemented-IPCClientFunction]] -==== Class IPCClientFunction - -A Component that executes (see TMSC) IPCClientFunction X' referring to Operation X, requires the Interface containing Operation X. - - - -.Super-types -* `<>` -* `<>` -* `<>` -* `<>` - -[[implemented-IPCFunction]] -==== Abstract Class IPCFunction - - - - -.Super-types -* `<>` -* `<>` -* `<>` - -.Sub-types -* `<>` -* `<>` - -.Operations -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Aspect and Type -|Properties -|Description -.1+|_abstract_ `getOperation()`[[implemented-IPCFunction-getOperation]] - -`<>` -|_returns_ + -`<>` -|`[1]` -| - -|=== - -[[implemented-IPCServerFunction]] -==== Class IPCServerFunction - -A Component that executes (see TMSC) IPCServerFunction Y' referring to Operation Y, provides the Interface containing Operation Y. - - - -.Super-types -* `<>` -* `<>` -* `<>` -* `<>` - - -[[instantiated]] -== Contents of instantiated - -At instantiated stage the system is started, and the components are instantiated and start living in memory. -Here, the runtime component takes form and is mapped on OS execution entities, i.e., on a specific thread which is mapped on specific process, etc. -Communication ports are created and instantiated enabling communication among the runtime components. -The OS execution entities, i.e., processes and threads are mapped on specific processing unit, with specific scheduling policies, priorities, etc. - -[[instantiated-ecore-diagram]] -.Diagram of the instantiated lyfecycle stage in the architecture meta-model -image::{metamodelsdir}/instantiated.png[width=427,height=299,pdfwidth=3.56in,pdfheight=2.49in] - - -Ns Prefix:: architecture_instantiated -Ns URI:: http://www.esi.nl/pps/architecture/instantiated - -=== Types - -[[instantiated-Executor]] -==== Class Executor - - - - -.Super-types -* `<>` -* `<>` - -.Operations -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Aspect and Type -|Properties -|Description -.1+|_abstract_ `getHost()`[[instantiated-Executor-getHost]] -|_returns_ + -`<>` -| -|Typically an executor is deployed onto a host, but PPS doesn't make any assumptions on the kind of relation, hence this relation is merely implemented as an operation and it is up to the architecture implementer to define the relation. -The default implementation of this method returns the container of type Host in the hierarchy of this Executor. - -|=== - -.Used at -* `<>` -* `<>` - -[[instantiated-ExecutorGroup]] -==== Interface ExecutorGroup - -The ExecutorGroup allows to create logical groups of Executors that have a relation. When selecting an ExecutorGroup in the Outline view of the TMSC viewer, all its Executors will be visualized. - - - -.Operations -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Aspect and Type -|Properties -|Description -.1+|_abstract_ `getExecutors()`[[instantiated-ExecutorGroup-getExecutors]] -|_returns_ + -`<>` -|unique -|Typically an ExecutorGroup contains Executors, but PPS doesn't make any assumptions on the kind of relation, hence this relation is merely implemented as an operation and it is up to the architecture implementer to define the relation. -The default implementation of this method returns all first-level descendants of this ExecutorGroup that are of kind Executor, meaning if an Executor contains another Executor, the latter will not be included in the result. - -|=== - - -[[metric]] -== Contents of metric - -[[metric-ecore-diagram]] -.Diagram of the Metric meta-model -image::{metamodelsdir}/metric.png[width=754,height=479,pdfwidth=6.28in,pdfheight=3.99in] - - -Ns Prefix:: tmsc_metric -Ns URI:: http://www.esi.nl/tmsc/metric - -=== Types - -[[metric-Metric]] -==== Class Metric - - - - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`budget`[[metric-Metric-budget]] -|`<>` -| -| - -|`configuration`[[metric-Metric-configuration]] -|`EString` -| -| - -|`id`[[metric-Metric-id]] -|`EString` -|`[1]` -| - -|`name`[[metric-Metric-name]] -|`EString` -|`[1]` -| -|=== - -.Containments -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`instances`[[metric-Metric-instances]] -|`<>` - -_EOpposite:_ `<>` -|_EKeys:_ `id` -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`category`[[metric-Metric-category]] -|`<>` - -_EOpposite:_ `<>` -|`[1]` -| - -|`tmscs`[[metric-Metric-tmscs]] -|`<>` -| -|The TMSCs that were analyzed to resolve the Metric instances that are contained by this Metric. -|=== - -.Used at -* `<>` -* `<>` -* `<>` - -[[metric-MetricCategory]] -==== Class MetricCategory - - - - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`name`[[metric-MetricCategory-name]] -|`EString` -|`[1]` -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`metrics`[[metric-MetricCategory-metrics]] -|`<>` - -_EOpposite:_ `<>` -| -| -|=== - -.Used at -* `<>` -* `<>` - -[[metric-MetricInstance]] -==== Class MetricInstance - - - - -.Super-types -* `<>` -* `<>` -* `<>` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`exceedsBudget`[[metric-MetricInstance-exceedsBudget]] -|`EBoolean` -|unchangeable + -derived + -transient + -volatile -| - -|`id`[[metric-MetricInstance-id]] -|`EString` -|`[1]` -| - -|`name`[[metric-MetricInstance-name]] - -`<>` -|`EString` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`metric`[[metric-MetricInstance-metric]] -|`<>` - -_EOpposite:_ `<>` -|*container* + -`[1]` -| -|=== - -.Used at -* `<>` - -[[metric-MetricModel]] -==== Class MetricModel - - - - -.Containments -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`categories`[[metric-MetricModel-categories]] -|`<>` -|_EKeys:_ `name` -| - -|`metrics`[[metric-MetricModel-metrics]] -|`<>` -|_EKeys:_ `id` -| -|=== - - -[[properties]] -== Contents of properties - -[[properties-ecore-diagram]] -.Diagram of the properties meta-model -image::{metamodelsdir}/properties.png[width=580,height=83,pdfwidth=4.83in,pdfheight=0.69in] - - -Ns Prefix:: properties -Ns URI:: http://www.esi.nl/properties - -=== Data Types - -[[properties-EPropertyValue]] -==== EPropertyValue - - -Instance Type Name:: `java.io.Serializable` - -.Used at -* `<>` - -=== Types - -[[properties-PropertiesContainer]] -==== Abstract Class PropertiesContainer - -The PropertiesContainer facilitates the seamless extension of specific modeling elements with additional attributes, that are required for specific type of analysis. Though this allows rapid prototyping or customer specific annotations, for every property that is added to the model the question should be raised if this property is a primary citizen of the meta-model. If so, the property should be promoted as attribute or reference in the meta-model. - - - -.Sub-types -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -.Containments -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`properties`[[properties-PropertiesContainer-properties]] -|`<>` -| -| -|=== - -[[properties-PropertyMapEntry]] -==== Class PropertyMapEntry - - -Instance Type Name:: `java.util.Map$Entry` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`key`[[properties-PropertyMapEntry-key]] -|`EString` -|`[1]` -| - -|`value`[[properties-PropertyMapEntry-value]] -|`<>` -| -| -|=== - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - - -[[specified]] -== Contents of specified - -In this lifecycle stage, the specification of the software components takes place. -Provided and required interfaces describe the contracts between the software components and encode the service specification. -At this stage, the software interfaces are also specified by bundling operations that each of those implements. - -[[specified-ecore-diagram]] -.Diagram of the specified lyfecycle stage in the architecture meta-model -image::{metamodelsdir}/specified.png[width=791,height=371,pdfwidth=6.59in,pdfheight=3.09in] - - -Ns Prefix:: architecture_specified -Ns URI:: http://www.esi.nl/pps/architecture/specified - -=== Types - -[[specified-Component]] -==== Class Component - - - - -.Super-types -* `<>` -* `<>` - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`providedInterfaces`[[specified-Component-providedInterfaces]] -|`<>` - -_EOpposite:_ `<>` -| -| - -|`requiredInterfaces`[[specified-Component-requiredInterfaces]] -|`<>` - -_EOpposite:_ `<>` -| -| -|=== - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -[[specified-Interface]] -==== Class Interface - - - - -.Super-types -* `<>` -* `<>` - -.Containments -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`operations`[[specified-Interface-operations]] -|`<>` - -_EOpposite:_ `<>` -| -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`providedBy`[[specified-Interface-providedBy]] -|`<>` - -_EOpposite:_ `<>` -| -| - -|`requiredBy`[[specified-Interface-requiredBy]] -|`<>` - -_EOpposite:_ `<>` -| -| -|=== - -.Used at -* `<>` -* `<>` -* `<>` - -[[specified-Operation]] -==== Class Operation - - - - -.Super-types -* `<>` -* `<>` - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`interface`[[specified-Operation-interface]] -|`<>` - -_EOpposite:_ `<>` -|*container* + -`[1]` -| -|=== - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - - -[[tmsc]] -== Contents of tmsc - - - -[[tmsc-ecore-diagram]] -.Diagram of the TMSC meta-model -image::{metamodelsdir}/tmsc.png[width=1571,height=959] - -[[callstack-ecore-diagram]] -.Diagram of call-stacks in the TMSC meta-model -image::{metamodelsdir}/callstack.png[width=1175,height=886] - -[[measurment-ecore-diagram]] -.Diagram of measurments in the TMSC meta-model -image::{metamodelsdir}/measurement.png[width=1053,height=431] - - -Ns Prefix:: tmsc -Ns URI:: http://www.esi.nl/pps/tmsc - -=== Data Types - -[[tmsc-EDuration]] -==== EDuration - -Represents a duration in nanoseconds. - -Instance Type Name:: `java.lang.Long` - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -[[tmsc-EID]] -==== EID - - -Instance Type Name:: `java.lang.String` - -.Used at -* `<>` - -[[tmsc-ETimestamp]] -==== ETimestamp - -Represents a time stamp in nanoseconds. -The timestamp can be either relative (i.e. relative to 0) or absolute (i.e. relative to the epoch). -Please note that {@link FullScopeTMSC#setEpochTime(boolean)} should be set accordingly. - -Instance Type Name:: `java.lang.Long` - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -=== Types - -[[tmsc-Dependency]] -==== Abstract Class Dependency - - - - -.Super-types -* `<>` -* `<>` - -.Sub-types -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`duration`[[tmsc-Dependency-duration]] - -`<>` -|`<>` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`endTime`[[tmsc-Dependency-endTime]] - -`<>` -|`<>` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`projection`[[tmsc-Dependency-projection]] -|`EBoolean` -| -|If true, this dependency was not originally part of the TMSC, but is an effect of projection, see nl.esi.pps.tmsc.util.TmscProjection class. -Projections should typically not be visible to the user, unless they provide additional information. - -|`scheduled`[[tmsc-Dependency-scheduled]] -|`EBooleanObject` -| -|If true, this dependency was induced by the (software) platform as result of scheduling. -If false, this dependency reflects a control or data dependency as programmed in code. -By default Executions and LifelineSegments-without-activeExecution are considered to be scheduled dependencies, see TmscRefinements#refineWithCallStacks(Lifeline). - -|`startTime`[[tmsc-Dependency-startTime]] - -`<>` -|`<>` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`timeBound`[[tmsc-Dependency-timeBound]] -|`<>` -| -|The time-bound specifies the lowerbound for the duration of this dependency. This analysis attribute is used in e.g. critical-path and slack analysis. -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`scopes`[[tmsc-Dependency-scopes]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -unordered + -transient -|All dependencies of a child-scope ScopedTMSC should be contained by its parent-scope TMSC. - -Note that this is a derived 'many' relation. Though the return type 'EList' provides methods to alter the content, no altering method should be used and will throw an UnsupportedOperationException upon usage. - -|`source`[[tmsc-Dependency-source]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -`[1]` + -transient -| - -|`target`[[tmsc-Dependency-target]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -`[1]` + -transient -| - -|`tmsc`[[tmsc-Dependency-tmsc]] -|`<>` - -_EOpposite:_ `<>` -|*container* + -`[1]` -| -|=== - -.Operations -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Aspect and Type -|Properties -|Description -.1+|_abstract_ `isEpochTime()`[[tmsc-Dependency-isEpochTime]] - -`<>` -|_returns_ + -`EBoolean` -| -| - -|=== - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -[[tmsc-DomainDependency]] -==== Class DomainDependency - - - - -.Super-types -* `<>` -* `<>` -* `<>` - -[[tmsc-EntryEvent]] -==== Class EntryEvent - - - - -.Super-types -* `<>` -* `<>` - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`execution`[[tmsc-EntryEvent-execution]] - -`<>` - -`<>` -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -transient -| -|=== - -.Used at -* `<>` - -[[tmsc-Event]] -==== Abstract Class Event - - - - -.Super-types -* `<>` - -.Sub-types -* `<>` -* `<>` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`timestamp`[[tmsc-Event-timestamp]] -|`<>` -|`[1]` -| - -|`traced`[[tmsc-Event-traced]] -|`EBoolean` -|`[1]` + -_Default:_ `true` -| -|=== - -.Containments -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`arguments`[[tmsc-Event-arguments]] -|`<>` -|resolveProxies -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`component`[[tmsc-Event-component]] -|`<>` -|`[1]` -| - -|`fullScopeIncomingDependencies`[[tmsc-Event-fullScopeIncomingDependencies]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies -| - -|`fullScopeOutgoingDependencies`[[tmsc-Event-fullScopeOutgoingDependencies]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies -| - -|`function`[[tmsc-Event-function]] -|`<>` -|`[1]` -| - -|`lifeline`[[tmsc-Event-lifeline]] -|`<>` - -_EOpposite:_ `<>` -|*container* + -`[1]` -| - -|`scopes`[[tmsc-Event-scopes]] -|`<>` -|non-resolveProxies + -unordered + -unchangeable + -derived + -transient + -volatile -|Note that this is a derived 'many' relation. Though the return type 'EList' provides methods to alter the content, no altering method should be used and will throw an UnsupportedOperationException upon usage. - -|`tmsc`[[tmsc-Event-tmsc]] -|`<>` -|non-resolveProxies + -`[1]` + -unchangeable + -derived + -transient + -volatile -| -|=== - -.Operations -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Aspect and Type -|Properties -|Description -.1+|_abstract_ `getExecution()`[[tmsc-Event-getExecution]] - -`<>` - -`<>` -|_returns_ + -`<>` -| -| - -.2+|_abstract_ `setExecution({zwsp}Execution)`[[tmsc-Event-setExecution-tmsc_Execution]] - -`<>` - -`<>` -|_returns_ + -`void` -| -| - -|`Execution` + -`<>` -| -| - -|=== - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -[[tmsc-Execution]] -==== Class Execution - -Execution should be considered final and should not be overridden. -Executions are added by means of a refinement transformation, see {@link nl.esi.pps.tmsc.transform.TmscRefinements#refineWithCallStacks(FullScopeTMSC)} - - - -.Super-types -* `<>` -* `<>` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`duration`[[tmsc-Execution-duration]] - -`<>` -|`<>` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`endTime`[[tmsc-Execution-endTime]] - -`<>` -|`<>` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`startTime`[[tmsc-Execution-startTime]] - -`<>` -|`<>` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`children`[[tmsc-Execution-children]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies -| - -|`component`[[tmsc-Execution-component]] -|`<>` -|non-resolveProxies + -`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`entry`[[tmsc-Execution-entry]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -`[1]` -| - -|`exit`[[tmsc-Execution-exit]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -`[1]` -| - -|`function`[[tmsc-Execution-function]] -|`<>` -|non-resolveProxies + -`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`lifeline`[[tmsc-Execution-lifeline]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -*container* + -`[1]` + -transient -| - -|`parent`[[tmsc-Execution-parent]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -transient -|Definition 2.3.5 - -|`root`[[tmsc-Execution-root]] -|`<>` -|non-resolveProxies + -`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`segments`[[tmsc-Execution-segments]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -unchangeable + -derived + -transient + -volatile -|Returns the LifeLineSegments for which this Execution is the active execution on its LifeLine. - -Note that this is a derived 'many' relation. Though the return type 'EList' provides methods to alter the content, no altering method should be used and will throw an UnsupportedOperationException upon usage. - -|`tmsc`[[tmsc-Execution-tmsc]] -|`<>` -|non-resolveProxies + -`[1]` + -unchangeable + -derived + -transient + -volatile -| -|=== - -.Operations -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Aspect and Type -|Properties -|Description -.1+|_abstract_ `isEpochTime()`[[tmsc-Execution-isEpochTime]] - -`<>` -|_returns_ + -`EBoolean` -| -| - -|=== - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -[[tmsc-ExitEvent]] -==== Class ExitEvent - - - - -.Super-types -* `<>` -* `<>` - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`execution`[[tmsc-ExitEvent-execution]] - -`<>` - -`<>` -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -transient -| -|=== - -.Used at -* `<>` - -[[tmsc-FullScopeTMSC]] -==== Class FullScopeTMSC - -FullScopeTMSC contains all events (via Lifeline) and dependencies of the TMSC model. -It has the startTime and endTime attributes which are timestamps derived from the TMSC model, denoting the start and end time of the considered trace. - - - -.Super-types -* `<>` -* `<>` -* `<>` -* `<>` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`duration`[[tmsc-FullScopeTMSC-duration]] - -`<>` -|`<>` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`endTime`[[tmsc-FullScopeTMSC-endTime]] - -`<>` -|`<>` -|`[1]` -| - -|`epochTime`[[tmsc-FullScopeTMSC-epochTime]] -|`EBoolean` -|`[1]` + -_Default:_ `false` -| - -|`startTime`[[tmsc-FullScopeTMSC-startTime]] - -`<>` -|`<>` -|`[1]` -| -|=== - -.Containments -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`dependencies`[[tmsc-FullScopeTMSC-dependencies]] - -`<>` -|`<>` - -_EOpposite:_ `<>` -| -| - -|`lifelines`[[tmsc-FullScopeTMSC-lifelines]] -|`<>` - -_EOpposite:_ `<>` -| -| - -|`measurements`[[tmsc-FullScopeTMSC-measurements]] -|`<>` -|resolveProxies -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`architectures`[[tmsc-FullScopeTMSC-architectures]] -|`<>` -| -|References all model roots (i.e. ArchitectureModels) that own the architectural elements that are referenced by the model elements of this FullScopeTMSC. -|=== - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -[[tmsc-FunctionArgumentMapEntry]] -==== Class FunctionArgumentMapEntry - - -Instance Type Name:: `java.util.Map$Entry` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`value`[[tmsc-FunctionArgumentMapEntry-value]] -|`EString` -|`[1]` -|For now we have chosen to persist function arguments as a String to avoid the introduction of a complex type system. -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`key`[[tmsc-FunctionArgumentMapEntry-key]] -|`<>` -|`[1]` -| -|=== - -.Used at -* `<>` -* `<>` -* `<>` - -[[tmsc-ITMSC]] -==== Interface ITMSC - - -Instance Type Name:: `nl.esi.pps.tmsc.ITMSC` - -.Sub-types -* `<>` -* `<>` -* `<>` - -.Operations -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Aspect and Type -|Properties -|Description -.1+|_abstract_ `getDependencies()`[[tmsc-ITMSC-getDependencies]] - -`<>` - -`<>` -|_returns_ + -`<>` -|unique -| - -.1+|_abstract_ `getEvents()`[[tmsc-ITMSC-getEvents]] -|_returns_ + -`<>` -|unique -| - -.2+|_abstract_ `getIncomingDependencies({zwsp}event)`[[tmsc-ITMSC-getIncomingDependencies-tmsc_Event]] -|_returns_ + -`<>` -|unique -| - -|`event` + -`<>` -|`[1]` -| - -.2+|_abstract_ `getOutgoingDependencies({zwsp}event)`[[tmsc-ITMSC-getOutgoingDependencies-tmsc_Event]] -|_returns_ + -`<>` -|unique -| - -|`event` + -`<>` -|`[1]` -| - -|=== - -[[tmsc-ITimeRange]] -==== Interface ITimeRange - - -Instance Type Name:: `nl.esi.pps.tmsc.ITimeRange` - -.Sub-types -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -.Operations -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Aspect and Type -|Properties -|Description -.1+|_abstract_ `getDuration()`[[tmsc-ITimeRange-getDuration]] - -`<>` - -`<>` - -`<>` - -`<>` -|_returns_ + -`<>` -|`[1]` -| - -.1+|_abstract_ `getEndTime()`[[tmsc-ITimeRange-getEndTime]] - -`<>` - -`<>` - -`<>` - -`<>` -|_returns_ + -`<>` -|`[1]` -| - -.1+|_abstract_ `getStartTime()`[[tmsc-ITimeRange-getStartTime]] - -`<>` - -`<>` - -`<>` - -`<>` -|_returns_ + -`<>` -|`[1]` -| - -.1+|_abstract_ `isEpochTime()`[[tmsc-ITimeRange-isEpochTime]] - -`<>` - -`<>` - -`<>` -|_returns_ + -`EBoolean` -|`[1]` -| - -|=== - -[[tmsc-Interval]] -==== Abstract Class Interval - - - - -.Super-types -* `<>` -* `<>` - -.Sub-types -* `<>` -* `<>` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`duration`[[tmsc-Interval-duration]] - -`<>` -|`<>` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`endTime`[[tmsc-Interval-endTime]] - -`<>` -|`<>` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`startTime`[[tmsc-Interval-startTime]] - -`<>` -|`<>` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`from`[[tmsc-Interval-from]] -|`<>` -|`[1]` -| - -|`scopes`[[tmsc-Interval-scopes]] -|`<>` -| -|Typically analysis stores its result as a ScopedTMSC. This relation can be used to avoid duplicate analysis results in the model. - -|`tmsc`[[tmsc-Interval-tmsc]] -|`<>` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`to`[[tmsc-Interval-to]] -|`<>` -|`[1]` -| -|=== - -.Operations -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Aspect and Type -|Properties -|Description -.1+|_abstract_ `getName()`[[tmsc-Interval-getName]] - -`<>` - -`<>` -|_returns_ + -`EString` -|`[1]` -| - -.1+|_abstract_ `isEpochTime()`[[tmsc-Interval-isEpochTime]] - -`<>` -|_returns_ + -`EBoolean` -| -| - -|=== - -[[tmsc-Lifeline]] -==== Class Lifeline - -Lifeline is the modeling element as defined in the UML Message Sequence Chart formalism and it is equivalent only to the instantiated nature (viewpoint) of the Component modeling element as defined in the abstract TMSC meta-model. -A lifeline contains the behavior of an Executor, in the form of a sequence of events, over a specific time span. - - - -.Super-types -* `<>` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`traced`[[tmsc-Lifeline-traced]] -|`EBoolean` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| -|=== - -.Containments -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`events`[[tmsc-Lifeline-events]] -|`<>` - -_EOpposite:_ `<>` -| -| - -|`executions`[[tmsc-Lifeline-executions]] -|`<>` - -_EOpposite:_ `<>` -| -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`executor`[[tmsc-Lifeline-executor]] -|`<>` -|`[1]` -| - -|`rootExecutions`[[tmsc-Lifeline-rootExecutions]] -|`<>` -|non-resolveProxies + -unchangeable + -derived + -transient + -volatile -| - -|`segments`[[tmsc-Lifeline-segments]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -unchangeable + -derived + -transient + -volatile -|Note that this is a derived 'many' relation. Though the return type 'EList' provides methods to alter the content, no altering method should be used and will throw an UnsupportedOperationException upon usage. - -|`tmsc`[[tmsc-Lifeline-tmsc]] -|`<>` - -_EOpposite:_ `<>` -|*container* + -`[1]` -| -|=== - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -[[tmsc-LifelineSegment]] -==== Class LifelineSegment - - - - -.Super-types -* `<>` -* `<>` -* `<>` - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`activeExecution`[[tmsc-LifelineSegment-activeExecution]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -unchangeable + -derived + -transient + -volatile -| - -|`lifeline`[[tmsc-LifelineSegment-lifeline]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -`[1]` + -unchangeable + -derived + -transient + -volatile -| -|=== - -.Used at -* `<>` -* `<>` - -[[tmsc-Measurement]] -==== Class Measurement - - - -[[measurement-ecore-diagram]] -.Diagram of measurements in the TMSC meta-model -image::{metamodelsdir}/measurement.png[width=1053,height=431] - - - - -.Super-types -* `<>` -* `<>` -* `<>` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`name`[[tmsc-Measurement-name]] - -`<>` -|`EString` -|`[1]` -| -|=== - -.Used at -* `<>` - -[[tmsc-Message]] -==== Class Message - - - - -.Super-types -* `<>` -* `<>` -* `<>` - -.Sub-types -* `<>` -* `<>` - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`controlDependencies`[[tmsc-Message-controlDependencies]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies -| -|=== - -.Used at -* `<>` - -[[tmsc-MessageControl]] -==== Class MessageControl - - - - -.Super-types -* `<>` -* `<>` -* `<>` - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`message`[[tmsc-MessageControl-message]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -`[1]` + -transient -| -|=== - -.Used at -* `<>` -* `<>` -* `<>` - -[[tmsc-Reply]] -==== Class Reply - - - - -.Super-types -* `<>` -* `<>` -* `<>` -* `<>` - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`request`[[tmsc-Reply-request]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies + -transient -| -|=== - -.Used at -* `<>` - -[[tmsc-Request]] -==== Class Request - - - - -.Super-types -* `<>` -* `<>` -* `<>` -* `<>` - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`replies`[[tmsc-Request-replies]] -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies -| -|=== - -.Used at -* `<>` - -[[tmsc-ScopedTMSC]] -==== Class ScopedTMSC - -ScopedTMSC is a sub-graph of the whole TMSC model and defined for facilitating fragmentation of the TMSC model to sub-graphs (e.g. indication of a path), i.e. events and dependencies that hold specific properties, activities, etc. -Each ScopedTMSC can be considered as a part of its parent scope TMSC and allows application of analysis techniques, i.e., critical path analysis, locally in a sub-graph. -The dependencies of a child scope are contained by its parent scope. - - - -.Super-types -* `<>` -* `<>` -* `<>` - -.Attributes -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`fqn`[[tmsc-ScopedTMSC-fqn]] -|`EString` -|`[1]` + -unchangeable + -derived + -transient + -volatile -| - -|`name`[[tmsc-ScopedTMSC-name]] -|`<>` -|`[1]` -| -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`dependencies`[[tmsc-ScopedTMSC-dependencies]] - -`<>` -|`<>` - -_EOpposite:_ `<>` -|non-resolveProxies -| - -|`origin`[[tmsc-ScopedTMSC-origin]] -|`<>` -| -|Typically a ScopedTMSC represents an analysis result that is created from a certain event or events, this is called the origin of the scope. -Setting this attribute is optional, but may help successor analyses. - -|`parentScope`[[tmsc-ScopedTMSC-parentScope]] -|`<>` - -_EOpposite:_ `<>` -|*container* + -`[1]` -| -|=== - -.Used at -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` -* `<>` - -[[tmsc-TMSC]] -==== Abstract Class TMSC - -TMSC is a directed acyclic graph with events and dependencies, and some additional structural properties. -A TMSC should at least contain all events that are referred to by its dependencies. -Two specializations are considered the FullScopeTMSC and ScopedTMSC. - - - - - -.Super-types -* `<>` -* `<>` - -.Sub-types -* `<>` -* `<>` - -.Containments -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`childScopes`[[tmsc-TMSC-childScopes]] -|`<>` - -_EOpposite:_ `<>` -|_EKeys:_ `name` -|All dependencies of a child scope should also be contained by its parent scope. -|=== - -.References -[cols="<30,<20,<20,<40a",options="header"] -|=== -|Name -|Type -|Properties -|Description - -|`fullScope`[[tmsc-TMSC-fullScope]] -|`<>` -|non-resolveProxies + -`[1]` + -unchangeable + -derived + -transient + -volatile -| -|=== - -.Used at -* `<>` diff --git a/plugins/nl.esi.pps.doc.developer/adoc/index.adoc b/plugins/nl.esi.pps.doc.developer/adoc/index.adoc index d69904b..dec0165 100644 --- a/plugins/nl.esi.pps.doc.developer/adoc/index.adoc +++ b/plugins/nl.esi.pps.doc.developer/adoc/index.adoc @@ -65,5 +65,4 @@ include::_section_data_analysis.adoc[] <<< -include::_section_ecoredoc.adoc[leveloffset=1] - +include::{gendocdir}/ecore-documentation.adoc[leveloffset=1] diff --git a/plugins/nl.esi.pps.doc.developer/pom.xml b/plugins/nl.esi.pps.doc.developer/pom.xml index 186dc03..06c097a 100644 --- a/plugins/nl.esi.pps.doc.developer/pom.xml +++ b/plugins/nl.esi.pps.doc.developer/pom.xml @@ -59,6 +59,35 @@ + + com.altran.general.emf.ecoredoc + ecoredoc-maven-plugin + 0.10.0-SNAPSHOT + + + generate-sources + + ecoredoc + + + true + + PPS meta-models + false + false + + + ../nl.esi.emf.properties/model/properties.ecore + ../nl.esi.pps.architecture/model/architecture.ecore + ../nl.esi.pps.tmsc/model/tmsc.ecore + ../nl.esi.pps.tmsc.metric/model/metric.ecore + + ${project.build.directory}/adoc-gen/ecore-documentation.adoc + + + + + org.asciidoctor asciidoctor-maven-plugin diff --git a/pps.setup b/pps.setup index 44e8fab..c479737 100644 --- a/pps.setup +++ b/pps.setup @@ -686,7 +686,7 @@ - false + true @@ -705,6 +705,12 @@ name="org.eclipse.emf.mwe2.launcher.feature.group"/> + + false + + + + ecoredoc-snapshots + https://altran-mde.github.io/ecore_doc/maven-repo + + false + + + true + + @@ -414,6 +426,32 @@ geneclipsetoc-maven-plugin ${geneclipsetoc.maven.plugin.version} + + + + org.eclipse.m2e + lifecycle-mapping + 1.0.0 + + + + + + com.altran.general.emf.ecoredoc + ecoredoc-maven-plugin + [0.0.0,) + + ecoredoc + + + + + + + + + + diff --git a/releng/nl.esi.pps.target/nl.esi.pps.target.target b/releng/nl.esi.pps.target/nl.esi.pps.target.target index b6644e7..8eef83b 100644 --- a/releng/nl.esi.pps.target/nl.esi.pps.target.target +++ b/releng/nl.esi.pps.target/nl.esi.pps.target.target @@ -1,99 +1,99 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - + + + + + + + + + - - + + - - - + + + - - + + - - - - - +