From 76ebd1ad82e2a1fc421519f09c62b948e9376e8a Mon Sep 17 00:00:00 2001
From: pgamba <pgamba@localhost>
Date: Tue, 06 Oct 2009 12:34:32 +0000
Subject: [PATCH] Entry attributes for ECL - Protocol V4
---
opends/src/server/org/opends/server/replication/common/DSInfo.java | 25 ++++++++++++++++++++++---
1 files changed, 22 insertions(+), 3 deletions(-)
diff --git a/opends/src/server/org/opends/server/replication/common/DSInfo.java b/opends/src/server/org/opends/server/replication/common/DSInfo.java
index ffda986..32e00f7 100644
--- a/opends/src/server/org/opends/server/replication/common/DSInfo.java
+++ b/opends/src/server/org/opends/server/replication/common/DSInfo.java
@@ -22,12 +22,14 @@
* CDDL HEADER END
*
*
- * Copyright 2008 Sun Microsystems, Inc.
+ * Copyright 2008-2009 Sun Microsystems, Inc.
*/
package org.opends.server.replication.common;
import java.util.ArrayList;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
/**
* This class holds information about a DS connected to the topology. This
@@ -57,6 +59,8 @@
// Group id
private byte groupId = (byte) -1;
+ private Set<String> eclIncludes = new HashSet<String>();
+
/**
* Creates a new instance of DSInfo with every given info.
*
@@ -69,10 +73,11 @@
* @param safeDataLevel DS safe data level
* @param groupId DS group id
* @param refUrls DS exported referrals URLs
+ * @param eclIncludes The list of entry attributes to include in the ECL.
*/
public DSInfo(short dsId, short rsId, long generationId, ServerStatus status,
boolean assuredFlag, AssuredMode assuredMode, byte safeDataLevel,
- byte groupId, List<String> refUrls)
+ byte groupId, List<String> refUrls, Set<String> eclIncludes)
{
this.dsId = dsId;
@@ -84,6 +89,7 @@
this.safeDataLevel = safeDataLevel;
this.groupId = groupId;
this.refUrls = refUrls;
+ this.eclIncludes = eclIncludes;
}
/**
@@ -168,6 +174,15 @@
}
/**
+ * Get the entry attributes to be included in the ECL.
+ * @return a.
+ */
+ public Set<String> getEclIncludes()
+ {
+ return eclIncludes;
+ }
+
+ /**
* Test if the passed object is equal to this one.
* @param obj The object to test
* @return True if both objects are equal
@@ -190,7 +205,8 @@
(assuredMode == dsInfo.getAssuredMode()) &&
(safeDataLevel == dsInfo.getSafeDataLevel()) &&
(groupId == dsInfo.getGroupId()) &&
- (refUrls.equals(dsInfo.getRefUrls())));
+ (refUrls.equals(dsInfo.getRefUrls())) &&
+ (eclIncludes.equals(dsInfo.getEclIncludes())));
} else
{
return false;
@@ -214,6 +230,7 @@
73 * hash + (this.assuredMode != null ? this.assuredMode.hashCode() : 0);
hash = 73 * hash + this.safeDataLevel;
hash = 73 * hash + (this.refUrls != null ? this.refUrls.hashCode() : 0);
+ hash = 73 * hash + (this.eclIncludes != null ? eclIncludes.hashCode() : 0);
hash = 73 * hash + this.groupId;
return hash;
}
@@ -244,6 +261,8 @@
sb.append(groupId);
sb.append("\nReferral URLs: ");
sb.append(refUrls);
+ sb.append("\nECL Include: ");
+ sb.append(eclIncludes);
return sb.toString();
}
--
Gitblit v1.10.0