| | |
| | | suffix.removePending(entryDN); |
| | | entryID = oldID; |
| | | } |
| | | processDN2URI(suffix, oldEntry, entry); |
| | | suffix.getID2Entry().put(null, entryID, entry); |
| | | if(oldEntry == null) |
| | | { |
| | |
| | | processDN2ID(suffix, entryDN, entryID); |
| | | suffix.removePending(entryDN); |
| | | } |
| | | processDN2URI(suffix, null, entry); |
| | | suffix.getID2Entry().put(null, entryID, entry); |
| | | processIndexes(suffix, entry, entryID); |
| | | } |
| | |
| | | try { |
| | | Thread.sleep(50); |
| | | if(i == 10) { |
| | | //Temporary messages until this code is cleaned up. |
| | | Message message = |
| | | Message.raw(Category.JEB, Severity.SEVERE_ERROR, |
| | | "ancestorID check failed"); |
| | | logError(message); |
| | | return null; |
| | | } |
| | | i++; |
| | | } catch (Exception e) { |
| | | //Temporary messages until this code is cleaned up. |
| | | Message message = |
| | | Message.raw(Category.JEB, Severity.SEVERE_ERROR, |
| | | "ancestorID exception thrown"); |
| | | logError(message); |
| | | return null; |
| | | } |
| | | } |
| | |
| | | new IndexKey(dnType, IndexType.DN), true); |
| | | idECMap.putIfAbsent(id, suffix.getEntryContainer()); |
| | | } |
| | | |
| | | void processDN2URI(Suffix suffix, Entry oldEntry, Entry newEntry) |
| | | throws DatabaseException |
| | | { |
| | | DN2URI dn2uri = suffix.getDN2URI(); |
| | | if(oldEntry != null) |
| | | { |
| | | dn2uri.replaceEntry(null, oldEntry, newEntry); |
| | | } |
| | | else |
| | | { |
| | | dn2uri.addEntry(null, newEntry); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |