| | |
| | | JNDIDirContextAdaptor.adapt(ctx)); |
| | | RootCfgClient root = mCtx.getRootConfiguration(); |
| | | |
| | | MultimasterSynchronizationProviderCfgClient sync = null; |
| | | sync = (MultimasterSynchronizationProviderCfgClient) |
| | | ReplicationSynchronizationProviderCfgClient sync = null; |
| | | sync = (ReplicationSynchronizationProviderCfgClient) |
| | | root.getSynchronizationProvider("Multimaster Synchronization"); |
| | | /* |
| | | * Configure the replication server. |
| | |
| | | /* |
| | | * Configure Synchronization plugin. |
| | | */ |
| | | MultimasterSynchronizationProviderCfgClient sync = null; |
| | | ReplicationSynchronizationProviderCfgClient sync = null; |
| | | try |
| | | { |
| | | sync = (MultimasterSynchronizationProviderCfgClient) |
| | | sync = (ReplicationSynchronizationProviderCfgClient) |
| | | root.getSynchronizationProvider("Multimaster Synchronization"); |
| | | } |
| | | catch (ManagedObjectNotFoundException monfe) |
| | |
| | | } |
| | | if (sync == null) |
| | | { |
| | | MultimasterSynchronizationProviderCfgDefn provider = |
| | | MultimasterSynchronizationProviderCfgDefn.getInstance(); |
| | | ReplicationSynchronizationProviderCfgDefn provider = |
| | | ReplicationSynchronizationProviderCfgDefn.getInstance(); |
| | | sync = root.createSynchronizationProvider(provider, |
| | | "Multimaster Synchronization", |
| | | new ArrayList<DefaultBehaviorException>()); |
| | | sync.setJavaImplementationClass( |
| | | sync.setJavaClass( |
| | | org.opends.server.replication.plugin.MultimasterReplication.class. |
| | | getName()); |
| | | sync.setEnabled(Boolean.TRUE); |
| | |
| | | JNDIDirContextAdaptor.adapt(ctx)); |
| | | RootCfgClient root = mCtx.getRootConfiguration(); |
| | | |
| | | MultimasterSynchronizationProviderCfgClient sync = |
| | | (MultimasterSynchronizationProviderCfgClient) |
| | | ReplicationSynchronizationProviderCfgClient sync = |
| | | (ReplicationSynchronizationProviderCfgClient) |
| | | root.getSynchronizationProvider("Multimaster Synchronization"); |
| | | boolean mustCommit = false; |
| | | ReplicationServerCfgClient replicationServer = sync.getReplicationServer(); |
| | |
| | | JNDIDirContextAdaptor.adapt(ctx)); |
| | | RootCfgClient root = mCtx.getRootConfiguration(); |
| | | |
| | | MultimasterSynchronizationProviderCfgClient sync = |
| | | (MultimasterSynchronizationProviderCfgClient) |
| | | ReplicationSynchronizationProviderCfgClient sync = |
| | | (ReplicationSynchronizationProviderCfgClient) |
| | | root.getSynchronizationProvider("Multimaster Synchronization"); |
| | | |
| | | String[] domainNames = sync.listMultimasterDomains(); |
| | | String[] domainNames = sync.listReplicationDomains(); |
| | | if (domainNames == null) |
| | | { |
| | | domainNames = new String[]{}; |
| | | } |
| | | MultimasterDomainCfgClient[] domains = |
| | | new MultimasterDomainCfgClient[domainNames.length]; |
| | | ReplicationDomainCfgClient[] domains = |
| | | new ReplicationDomainCfgClient[domainNames.length]; |
| | | for (int i=0; i<domains.length; i++) |
| | | { |
| | | domains[i] = sync.getMultimasterDomain(domainNames[i]); |
| | | domains[i] = sync.getReplicationDomain(domainNames[i]); |
| | | } |
| | | MultimasterDomainCfgClient domain = null; |
| | | ReplicationDomainCfgClient domain = null; |
| | | String domainName = null; |
| | | for (int i=0; i<domains.length && (domain == null); i++) |
| | | { |
| | | if (Utils.areDnsEqual(baseDN, domains[i].getReplicationDN().toString())) |
| | | if (Utils.areDnsEqual(baseDN, domains[i].getBaseDN().toString())) |
| | | { |
| | | domain = domains[i]; |
| | | domainName = domainNames[i]; |
| | |
| | | int domainId = InstallerHelper.getReplicationId(usedReplicationDomainIds); |
| | | usedReplicationDomainIds.add(domainId); |
| | | domainName = InstallerHelper.getDomainName(domainNames, domainId); |
| | | domain = sync.createMultimasterDomain( |
| | | MultimasterDomainCfgDefn.getInstance(), domainName, |
| | | domain = sync.createReplicationDomain( |
| | | ReplicationDomainCfgDefn.getInstance(), domainName, |
| | | new ArrayList<DefaultBehaviorException>()); |
| | | domain.setServerId(domainId); |
| | | domain.setReplicationDN(DN.decode(baseDN)); |
| | | domain.setBaseDN(DN.decode(baseDN)); |
| | | domain.setReplicationServer(replicationServers); |
| | | mustCommit = true; |
| | | } |
| | |
| | | ManagementContext mCtx = LDAPManagementContext.createFromContext( |
| | | JNDIDirContextAdaptor.adapt(ctx)); |
| | | RootCfgClient root = mCtx.getRootConfiguration(); |
| | | MultimasterSynchronizationProviderCfgClient sync = null; |
| | | ReplicationSynchronizationProviderCfgClient sync = null; |
| | | try |
| | | { |
| | | sync = (MultimasterSynchronizationProviderCfgClient) |
| | | sync = (ReplicationSynchronizationProviderCfgClient) |
| | | root.getSynchronizationProvider("Multimaster Synchronization"); |
| | | } |
| | | catch (ManagedObjectNotFoundException monfe) |
| | |
| | | } |
| | | if (sync != null) |
| | | { |
| | | String[] domainNames = sync.listMultimasterDomains(); |
| | | String[] domainNames = sync.listReplicationDomains(); |
| | | if (domainNames != null) |
| | | { |
| | | for (int i=0; i<domainNames.length; i++) |
| | | { |
| | | MultimasterDomainCfgClient domain = |
| | | sync.getMultimasterDomain(domainNames[i]); |
| | | ReplicationDomainCfgClient domain = |
| | | sync.getReplicationDomain(domainNames[i]); |
| | | for (String baseDN : baseDNs) |
| | | { |
| | | lastBaseDN = baseDN; |
| | | if (Utils.areDnsEqual(domain.getReplicationDN().toString(), |
| | | if (Utils.areDnsEqual(domain.getBaseDN().toString(), |
| | | baseDN)) |
| | | { |
| | | printProgressMessage(formatter.getFormattedWithPoints( |
| | |
| | | if (replServer != null) |
| | | { |
| | | LOG.log(Level.INFO, "Updating references in domain " + |
| | | domain.getReplicationDN()+" on " + hostPort + "."); |
| | | domain.getBaseDN()+" on " + hostPort + "."); |
| | | replServers.remove(replServer); |
| | | if (replServers.size() > 0) |
| | | { |
| | |
| | | } |
| | | else |
| | | { |
| | | sync.removeMultimasterDomain(domainNames[i]); |
| | | sync.removeReplicationDomain(domainNames[i]); |
| | | sync.commit(); |
| | | } |
| | | } |
| | |
| | | ManagementContext mCtx = LDAPManagementContext.createFromContext( |
| | | JNDIDirContextAdaptor.adapt(ctx)); |
| | | RootCfgClient root = mCtx.getRootConfiguration(); |
| | | MultimasterSynchronizationProviderCfgClient sync = null; |
| | | ReplicationSynchronizationProviderCfgClient sync = null; |
| | | try |
| | | { |
| | | sync = (MultimasterSynchronizationProviderCfgClient) |
| | | sync = (ReplicationSynchronizationProviderCfgClient) |
| | | root.getSynchronizationProvider("Multimaster Synchronization"); |
| | | } |
| | | catch (ManagedObjectNotFoundException monfe) |
| | |
| | | } |
| | | if (sync != null) |
| | | { |
| | | String[] domainNames = sync.listMultimasterDomains(); |
| | | String[] domainNames = sync.listReplicationDomains(); |
| | | if (domainNames != null) |
| | | { |
| | | for (int i=0; i<domainNames.length; i++) |
| | | { |
| | | MultimasterDomainCfgClient domain = |
| | | sync.getMultimasterDomain(domainNames[i]); |
| | | if (Utils.areDnsEqual(domain.getReplicationDN().toString(), baseDN)) |
| | | ReplicationDomainCfgClient domain = |
| | | sync.getReplicationDomain(domainNames[i]); |
| | | if (Utils.areDnsEqual(domain.getBaseDN().toString(), baseDN)) |
| | | { |
| | | printProgressMessage(formatter.getFormattedWithPoints( |
| | | INFO_REPLICATION_DISABLING_BASEDN.get(baseDN, |
| | | hostPort))); |
| | | sync.removeMultimasterDomain(domainNames[i]); |
| | | sync.removeReplicationDomain(domainNames[i]); |
| | | sync.commit(); |
| | | |
| | | printProgressMessage(formatter.getFormattedDone()); |