| | |
| | | * |
| | | * |
| | | * Copyright 2006-2009 Sun Microsystems, Inc. |
| | | * Portions Copyright 2014 ForgeRock AS |
| | | */ |
| | | |
| | | package org.opends.server.admin.server; |
| | |
| | | throws IllegalArgumentException { |
| | | validateRelationDefinition(d); |
| | | |
| | | DN baseDN = DNBuilder.create(path, d).getParent(); |
| | | DN baseDN = DNBuilder.create(path, d).parent(); |
| | | deregisterAddListener(baseDN, listener); |
| | | } |
| | | |
| | |
| | | throws IllegalArgumentException { |
| | | validateRelationDefinition(d); |
| | | |
| | | DN baseDN = DNBuilder.create(path, d).getParent(); |
| | | DN baseDN = DNBuilder.create(path, d).parent(); |
| | | deregisterAddListener(baseDN, listener); |
| | | } |
| | | |
| | |
| | | ConfigurationDeleteListener<M> listener) throws IllegalArgumentException { |
| | | validateRelationDefinition(d); |
| | | |
| | | DN baseDN = DNBuilder.create(path, d).getParent(); |
| | | DN baseDN = DNBuilder.create(path, d).parent(); |
| | | deregisterDeleteListener(baseDN, listener); |
| | | } |
| | | |
| | |
| | | throws IllegalArgumentException { |
| | | validateRelationDefinition(d); |
| | | |
| | | DN baseDN = DNBuilder.create(path, d).getParent(); |
| | | DN baseDN = DNBuilder.create(path, d).parent(); |
| | | deregisterDeleteListener(baseDN, listener); |
| | | } |
| | | |
| | |
| | | if (configEntry != null) { |
| | | return configEntry.getDN(); |
| | | } else { |
| | | return DN.nullDN(); |
| | | return DN.rootDN(); |
| | | } |
| | | } |
| | | |
| | |
| | | ServerManagedObjectAddListener<M> listener) |
| | | throws IllegalArgumentException, ConfigException { |
| | | validateRelationDefinition(d); |
| | | DN baseDN = DNBuilder.create(path, d).getParent(); |
| | | DN baseDN = DNBuilder.create(path, d).parent(); |
| | | ConfigAddListener adaptor = new ConfigAddListenerAdaptor<M>(path, d, |
| | | listener); |
| | | registerAddListener(baseDN, adaptor); |
| | |
| | | ServerManagedObjectDeleteListener<M> listener) |
| | | throws IllegalArgumentException, ConfigException { |
| | | validateRelationDefinition(d); |
| | | DN baseDN = DNBuilder.create(path, d).getParent(); |
| | | DN baseDN = DNBuilder.create(path, d).parent(); |
| | | ConfigDeleteListener adaptor = new ConfigDeleteListenerAdaptor<M>(path, d, |
| | | listener); |
| | | registerDeleteListener(baseDN, adaptor); |
| | |
| | | // entry to the provided base DN. |
| | | private void registerDelayedListener(DN baseDN, |
| | | ConfigAddListener delayedListener) throws ConfigException { |
| | | DN parentDN = baseDN.getParent(); |
| | | DN parentDN = baseDN.parent(); |
| | | while (parentDN != null) { |
| | | ConfigEntry relationEntry = getListenerConfigEntry(parentDN); |
| | | if (relationEntry == null) { |
| | | delayedListener = new DelayedConfigAddListener(parentDN, |
| | | delayedListener); |
| | | parentDN = parentDN.getParent(); |
| | | parentDN = parentDN.parent(); |
| | | } else { |
| | | relationEntry.registerAddListener(delayedListener); |
| | | return; |
| | |
| | | // entry to the provided base DN. |
| | | private <M extends Configuration> void deregisterDelayedAddListener(DN baseDN, |
| | | ConfigurationAddListener<M> listener) throws ConfigException { |
| | | DN parentDN = baseDN.getParent(); |
| | | DN parentDN = baseDN.parent(); |
| | | int delayWrappers = 0; |
| | | while (parentDN != null) { |
| | | ConfigEntry relationEntry = getListenerConfigEntry(parentDN); |
| | | if (relationEntry == null) { |
| | | parentDN = parentDN.getParent(); |
| | | parentDN = parentDN.parent(); |
| | | delayWrappers++; |
| | | } else { |
| | | for (ConfigAddListener l : relationEntry.getAddListeners()) { |
| | |
| | | private <M extends Configuration> void deregisterDelayedDeleteListener( |
| | | DN baseDN, ConfigurationDeleteListener<M> listener) |
| | | throws ConfigException { |
| | | DN parentDN = baseDN.getParent(); |
| | | DN parentDN = baseDN.parent(); |
| | | int delayWrappers = 0; |
| | | while (parentDN != null) { |
| | | ConfigEntry relationEntry = getListenerConfigEntry(parentDN); |
| | | if (relationEntry == null) { |
| | | parentDN = parentDN.getParent(); |
| | | parentDN = parentDN.parent(); |
| | | delayWrappers++; |
| | | } else { |
| | | for (ConfigAddListener l : relationEntry.getAddListeners()) { |
| | |
| | | // entry to the provided base DN. |
| | | private <M extends Configuration> void deregisterDelayedAddListener(DN baseDN, |
| | | ServerManagedObjectAddListener<M> listener) throws ConfigException { |
| | | DN parentDN = baseDN.getParent(); |
| | | DN parentDN = baseDN.parent(); |
| | | int delayWrappers = 0; |
| | | while (parentDN != null) { |
| | | ConfigEntry relationEntry = getListenerConfigEntry(parentDN); |
| | | if (relationEntry == null) { |
| | | parentDN = parentDN.getParent(); |
| | | parentDN = parentDN.parent(); |
| | | delayWrappers++; |
| | | } else { |
| | | for (ConfigAddListener l : relationEntry.getAddListeners()) { |
| | |
| | | private <M extends Configuration> void deregisterDelayedDeleteListener( |
| | | DN baseDN, ServerManagedObjectDeleteListener<M> listener) |
| | | throws ConfigException { |
| | | DN parentDN = baseDN.getParent(); |
| | | DN parentDN = baseDN.parent(); |
| | | int delayWrappers = 0; |
| | | while (parentDN != null) { |
| | | ConfigEntry relationEntry = getListenerConfigEntry(parentDN); |
| | | if (relationEntry == null) { |
| | | parentDN = parentDN.getParent(); |
| | | parentDN = parentDN.parent(); |
| | | delayWrappers++; |
| | | } else { |
| | | for (ConfigAddListener l : relationEntry.getAddListeners()) { |