TMF: Added the possibility to define analysis outputs in extension point
authorGeneviève Bastien <gbastien+lttng@versatic.net>
Wed, 5 Feb 2014 19:02:32 +0000 (14:02 -0500)
committerGenevieve Bastien <gbastien+lttng@versatic.net>
Wed, 19 Feb 2014 15:48:13 +0000 (10:48 -0500)
A new element is added to the o.e.l.tmf.core.analysis extension point to be
able to associate an output to either an analysis (identified by ID) or an
analysis class. That will allow the analysis to be in the .core plugins and
views to be registered to them in the .ui plugins.

Change-Id: I7a3e542c250c35a95bc9c3712e14e731e30c5d86
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/21578
Tested-by: Hudson CI
Reviewed-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
IP-Clean: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Tested-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
org.eclipse.linuxtools.tmf.core/schema/org.eclipse.linuxtools.tmf.core.analysis.exsd

index cb943fe05d2150c89e58289b772220544109e70c..c48b0276809c27bff415e0af01bf31a5ac061a19 100644 (file)
@@ -20,6 +20,7 @@
          <sequence minOccurs="0" maxOccurs="unbounded">
             <element ref="module"/>
             <element ref="source"/>
+            <element ref="output"/>
          </sequence>
          <attribute name="point" type="string" use="required">
             <annotation>
       </complexType>
    </element>
 
+   <element name="output">
+      <annotation>
+         <documentation>
+            Associates an output with an analysis module or a class of analysis modules.
+         </documentation>
+      </annotation>
+      <complexType>
+         <choice>
+            <element ref="analysisId"/>
+            <element ref="analysisModuleClass"/>
+         </choice>
+         <attribute name="class" type="string" use="required">
+            <annotation>
+               <documentation>
+                  The class of this output.
+               </documentation>
+               <appinfo>
+                  <meta.attribute kind="java" basedOn=":org.eclipse.linuxtools.tmf.core.analysis.IAnalysisOutput"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+         <attribute name="id" type="string">
+            <annotation>
+               <documentation>
+                  An ID for this output. For example, for a view, it would be the view ID.
+               </documentation>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <element name="analysisId">
+      <annotation>
+         <documentation>
+            The output will be associated with a single analysis identified by the ID attribute.
+         </documentation>
+      </annotation>
+      <complexType>
+         <attribute name="id" type="string" use="required">
+            <annotation>
+               <documentation>
+                  The full ID of the analysis.
+               </documentation>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <element name="analysisModuleClass">
+      <annotation>
+         <documentation>
+            The output will be associated with all modules extending or implementing the 'class' attribute.
+         </documentation>
+      </annotation>
+      <complexType>
+         <attribute name="class" type="string" use="required">
+            <annotation>
+               <documentation>
+                  The module class or interface the modules need to extend or implement for this output to be applicable.
+               </documentation>
+               <appinfo>
+                  <meta.attribute kind="java" basedOn=":org.eclipse.linuxtools.tmf.core.analysis.IAnalysisModule"/>
+               </appinfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
    <annotation>
       <appinfo>
          <meta.section type="since"/>
This page took 0.028238 seconds and 5 git commands to generate.