Checkpoint commit for OPENDJ-1308 Migrate schema support
Preparation work to switch to new configuration framework (in opendj-config)
and new schema (in opendj-core).
This code is not used (called) yet by the server.
It contains several TODOs mainly to use correct messages for errors and logging.
* Add SchemaProvider interface, common interface to all schema providers
* Add CoreSchemaProvider class, providing core schema matching rules
and syntaxes
* Add SchemaUpdater interface, providing a way to abstract the
update of schema server
* Add SchemaProvider and CoreSchemaProvider xml configurations to
prevent errors when loading configuration with legacy config framework
* Add SchemaHandler class, responsible for loading the schema once
the configuration is available, using schema providers
* Add entry for Core Schema provider in config.ldif
* Add new objectclasses and attributes in 02-config.ldif schema file
for schema providers definitions
* Add dependency on opendj-config module to use the new configuration
framework classes
* Add ConfigurationHandler class, responsible to manage configuration entries
and listeners registration on these entries
** Will replace ConfigFileHandler
** Uses internally a MemoryBackend to manage entries
** Loads configuration using a config-enabled schema, thus avoiding
the double loading issue
* Add ConfigurationBootstrapper class
* Add ConfigurationBootstrapper class, update ServerContext and
DirectoryServer classes to enable construction of handlers
* Update DirectoryServer class with new initialization methods for
configuration and schema (not called yet when server is starting)
* Update DirectoryEnvironmentConfig class to allow usage when
there is a running server (as different instances of this class are used)
* Add unit test classes for SchemaHandler, ConfigurationHandler and
CoreSchemaProvider
* Add ServerContextBuilder class to ease construction of ServerContext
in tests
* Added a copy of ConfigurationMock class from opendj-config module
to use it in tests (temporary hack to avoid non obvious import of
tests jar from opendj-config module)
* Add resource/config-small.ldif file to have a reduced config file in some
tests