Difference between revisions of "Method (extension point)"
From BioUML platform
Tagir Valeev (Talk | contribs) (→JavaScript implementation) |
Tagir Valeev (Talk | contribs) (→JavaScript implementation) |
||
Line 49: | Line 49: | ||
* Create JavaScript host object class which extends <code>ru.biosoft.analysis.javascript.JavaScriptAnalysisHost</code>. | * Create JavaScript host object class which extends <code>ru.biosoft.analysis.javascript.JavaScriptAnalysisHost</code>. | ||
− | * Register it via [[Host | + | * Register it via [[Host object (extension point)#Host_objects_for_analyses|hostObject]] extension point. |
* Add "js" attribute with registered host object name and desired method name separated by point as <code>"siteAnalysis.trackStats"</code> in the example above. | * Add "js" attribute with registered host object name and desired method name separated by point as <code>"siteAnalysis.trackStats"</code> in the example above. | ||
[[Category:Extension points]] | [[Category:Extension points]] |
Revision as of 12:58, 7 May 2013
- Identifier
- ru.biosoft.analysis.method
- Registry
- ru.biosoft.analysis.AnalysisMethodRegistry
Description
This extension point allows you to define new analyses method. Analysis methods appear under analyses/Methods
path in the repository.
Configuration Markup
<!ELEMENT analysisClass> <!ATTLIST analysisClass class CDATA #REQUIRED group CDATA #REQUIRED name CDATA #REQUIRED description CDATA #REQUIRED js CDATA #IMPLIED >
- class
- fully-qualified name of method class. This class must implement ru.biosoft.analysis.AnalysisMethod interface.
- exporter
- the fully-qualified name of a class which implements
ru.biosoft.access.DataElementExporter
interface. In most of the cases it's easier to subclass AnalysisMethodSupport. - group
- analysis group (subfolder under
analyses/Methods
) to place the analysis to. - name
- analysis name
- description
- either textual description or path to method description HTML file.
- js
- name of autogenerated JavaScript function which represents this analysis in the hostObject.function format.
Examples
The following example defines "Track statistics" analysis method:
<extension id="Track statistics" point="ru.biosoft.analysis.method"> <analysisClass class="ru.biosoft.bsa.analysis.stats.SequenceStatistics" group="BSA" name="Track statistics" description="Gather various statistics about track or FASTQ file" js="siteAnalysis.trackStats"/> </extension>
JavaScript implementation
JavaScript analysis implementation will be automatically generated if you perform the following steps:
- Create JavaScript host object class which extends
ru.biosoft.analysis.javascript.JavaScriptAnalysisHost
. - Register it via hostObject extension point.
- Add "js" attribute with registered host object name and desired method name separated by point as
"siteAnalysis.trackStats"
in the example above.