From c916bb774987f75f48ffb2bbf40b22bec35130f4 Mon Sep 17 00:00:00 2001
From: gbellato <gbellato@localhost>
Date: Wed, 07 Mar 2007 14:36:48 +0000
Subject: [PATCH] Fix for issue 1150 : Take attribute usage into account when synchronizing entries

---
 opends/src/server/org/opends/server/synchronization/protocol/ModifyMsg.java |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/opends/src/server/org/opends/server/synchronization/protocol/ModifyMsg.java b/opends/src/server/org/opends/server/synchronization/protocol/ModifyMsg.java
index eeb0f78..2a6b7f2 100644
--- a/opends/src/server/org/opends/server/synchronization/protocol/ModifyMsg.java
+++ b/opends/src/server/org/opends/server/synchronization/protocol/ModifyMsg.java
@@ -40,9 +40,12 @@
 import org.opends.server.synchronization.common.ChangeNumber;
 import org.opends.server.synchronization.plugin.Historical;
 import org.opends.server.types.Attribute;
+import org.opends.server.types.AttributeType;
+import org.opends.server.types.AttributeUsage;
 import org.opends.server.types.DN;
 import org.opends.server.types.Modification;
 
+
 import java.io.UnsupportedEncodingException;
 import java.util.ArrayList;
 import java.util.List;
@@ -204,6 +207,16 @@
     for (Modification mod : mods)
     {
       Attribute attr = mod.getAttribute();
+      AttributeType type = attr.getAttributeType();
+      if (type != null )
+      {
+        if (AttributeUsage.DSA_OPERATION.equals(type.getUsage()))
+        {
+          // Attributes with a dsaOperation usage should not be synchronized.
+          // skip them.
+          continue;
+        }
+      }
       if (!attr.getAttributeType().equals(Historical.historicalAttrType))
       {
         LDAPModification ldapmod = new LDAPModification(

--
Gitblit v1.10.0