FortuneCookie, a gvSIG plugin
.. include-document:: org.gvsig.tools/reference-links
:rest:
The *FortuneCookie* project is a very simple example plugin that aims to serve as a template to be followed by the developer when implementing their own plugins.
But, what advantages gives us the use of the diferents *FortuneCookies* projects? In principle, the most direct benefit is pretty obvious, since the fact of working on fully implemented a complete project that compiles and runs, can focus more on developing the code than in configuration tasks. And is that all *FortuneCookies* projects have declared their POM files with all the minimum dependences to run, and to establish relationships between them.
Therefore, to say that we have a project that will provide a number of basic, complete, compilable and run structures from which begin our development.
It presents several implementations that allow the developer show the highlights to be covered by your plugin depending on which option best suits the nature of the project. The variants presented are:
- **Basic**. Develop the essential elements in any project, such as the API and implementation.
- **With service providers**. Presents the necessary structure to implement a plugin that makes use of service providers to perform their functions. It gives the basic variant of the SPI definition and implementation of two providers: one through *FortuneCookies* provided by a Web service, and another from a local text file.
- **With graphical user interface (GUI)**. Add the basic variant the entire structure to develop the GUI project. Provides the API and implementation Swing module responsible for the GUI, among which is the definition of the panels and the various tools for management and visualization.
- **With service providers and GUI**. This project join the above two points into one.
Should you require more information on any of the alternatives mentioned are advised to consult the document `org.gvsig.tools.service`_
Moreover there is the option of **GUI providers**. This will be the option if, in addition to the above, support is required for the acquisition of user interfaces provided by vendors (currently under construction).