| | |
| | | |
| | | if (parentEntry == null) |
| | | { |
| | | findAndSetMatchingDN(parentDN); |
| | | setMatchedDN(findMatchedDN(parentDN)); |
| | | |
| | | // The parent doesn't exist, so this add can't be successful. |
| | | setResultCode(ResultCode.NO_SUCH_OBJECT); |
| | |
| | | } |
| | | } |
| | | |
| | | private void findAndSetMatchingDN(DN entryDN) |
| | | private DN findMatchedDN(DN entryDN) |
| | | { |
| | | try |
| | | { |
| | |
| | | { |
| | | if (DirectoryServer.entryExists(matchedDN)) |
| | | { |
| | | setMatchedDN(matchedDN); |
| | | return; |
| | | return matchedDN; |
| | | } |
| | | |
| | | matchedDN = matchedDN.getParentDNInSuffix(); |
| | |
| | | TRACER.debugCaught(DebugLogLevel.ERROR, e); |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | private boolean checkHasReadOnlyAttributes( |