Bug #42
[API] ISrcService should define getListPivots to return an ordered type
| Status: | Closed | Start: | 08/04/2009 | |
|---|---|---|---|---|
| Priority: | Low | Due date: | ||
| Assigned to: | - | % Done: | 0% |
|
| Category: | Core | |||
| Target version: | 1.1.0 | |||
| Problem in version: |
Description
ISrcService defines the method getListPivots() to return a Map, containing a set of DNs and their LscAttributes.
In some cases, the order of entries returned is important. Specifically, is you're working with full DNs to build a tree in your LDAP directory, you need the shortest DNs created before the longer ones (branch heads before children). And when you're cleaning, it needs to be the other way around - delete children before parents.
Changing the API should not be done now, but wait until next major release, IMHO. I have patched the generic services to use an "order-aware" implementation of Map (thanks to Apache Commons). Commit coming.
Associated revisions
Use an ordered map in getListPivots() for some services - JDBCSrc and FullDNJndiDst. Order is important in these cases! The API for getListPivots is therefore wrong - see IssueID #42.
History
Updated by Jonathan Clarke about 1 year ago
- Status changed from New to Closed
As implemented in revision 187, it is possible to use an ordered implementation of a Java Map. This should be enough to solve the general case, since order is only important if your source service knows about it (ie, an SQL query that uses "ORDER BY ..." or a specific ordering by DN like Full DN services). All other cases can be unordered.
Updated by Jonathan Clarke about 1 year ago
- Target version changed from 1.2.x branch to 1.1.0