From d0ec8721f5e2963e994679b185c876de878c5c3d Mon Sep 17 00:00:00 2001
From: coulbeck <coulbeck@localhost>
Date: Tue, 18 Jul 2006 20:08:45 +0000
Subject: [PATCH] Mark Craig found a couple of bugs in the LDIF reader to do with rejected entries.
---
opendj-sdk/opends/src/server/org/opends/server/util/LDIFReader.java | 15 +++++++++++----
opendj-sdk/opends/src/server/org/opends/server/messages/UtilityMessages.java | 4 ++--
2 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/opendj-sdk/opends/src/server/org/opends/server/messages/UtilityMessages.java b/opendj-sdk/opends/src/server/org/opends/server/messages/UtilityMessages.java
index a4688fc..87c6923 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/messages/UtilityMessages.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/messages/UtilityMessages.java
@@ -1459,8 +1459,8 @@
"duplicate attribute %s with value %s. The second " +
"occurrence of that attribute value has been skipped.");
registerMessage(MSGID_LDIF_MULTIPLE_VALUES_FOR_SINGLE_VALUED_ATTR,
- "Entry %s includes multiple values for single-valued " +
- "attribute %s.");
+ "Entry %s starting at line %d includes multiple values " +
+ "for single-valued attribute %s.");
registerMessage(MSGID_LDIF_INVALID_ATTR_SYNTAX,
"Unable to parse LDIF entry %s starting at line %d " +
"because it has an invalid value \"%s\" for attribute " +
diff --git a/opendj-sdk/opends/src/server/org/opends/server/util/LDIFReader.java b/opendj-sdk/opends/src/server/org/opends/server/util/LDIFReader.java
index 61f268a..b5d93d0 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/util/LDIFReader.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/util/LDIFReader.java
@@ -241,12 +241,19 @@
new HashMap<AttributeType,List<Attribute>>();
HashMap<AttributeType,List<Attribute>> operationalAttributes =
new HashMap<AttributeType,List<Attribute>>();
- for (StringBuilder line : lines)
+ try
{
- readAttribute(lines, line, entryDN, objectClasses, userAttributes,
- operationalAttributes);
+ for (StringBuilder line : lines)
+ {
+ readAttribute(lines, line, entryDN, objectClasses, userAttributes,
+ operationalAttributes);
+ }
}
-
+ catch (LDIFException e)
+ {
+ entriesRejected++;
+ throw e;
+ }
// Create the entry and see if it is one that should be included in the
// import.
--
Gitblit v1.10.0