Personal tools
Document Actions

Diseño

by Victor Acevedo last modified 2010-06-01 22:52

Fallo al cargar la imagen

Clases de diseño del subsistema modelServers

Publication

Esta clase representa la publicación que se puede realizar en un servidor.

Operaciones

setServer(s:Server) Inicializamos la publicación con un servidor

getServer():Server Obtenemos el servidor de la publicación

Excepciones

TODO

Server

Representa un servidor abstracto. Un servidor puede ofrecer varios servicios.

Operaciones

Server() Constructor por defecto, inicializa el servidor con todos los servicios que se han registrado en él.

Server(service:String) Constructor en el que sólo se inicializa con el servicio especificado

getType():String Devuelve una cadena que identifica el tipo de servidor. Por ejemplo, "mapserver".

toString():String Sobreescribimos el método "toString" para obtener el nombre del servidor.

initialize(view:IViewInfo) Inicializamos el servidor con la información de una vista. Para cada servicio invocamos su metodo initialize()

postInitialize() Una vez inicializado el servidor este método comprueba que cada recurso remoto de sus servicios es compatible con el servidor. Para cada servicio invoca su metodo postInitialize().

addService(service:String) Añadimos el servicio a partir del nombre del servicio.

getService(service:String):Service Obtenemos un servicio del servidor a partir del nombre del servicio.

getService(position:int):Service Obtenemos un servicio del servidor a partir de un número que indica el orden en que se introdujo.

getServicesCount():int Obtenemos el número de servicios que tiene actualmente el servidor.

publish() Método abstracto para generar la publicación, es decir, los ficheros de configuración. Llama a los métodos "publish()" de todos sus servicios. Cualquier servidor heredado deberá sobrescribir este método para realizar las operaciones pertinentes, finalmente llamará al método del padre super.publish() para que se realice la publiación de los servicios.

Excepciones

TODO

Service

Clase que representa un servicio abstracto. Una servicio ofrece varios recursos remotos accesibles por un cliente de dicho servicio.

Operaciones

getType():String Devuelve una cadena que identifica el tipo de servicio. Por ejemplo, "mapserver_wms".

toString():String Sobreescribimos el método "toString" para obtener el nombre del servicio.

initialize(view:IViewInfo) Inicializamos el servicio con la información de una vista. Para cada capa de la vista creamos un recurso remoto.

postInitialize() Una vez inicializado el servicio este método comprueba que cada uno de sus servicios remotos es compatible con el servidor y el servicio.

getRemoteResource(position:int):RemoteResource Obtenemos un recurso remoto del servicio a partir de un número que indica el orden en que se introdujo.

getRemoteResourcesCount():int Obtenemos el número de recursos remotos que tiene actualmente el servicio.

publish() Método abstracto para generar la publicación, es decir, los ficheros de configuración. Llama a los métodos "publish()" de todos sus recursos remotos.

Excepciones

TODO

RemoteResource

Operaciones

getType():String Devuelve una cadena que identifica el tipo de recurso remoto. Por ejemplo, "mapserver_wms_layer".

toString():String Sobreescribimos el método "toString" para obtener el nombre del recurso remoto.

initialize(view:ILayerInfo) Inicializamos el recurso con la información de una capa. En el caso de capas anidadas creamos una recursos remoto por cada capa hija.

postInitialize() Comprobamos que todos sus recursos remotos hijos son compatibles con el servidor y el servicio.

getRemoteResource(position:int):RemoteResource Obtenemos un recurso remoto hijo a partir de un número que indica el orden en que se introdujo.

getRemoteResourcesCount():int Obtenemos el número de recursos remotos hijos.

publish() Método abstracto para generar la publicación, es decir, los ficheros de configuración. Llama a los métodos "publish()" de todos sus recursos remotos hijos.

Excepciones

TODO

ServerRegister

Clase encargada de registrar los servidores disponibles para la extensión. Cada plugin de servidor deberá registrarse en este registro.

Operations

addServer(key:String, clase:Class) Registramos un nuevo servidor en la extensión a partir de una cadena que lo identifica (key).

getServerNames():Set Devuelve los nombres (keys) de todos los servidores registrados.

getInstance(key:String) Crea una instancia del servidor especificado por "key".

Excepciones

TODO

ServiceRegister

Clase encargada de registrar los servicios disponibles para la extensión. Cada plugin de servidor deberá registrar sus servicios en este registro.

Operations

addService(key_server:String, key_service:String, clase:Class) Registramos un nuevo servicio correspondiente a un servidor a partir de una cadena que identifica el servidor (key_server) y al servicio (key_service).

getServiceNames(key_server:String):Set Devuelve los nombres (keys) de todos los servicios registrados para un servidor.

getInstance(key_server:String, key_service:String) Crea una instancia del servicio especificado por "key_service" correspondiente al servidor "key_server".

Excepciones

TODO

RemoteResourceRegister

Clase encargada de registrar los recursos remotos correspondientes a un servicio concreto. Cada plugin de servidor deberá registrar sus recursos remotos en este registro.

Operations

addRemoteResource(key_service:String, key_remoteResource:String, clase:Class) Registramos un nuevo recurso remoto asociado a un servicio.

getRemoteResourcesNames(key_service:String):Set Devuelve los nombres (keys) de todos los recursos remotos asociados a un servicio.

getInstance(key_service:String, key_remoteResource) Crea una instancia del recurso remoto especificado por "key_remoteResource" asociado al servicio identificado por la clave "key_service".

Excepciones

TODO


Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: