mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

matthew_swift
01.06.2007 506eee12c5fe5d42d3f90662289426e6cc8aed76
refs
author matthew_swift <matthew_swift@localhost>
Saturday, September 1, 2007 00:06 +0200
committer matthew_swift <matthew_swift@localhost>
Saturday, September 1, 2007 00:06 +0200
commit506eee12c5fe5d42d3f90662289426e6cc8aed76
tree 2d200c6bc54b4713ffbdd77b66e0e4bc0f52b6c2 tree | zip | gz
parent ca4ba32f863aae7f229e7c52d9fe98fbeba0669b view | diff
Fix issue 1734: Admin framework: refactor client APIs

This change refactors the client APIs so that it is now possible to easily implement features that require direct access to properties and managed objects (e.g. dependency/constraint enforcement call-backs - issue 1451). Previous to this change an application would have to drill down from the root managed object in order to find the required managed object and its properties.

This change is required by issue 1451 (dependency support), which in turn is required by issue 1449 (aggregation support).


Description:
------------

This change splits the client API into two:

* org.opends.server.admin.client: this contains APIs which client applications such as dsconfig should use to interact with the admin framework

* org.opends.server.admin.client.spi: (new package) this contains the APIs which driver implementations (e.g. JNDI driver) should use as a basis for their implementation. This package includes a Driver class which is intended for use by ManagedObject implementations as well as dependency call-backs.

In addition, I have refactored the LDAPManagedObject implementation so that code that is likely to be used by other driver implementations is pushed up into an AbstractManagedObject and the Driver base class.


Testing:
--------

All unit tests pass and basic walk-through of dsconfig interactive mode also works fine.

4 files added
3 files renamed
5 files modified
3512 ■■■■■ changed files
opendj-sdk/opends/src/server/org/opends/server/admin/client/ManagedObject.java 46 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/admin/client/ManagementContext.java 28 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/admin/client/ldap/LDAPDriver.java 595 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/admin/client/ldap/LDAPManagedObject.java 1162 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/admin/client/ldap/LDAPManagementContext.java 38 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/admin/client/package-info.java 8 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/admin/client/spi/AbstractManagedObject.java 696 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/admin/client/spi/Driver.java 701 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/admin/client/spi/Property.java 67 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/admin/client/spi/PropertySet.java 127 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/admin/client/spi/package-info.java 39 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/admin/client/spi/PropertySetTest.java 5 ●●●● diff | view | raw | blame | history