opends/src/guitools/org/opends/guitools/controlpanel/datamodel/BackendDescriptor.java
@@ -22,13 +22,14 @@ * CDDL HEADER END * * * Copyright 2008 Sun Microsystems, Inc. * Copyright 2008-2011 Sun Microsystems, Inc. */ package org.opends.guitools.controlpanel.datamodel; import java.util.Collections; import java.util.Set; import java.util.SortedSet; import java.util.TreeSet; import org.opends.admin.ads.ADSContext; @@ -38,15 +39,15 @@ */ public class BackendDescriptor { private String backendID; private final String backendID; private SortedSet<BaseDNDescriptor> baseDns; private SortedSet<IndexDescriptor> indexes; private SortedSet<VLVIndexDescriptor> vlvIndexes; private int entries; private boolean isConfigBackend; private boolean isEnabled; private final boolean isConfigBackend; private final boolean isEnabled; private CustomSearchResult monitoringEntry; private Type type; private final Type type; private int hashCode; /** @@ -95,20 +96,17 @@ * @param type the type of the backend. */ public BackendDescriptor(String backendID, SortedSet<BaseDNDescriptor> baseDns, SortedSet<IndexDescriptor> indexes, SortedSet<VLVIndexDescriptor> vlvIndexes, Set<BaseDNDescriptor> baseDns, Set<IndexDescriptor> indexes, Set<VLVIndexDescriptor> vlvIndexes, int entries, boolean isEnabled, Type type) { this.backendID = backendID; this.baseDns = Collections.unmodifiableSortedSet(baseDns); this.indexes = Collections.unmodifiableSortedSet(indexes); this.vlvIndexes = Collections.unmodifiableSortedSet(vlvIndexes); this.entries = entries; isConfigBackend = isConfigBackend(backendID); this.type = type; this.isEnabled = isEnabled; updateBaseDnsAndIndexes(); updateBaseDnsAndIndexes(baseDns, indexes, vlvIndexes); recalculateHashCode(); } @@ -162,6 +160,7 @@ /** * {@inheritDoc} */ @Override public boolean equals(Object v) { boolean equals = false; @@ -221,6 +220,7 @@ /** * {@inheritDoc} */ @Override public int hashCode() { return hashCode; @@ -252,23 +252,32 @@ /** * Updates the base DNs and indexes contained in this backend so that they * have a reference to this backend. * have a reference to this backend. It also initialize the members of this * class with the base DNs and indexes. * @param baseDns the base DNs associated with the Backend. * @param indexes the indexes defined in the backend. * @param vlvIndexes the VLV indexes defined in the backend. * */ private void updateBaseDnsAndIndexes() private void updateBaseDnsAndIndexes(Set<BaseDNDescriptor> baseDns, Set<IndexDescriptor> indexes, Set<VLVIndexDescriptor> vlvIndexes) { for (BaseDNDescriptor baseDN : baseDns) { baseDN.setBackend(this); } for (AbstractIndexDescriptor index : indexes) this.baseDns = new TreeSet<BaseDNDescriptor>(baseDns); for (IndexDescriptor index : indexes) { index.setBackend(this); } for (AbstractIndexDescriptor index : vlvIndexes) this.indexes = new TreeSet<IndexDescriptor>(indexes); for (VLVIndexDescriptor index : vlvIndexes) { index.setBackend(this); } this.vlvIndexes = new TreeSet<VLVIndexDescriptor>(vlvIndexes); } /** opends/src/guitools/org/opends/guitools/controlpanel/datamodel/BaseDNDescriptor.java
@@ -22,7 +22,7 @@ * CDDL HEADER END * * * Copyright 2008-2010 Sun Microsystems, Inc. * Copyright 2008-2011 Sun Microsystems, Inc. * Portions Copyright 2011 ForgeRock AS */ @@ -58,7 +58,7 @@ private BackendDescriptor backend; private long ageOfOldestMissingChange; private Type type; private DN baseDn; private final DN baseDn; private int replicaID = -1; private int hashCode; @@ -100,6 +100,7 @@ /** * {@inheritDoc} */ @Override public boolean equals(Object v) { boolean equals = false; @@ -112,9 +113,16 @@ getDn().equals(desc.getDn()) && (getAgeOfOldestMissingChange() == desc.getAgeOfOldestMissingChange()) && (getMissingChanges() == desc.getMissingChanges()) && getBackend().getBackendID().equals( desc.getBackend().getBackendID()) && (getEntries() == desc.getEntries()); if (equals) { if ((getBackend() != null) && (desc.getBackend() != null)) { // Only compare the backend IDs. In this context is enough equals = getBackend().getBackendID().equals( desc.getBackend().getBackendID()); } } } } else @@ -127,6 +135,7 @@ /** * {@inheritDoc} */ @Override public int hashCode() { return hashCode; @@ -145,9 +154,13 @@ } if (returnValue == 0) { if ((getBackend() != null) && (desc.getBackend() != null)) { // Only compare the backend IDs. In this context is enough returnValue = getBackend().getBackendID().compareTo( desc.getBackend().getBackendID()); } } if (returnValue == 0) { returnValue = compare(getEntries(), desc.getEntries()); opends/src/guitools/org/opends/guitools/controlpanel/util/ConfigFromDirContext.java
@@ -22,7 +22,7 @@ * CDDL HEADER END * * * Copyright 2008-2010 Sun Microsystems, Inc. * Copyright 2008-2011 Sun Microsystems, Inc. */ package org.opends.guitools.controlpanel.util; @@ -310,7 +310,7 @@ try { BackendCfgClient backend = root.getBackend(backendNames[i]); SortedSet<BaseDNDescriptor> baseDNs = new TreeSet<BaseDNDescriptor>(); Set<BaseDNDescriptor> baseDNs = new HashSet<BaseDNDescriptor>(); for (DN dn : backend.getBaseDN()) { BaseDNDescriptor baseDN = @@ -318,9 +318,9 @@ null, -1, -1, -1); baseDNs.add(baseDN); } SortedSet<IndexDescriptor> indexes = new TreeSet<IndexDescriptor>(); SortedSet<VLVIndexDescriptor> vlvIndexes = new TreeSet<VLVIndexDescriptor>(); Set<IndexDescriptor> indexes = new HashSet<IndexDescriptor>(); Set<VLVIndexDescriptor> vlvIndexes = new HashSet<VLVIndexDescriptor>(); BackendDescriptor.Type type; if (backend instanceof LocalDBBackendCfgClient) { opends/src/guitools/org/opends/guitools/controlpanel/util/ConfigFromFile.java
@@ -22,7 +22,7 @@ * CDDL HEADER END * * * Copyright 2008-2010 Sun Microsystems, Inc. * Copyright 2008-2011 Sun Microsystems, Inc. */ package org.opends.guitools.controlpanel.util; @@ -165,7 +165,7 @@ try { BackendCfg backend = root.getBackend(backendNames[i]); SortedSet<BaseDNDescriptor> baseDNs = new TreeSet<BaseDNDescriptor>(); Set<BaseDNDescriptor> baseDNs = new HashSet<BaseDNDescriptor>(); for (DN dn : backend.getBaseDN()) { BaseDNDescriptor baseDN = @@ -173,9 +173,9 @@ null, -1, -1, -1); baseDNs.add(baseDN); } SortedSet<IndexDescriptor> indexes = new TreeSet<IndexDescriptor>(); SortedSet<VLVIndexDescriptor> vlvIndexes = new TreeSet<VLVIndexDescriptor>(); Set<IndexDescriptor> indexes = new HashSet<IndexDescriptor>(); Set<VLVIndexDescriptor> vlvIndexes = new HashSet<VLVIndexDescriptor>(); BackendDescriptor.Type type; if (backend instanceof LocalDBBackendCfg) {