XML Configuration descriptor

At the heart of the Speculoos library lies the configuration descriptor which is simply an XML file that defines the various elements of a single instance of MapperManager can handle. This configuration file is described in greater details in the following text.

A descriptor for JNDI/LDAP module has the following structure:

  • var elements that describes variables or parameters that can be used at configuration or compile time to customize the behavior of the manager,
  • sub-config elements that tells the configurator how to handle specific namespaces,
  • map elements that maps LDAP names to Java names
  • arbitrary validation logic rules that allows one to verify complex properties on

Variables

TODO

Maps

TODO

Validation rules

TODO

Mappers

Mappers come in two flavors:

  1. Generic mappers which are independent of sources
  2. Sourced mappers which are attached to a source and provides data binding.

The base Speculoos package provide the following mappers:

  • UnionMapper: a mapper that invokes several mappers with the same object and concatenates the result in a single list,
  • FunctorMapper: applies a single other mapper to a collection of inputs and concatenates the output into a list,
  • JoinMapper: binary function composition mapper, joins the output of the first (left) mapper to the input of the second (right) mapper.

UnionMapper

FunctorMapper

JoinMapper