Componentes Opcionales
Después de construir un proveedor de servicio podríamos querer añadirle un para
de útiles caracterísitcas, una para soportar nombres strings URLs y otra para
acceder al contexto a través de otros camino distintos al contexto inicial.
Soportar Nombres String URLs
Una caracterísitca útil es permitir a las apalicaciones que suministren
strings URLs como el argumento name de los métodos invocados sobre el
InitialContext(y sus subclases).
Esta característica se describió en la lección
URLs.
Para soportarla, nuestro proveedor de servicio debe tener una factoría
de contexto URL. Esta es una clase que implementa el interface
ObjectFactory. Su trabajo es devolver una
implementación de contexto URL que acepte strings URL de un
esquema particular. Por ejemplo, una implementación de contexto URL para LDAP acepta
strings URL del esquema ldap. Normalmente la
implementación de contexto URL trabaja en pareja con la implementación del contexto
principal (el que acepta strings no-URL).
La lección Añadir soporte de URLs
describe cómo añadir el soporte para URLs a nuestro proveedor de servicios.
Ponerse a Manejar Cosas
Aunque podríamos no querer soportar la federación total, un manejador (es decir, una
referencia) que se pueda unir en otros sistemas de nombrado puede ser útil para una
implementación de contexto. Esto permite que el contexto se federe al ménos como un
sitema de nombre terminar (es decir, hoja), así como permite el acceso a la
implementación de contexto a través de otros caminos que no sean el
InitialContext. Para soportar esta característica,
necesitamos decidir el formato y el contenido de la referencia de contexto y definir
la correspondiente factoría de objetos que acepte esas referencias. Esta factoría de
objetos implementa el interface
ObjectFactory.
La lección Añadir Soporte para Federación
describe cómo añadir estar característica a nuestro proveedor de servicio.
Juntándolo Todo
La siguiente imagen muestra las interacción entre los componentes de un
proveedor de servicios básico y aquello necesarios para soportar URLs y
factorías de objetos.