org.gvsig.tools
La librería tools es una pieza importante dentro de gvSIG. Provee de una serie de utilidades y servicios en los que se apoyan el resto de módulos de gvSIG. La principal funcionalidad que aporta está relacionada con:
- Registro de puntos de extensión
- Inicialización de librerías
- Utilidades para la separación entre API e implementación, (registro de APIs, registro de implementaciones para las APIs, registro de proveedores de servicios SPI o localización de una implementación de un API)
- Monitorización de tareas
Aunque estos son los servicios más importantes que provee la librería además aporta otras utilidades que se pueden considerar estructurales a la aplicación. Como pueden ser:
- Disposables
- Interfaces para manejo de Observers-observables
- Interfaces para el manejo de visitors
- Definición de tipos de datos
- Interfaces base para evaluadores
- Persistencia de objetos
Tip
Puede encontrar información mas detallada sobre como funciona el mecanismo de librerias de gvSIG en org.gvsig.tools.library , sobre los el uso de locators podemos consultar en org.gvsig.tools.locator , y sobre managers podemos encontrar documentación en org.gvsig.tools.service .
Vamos a quedarnos ahora únicamente con tres conceptos básicos que se van a repetir a lo largo del código que vayamos viendo, y están ligados a las utilidades que nos van a permitir separar de forma estricta el API de la implementación:
- Librerías. Se trata de piezas de código asociadas normalmente a un jar que aportan una funcionalidad. Cada una de estas librerías deberán tener una clase que implementa el interface Library, normalmente extendiendo la clase AbstractLibrary. Poseen métodos para inicializar la librería que son invocados en la carga de la misma.
- Managers. Se trata de componentes que aportan una funcionalidad a la aplicación, haciendo las veces de factoría para los distintos servicios que ofrece la librería, así como de configuración de estos. Actúan a modo de singleton, ya que normalmente en la aplicación solo existe una instancia para cada uno de estos componentes. Toda librería tendrá uno a más de estos según la lógica de esta.
- Locators. Se trata de una utilidad que nos permite registrar implementaciones de managers para una librería dada, así como recuperar una implementación de manager de un API en concreto.
Estas tres piezas deberemos tenerlas muy presentes siempre que queramos usar o crear nuevos componentes ya que son los artefactos que nos van a permitir el acceso a las distintas piezas de gvSIG.