source: trunk/src/clients/web/web-extensions.xml @ 5614

Last change on this file since 5614 was 5609, checked in by Nicklas Nordborg, 11 years ago

References #1593: Extension system for the core API

Automatically set correct version number in extension definition files when building.

Added more <about> information.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Date Id
File size: 5.7 KB
Line 
1<?xml version="1.0" encoding="UTF-8" ?>
2<!--
3  $Id: web-extensions.xml 5609 2011-04-15 09:15:13Z nicklas $
4
5  Copyright (C) Nicklas Nordborg
6
7  This file is part of BASE - BioArray Software Environment.
8  Available at http://base.thep.lu.se/
9
10  BASE is free software; you can redistribute it and/or
11  modify it under the terms of the GNU General Public License
12  as published by the Free Software Foundation; either version 3
13  of the License, or (at your option) any later version.
14
15  BASE is distributed in the hope that it will be useful,
16  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  GNU General Public License for more details.
19
20  You should have received a copy of the GNU General Public License
21  along with BASE. If not, see <http://www.gnu.org/licenses/>.
22-->
23<extensions
24  xmlns="http://base.thep.lu.se/extensions.xsd"
25  id-base="net.sf.basedb.clients.web."
26  >
27  <about>
28    <version></version>
29    <name>Web client extensions points and extensions</name>
30    <description>
31      This file defines extension points and extensions for
32      the web client. The extensions are only loaded when BASE
33      starts up as a web server.
34    </description>
35    <copyright>BASE development team</copyright>
36    <email>basedb-users@lists.sourceforge.net</email>
37    <url>http://base.thep.lu.se/</url>
38  </about>
39 
40  <extension-point
41    id="menu.extensions"
42    >
43    <action-class>net.sf.basedb.clients.web.extensions.menu.MenuItemAction</action-class>
44    <name>Menu: extensions</name>
45    <description>
46      Extension point for adding extensions to the 'Extensions' menu.
47      Extensions should provide MenuItemAction instances. The rendering
48      is internal and extensions can't use their own rendering factories.
49      The context will only include information about the currently logged
50      in user, not information about the current page that is displayed.
51      The reason for this is that the rendered menu is cached as a string
52      in the user session. The menu is not updated on every page request.
53      This extension point doesn't support custom stylesheets or javascripts.
54    </description>
55  </extension-point>
56 
57  <extension-point 
58    id="bioassayset.list.tools"
59    >
60    <action-class>net.sf.basedb.clients.web.extensions.toolbar.ButtonAction</action-class>
61    <renderer-factory override="true">
62      <factory-class>net.sf.basedb.clients.web.extensions.toolbar.CompactButtonRendererFactory</factory-class>
63    </renderer-factory>
64    <name>Bioassay set: Tools</name>
65    <description>
66      Extension point for the Tools column in the bioassayset tree
67      view of an experiment. Extensions should provide ActionButton
68      instances. The default renderer factory is CompactButtonRendererFactory,
69      but this can be overridden by the extensions. Note that the tree
70      contains items of more than one type: BioAssaySet, Transformation and
71      ExtraValue. The JspContext.getItem() can return any one of those
72      types.
73    </description>
74  </extension-point>
75
76  <extension-point 
77    id="bioassayset.overviewplots"
78    >
79    <action-class>net.sf.basedb.clients.web.extensions.plot.OverviewPlotAction</action-class>
80    <name>Bioassay set: Overview plots</name>
81    <description>
82      Extension point for overview plots for a bioassay set. The overview
83      plots are usually one pre-defined plot per bioassay. For example,
84      MA plots for 2-channel data. Extensions should provide OverviewPlotAction
85      instances. The rendering is internal and generates one &lt;img&gt; tag
86      for each plot. An extension is supposed to generate the image URL that
87      leads to a servlet that creates the actual image. We recommend that
88      images are cached. See the core plot servlet for details.
89    </description>
90  </extension-point>
91 
92  <extension-point
93    id="services"
94    >
95    <action-class>net.sf.basedb.clients.web.extensions.service.ServiceControllerAction</action-class>
96    <name>Services</name>
97    <description>
98      Extension point for services. A service is a piece of code that
99      is loaded when the BASE web server starts up. The service is then running
100      as long as the BASE web server is running. It is also possible to
101      manually stop and start services. This extension point is different from
102      most others in that it doesn't affects the visible interface. Since
103      services are loaded at startup time, this also means that the
104      context passed to ActionFactory methods will not have any ClientContext
105      associated with it (eg. the InvokationContext.getClientContext()
106      always return null). There is also no meaning for extensions to specify
107      a RendererFactory.
108    </description>
109    <error-handler-factory>
110      <factory-class>net.sf.basedb.util.extensions.LoggingErrorHandlerFactory</factory-class>
111      <parameters>
112        <rememberLast>true</rememberLast>
113      </parameters>
114    </error-handler-factory>
115  </extension-point>
116
117  <!--
118    More extension points:
119    In addition to the extension points in this file, the web
120    client also defines a lot of other extension points that are
121    registered programmatically. For more information see
122    Extensions -> Installed extensions in the web client interface.
123   
124     * Toolbar extension points: Adds buttons to toolbars in
125       list and single-item view pages.
126     * Edit dialog: Adds extra tabs to edit dialogs
127     * OnSave: Add callback functionality when saving from an edit dialog
128  -->
129 
130  <extension
131    id="bioassayset.overviewplots.maplot"
132    extends="net.sf.basedb.clients.web.bioassayset.overviewplots"
133    >
134    <index>1</index>
135    <about>
136      <name>MA/Correction factor plots</name>
137      <description>
138        Generates MA and correction factor plots for
139        2-channel data.
140      </description>
141    </about>
142    <action-factory>
143      <factory-class>
144        net.sf.basedb.clients.web.extensions.plot.MAPlotFactory
145      </factory-class>
146      <parameters>
147        <width>400</width>
148        <height>300</height>
149        <plotServlet>/views/experiments/plotter/plot</plotServlet>
150      </parameters>
151    </action-factory>
152  </extension>
153 
154</extensions>
Note: See TracBrowser for help on using the repository browser.