de.infoasset.platform.documentation
Class PluginsDoc

java.lang.Object
  extended by de.infoasset.platform.documentation.PluginsDoc

public class PluginsDoc
extends java.lang.Object

Tricia Plugins

Tricia is built in a modular way, and can be extended by the means of plugins.

All plugins are in the workspace folder /plugins. The name of the plugin folder is the name of the plugin.

A plugin can use functionality from other plugins. This forms a depends relationship, which is defined through the Eclipse project dependency. The following picture shows the dependency graph of existing Tricia plugins.

The basic Tricia plugin is called toro and defines the basic infrastructure used by all plugins.

Code and Style Plugins

There are two different kinds of plugins: code plugins and style plugins. As the name implies, code plugins define behavior, whereas style plugins merely define look and feel.

The toro plugin in the dependency graph above is a code plugin and depends on the two style plugins jakob and jakobMenu.

The following class diagram shows the Java classes, which realize the plugin concept.

For each code plugin, there is a specific subclass of Plugin, which defines all extensions specified by the plugin (see Extension). This class has to be implemented as a singleton.

Plugin Structure

All Tricia plugins are organized the same way. This enables the use of conventions, also known as convention over configuration. This document gives a list of these conventions.

The following conventions apply to both style and code plugins:

The following conventions apply to code plugins:

Further Reading

Plugins have impact on the following topics:


Constructor Summary
PluginsDoc()
           
 
Method Summary
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PluginsDoc

public PluginsDoc()