From f2160f4bd1c8ac67e5a86a6710d431e8932877f9 Mon Sep 17 00:00:00 2001
From: matthew_swift <matthew_swift@localhost>
Date: Fri, 28 May 2010 11:47:51 +0000
Subject: [PATCH] Synchronize SDK on java.net with internal repository.
---
sdk/src/org/opends/sdk/ldif/LDIFChangeRecordReader.java | 221 ++++++++++++++++++++++++++-----------------------------
1 files changed, 105 insertions(+), 116 deletions(-)
diff --git a/sdk/src/org/opends/sdk/ldif/LDIFChangeRecordReader.java b/sdk/src/org/opends/sdk/ldif/LDIFChangeRecordReader.java
index f9dbffb..0825276 100644
--- a/sdk/src/org/opends/sdk/ldif/LDIFChangeRecordReader.java
+++ b/sdk/src/org/opends/sdk/ldif/LDIFChangeRecordReader.java
@@ -30,7 +30,7 @@
import static com.sun.opends.sdk.messages.Messages.*;
-import static com.sun.opends.sdk.util.StaticUtils.*;
+import static com.sun.opends.sdk.util.StaticUtils.toLowerCase;
import java.io.IOException;
import java.io.InputStream;
@@ -52,42 +52,39 @@
* An LDIF change record reader reads change records using the LDAP Data
* Interchange Format (LDIF) from a user defined source.
*
- * @see <a href="http://tools.ietf.org/html/rfc2849">RFC 2849 - The LDAP
- * Data Interchange Format (LDIF) - Technical Specification </a>
+ * @see <a href="http://tools.ietf.org/html/rfc2849">RFC 2849 - The LDAP Data
+ * Interchange Format (LDIF) - Technical Specification </a>
*/
-public final class LDIFChangeRecordReader extends AbstractLDIFReader
- implements ChangeRecordReader
+public final class LDIFChangeRecordReader extends AbstractLDIFReader implements
+ ChangeRecordReader
{
/**
- * Parses the provided array of LDIF lines as a single LDIF change
- * record.
+ * Parses the provided array of LDIF lines as a single LDIF change record.
*
* @param ldifLines
* The lines of LDIF to be parsed.
* @return The parsed LDIF change record.
* @throws LocalizedIllegalArgumentException
- * If {@code ldifLines} did not contain an LDIF change
- * record, if it contained multiple change records, if
- * contained malformed LDIF, or if the change record could
- * not be decoded using the default schema.
+ * If {@code ldifLines} did not contain an LDIF change record, if it
+ * contained multiple change records, if contained malformed LDIF,
+ * or if the change record could not be decoded using the default
+ * schema.
* @throws NullPointerException
* If {@code ldifLines} was {@code null}.
*/
- public static ChangeRecord valueOfLDIFChangeRecord(
- String... ldifLines) throws LocalizedIllegalArgumentException,
- NullPointerException
+ public static ChangeRecord valueOfLDIFChangeRecord(final String... ldifLines)
+ throws LocalizedIllegalArgumentException, NullPointerException
{
// LDIF change record reader is tolerant to missing change types.
- LDIFChangeRecordReader reader = new LDIFChangeRecordReader(
- ldifLines);
+ final LDIFChangeRecordReader reader = new LDIFChangeRecordReader(ldifLines);
try
{
- ChangeRecord record = reader.readChangeRecord();
+ final ChangeRecord record = reader.readChangeRecord();
if (record == null)
{
// No change record found.
- LocalizableMessage message = WARN_READ_LDIF_RECORD_NO_CHANGE_RECORD_FOUND
+ final LocalizableMessage message = WARN_READ_LDIF_RECORD_NO_CHANGE_RECORD_FOUND
.get();
throw new LocalizedIllegalArgumentException(message);
}
@@ -95,23 +92,23 @@
if (reader.readChangeRecord() != null)
{
// Multiple change records found.
- LocalizableMessage message = WARN_READ_LDIF_RECORD_MULTIPLE_CHANGE_RECORDS_FOUND
+ final LocalizableMessage message = WARN_READ_LDIF_RECORD_MULTIPLE_CHANGE_RECORDS_FOUND
.get();
throw new LocalizedIllegalArgumentException(message);
}
return record;
}
- catch (DecodeException e)
+ catch (final DecodeException e)
{
// Badly formed LDIF.
throw new LocalizedIllegalArgumentException(e.getMessageObject());
}
- catch (IOException e)
+ catch (final IOException e)
{
// This should never happen for a String based reader.
- LocalizableMessage message = WARN_READ_LDIF_RECORD_UNEXPECTED_IO_ERROR.get(e
- .getMessage());
+ final LocalizableMessage message = WARN_READ_LDIF_RECORD_UNEXPECTED_IO_ERROR
+ .get(e.getMessage());
throw new LocalizedIllegalArgumentException(message);
}
}
@@ -119,15 +116,15 @@
/**
- * Creates a new LDIF change record reader whose source is the
- * provided input stream.
+ * Creates a new LDIF change record reader whose source is the provided input
+ * stream.
*
* @param in
* The input stream to use.
* @throws NullPointerException
* If {@code in} was {@code null}.
*/
- public LDIFChangeRecordReader(InputStream in)
+ public LDIFChangeRecordReader(final InputStream in)
throws NullPointerException
{
super(in);
@@ -136,15 +133,15 @@
/**
- * Creates a new LDIF change record reader which will read lines of
- * LDIF from the provided list of LDIF lines.
+ * Creates a new LDIF change record reader which will read lines of LDIF from
+ * the provided list of LDIF lines.
*
* @param ldifLines
* The lines of LDIF to be read.
* @throws NullPointerException
* If {@code ldifLines} was {@code null}.
*/
- public LDIFChangeRecordReader(List<String> ldifLines)
+ public LDIFChangeRecordReader(final List<String> ldifLines)
throws NullPointerException
{
super(ldifLines);
@@ -153,15 +150,15 @@
/**
- * Creates a new LDIF change record reader which will read lines of
- * LDIF from the provided array of LDIF lines.
+ * Creates a new LDIF change record reader which will read lines of LDIF from
+ * the provided array of LDIF lines.
*
* @param ldifLines
* The lines of LDIF to be read.
* @throws NullPointerException
* If {@code ldifLines} was {@code null}.
*/
- public LDIFChangeRecordReader(String... ldifLines)
+ public LDIFChangeRecordReader(final String... ldifLines)
throws NullPointerException
{
super(Arrays.asList(ldifLines));
@@ -182,8 +179,7 @@
/**
* {@inheritDoc}
*/
- public ChangeRecord readChangeRecord() throws DecodeException,
- IOException
+ public ChangeRecord readChangeRecord() throws DecodeException, IOException
{
// Continue until an unfiltered entry is obtained.
while (true)
@@ -230,27 +226,25 @@
if (!record.iterator.hasNext())
{
// FIXME: improve error.
- final LocalizableMessage message = LocalizableMessage.raw("Missing changetype");
+ final LocalizableMessage message = LocalizableMessage
+ .raw("Missing changetype");
throw DecodeException.error(message);
}
final KeyValuePair pair = new KeyValuePair();
- final String ldifLine = readLDIFRecordKeyValuePair(record,
- pair, false);
+ final String ldifLine = readLDIFRecordKeyValuePair(record, pair, false);
if (!toLowerCase(pair.key).equals("changetype"))
{
// Default to add change record.
- changeRecord = parseAddChangeRecordEntry(entryDN, ldifLine,
- record);
+ changeRecord = parseAddChangeRecordEntry(entryDN, ldifLine, record);
}
else
{
final String changeType = toLowerCase(pair.value);
if (changeType.equals("add"))
{
- changeRecord = parseAddChangeRecordEntry(entryDN, null,
- record);
+ changeRecord = parseAddChangeRecordEntry(entryDN, null, record);
}
else if (changeType.equals("delete"))
{
@@ -262,13 +256,11 @@
}
else if (changeType.equals("modrdn"))
{
- changeRecord = parseModifyDNChangeRecordEntry(entryDN,
- record);
+ changeRecord = parseModifyDNChangeRecordEntry(entryDN, record);
}
else if (changeType.equals("moddn"))
{
- changeRecord = parseModifyDNChangeRecordEntry(entryDN,
- record);
+ changeRecord = parseModifyDNChangeRecordEntry(entryDN, record);
}
else
{
@@ -295,17 +287,16 @@
/**
- * Specifies whether or not all operational attributes should be
- * excluded from any change records that are read from LDIF. The
- * default is {@code false}.
+ * Specifies whether or not all operational attributes should be excluded from
+ * any change records that are read from LDIF. The default is {@code false}.
*
* @param excludeOperationalAttributes
- * {@code true} if all operational attributes should be
- * excluded, or {@code false} otherwise.
+ * {@code true} if all operational attributes should be excluded, or
+ * {@code false} otherwise.
* @return A reference to this {@code LDIFChangeRecordReader}.
*/
public LDIFChangeRecordReader setExcludeAllOperationalAttributes(
- boolean excludeOperationalAttributes)
+ final boolean excludeOperationalAttributes)
{
this.excludeOperationalAttributes = excludeOperationalAttributes;
return this;
@@ -314,17 +305,16 @@
/**
- * Specifies whether or not all user attributes should be excluded
- * from any change records that are read from LDIF. The default is
- * {@code false}.
+ * Specifies whether or not all user attributes should be excluded from any
+ * change records that are read from LDIF. The default is {@code false}.
*
* @param excludeUserAttributes
- * {@code true} if all user attributes should be excluded, or
- * {@code false} otherwise.
+ * {@code true} if all user attributes should be excluded, or {@code
+ * false} otherwise.
* @return A reference to this {@code LDIFChangeRecordReader}.
*/
public LDIFChangeRecordReader setExcludeAllUserAttributes(
- boolean excludeUserAttributes)
+ final boolean excludeUserAttributes)
{
this.excludeUserAttributes = excludeUserAttributes;
return this;
@@ -333,16 +323,15 @@
/**
- * Excludes the named attribute from any change records that are read
- * from LDIF. By default all attributes are included unless explicitly
- * excluded.
+ * Excludes the named attribute from any change records that are read from
+ * LDIF. By default all attributes are included unless explicitly excluded.
*
* @param attributeDescription
* The name of the attribute to be excluded.
* @return A reference to this {@code LDIFChangeRecordReader}.
*/
public LDIFChangeRecordReader setExcludeAttribute(
- AttributeDescription attributeDescription)
+ final AttributeDescription attributeDescription)
{
Validator.ensureNotNull(attributeDescription);
excludeAttributes.add(attributeDescription);
@@ -352,15 +341,15 @@
/**
- * Excludes all change records which target entries beneath the named
- * entry (inclusive) from being read from LDIF. By default all change
- * records are read unless explicitly excluded or included.
+ * Excludes all change records which target entries beneath the named entry
+ * (inclusive) from being read from LDIF. By default all change records are
+ * read unless explicitly excluded or included.
*
* @param excludeBranch
* The distinguished name of the branch to be excluded.
* @return A reference to this {@code LDIFChangeRecordReader}.
*/
- public LDIFChangeRecordReader setExcludeBranch(DN excludeBranch)
+ public LDIFChangeRecordReader setExcludeBranch(final DN excludeBranch)
{
Validator.ensureNotNull(excludeBranch);
excludeBranches.add(excludeBranch);
@@ -370,16 +359,16 @@
/**
- * Ensures that the named attribute is not excluded from any change
- * records that are read from LDIF. By default all attributes are
- * included unless explicitly excluded.
+ * Ensures that the named attribute is not excluded from any change records
+ * that are read from LDIF. By default all attributes are included unless
+ * explicitly excluded.
*
* @param attributeDescription
* The name of the attribute to be included.
* @return A reference to this {@code LDIFChangeRecordReader}.
*/
public LDIFChangeRecordReader setIncludeAttribute(
- AttributeDescription attributeDescription)
+ final AttributeDescription attributeDescription)
{
Validator.ensureNotNull(attributeDescription);
includeAttributes.add(attributeDescription);
@@ -389,15 +378,15 @@
/**
- * Ensures that all change records which target entries beneath the
- * named entry (inclusive) are read from LDIF. By default all change
- * records are read unless explicitly excluded or included.
+ * Ensures that all change records which target entries beneath the named
+ * entry (inclusive) are read from LDIF. By default all change records are
+ * read unless explicitly excluded or included.
*
* @param includeBranch
* The distinguished name of the branch to be included.
* @return A reference to this {@code LDIFChangeRecordReader}.
*/
- public LDIFChangeRecordReader setIncludeBranch(DN includeBranch)
+ public LDIFChangeRecordReader setIncludeBranch(final DN includeBranch)
{
Validator.ensureNotNull(includeBranch);
includeBranches.add(includeBranch);
@@ -407,16 +396,15 @@
/**
- * Sets the schema which should be used for decoding change records
- * that are read from LDIF. The default schema is used if no other is
- * specified.
+ * Sets the schema which should be used for decoding change records that are
+ * read from LDIF. The default schema is used if no other is specified.
*
* @param schema
- * The schema which should be used for decoding change
- * records that are read from LDIF.
+ * The schema which should be used for decoding change records that
+ * are read from LDIF.
* @return A reference to this {@code LDIFChangeRecordReader}.
*/
- public LDIFChangeRecordReader setSchema(Schema schema)
+ public LDIFChangeRecordReader setSchema(final Schema schema)
{
Validator.ensureNotNull(schema);
this.schema = schema;
@@ -426,16 +414,15 @@
/**
- * Specifies whether or not schema validation should be performed for
- * change records that are read from LDIF. The default is {@code true}
- * .
+ * Specifies whether or not schema validation should be performed for change
+ * records that are read from LDIF. The default is {@code true} .
*
* @param validateSchema
- * {@code true} if schema validation should be performed, or
- * {@code false} otherwise.
+ * {@code true} if schema validation should be performed, or {@code
+ * false} otherwise.
* @return A reference to this {@code LDIFChangeRecordReader}.
*/
- public LDIFChangeRecordReader setValidateSchema(boolean validateSchema)
+ public LDIFChangeRecordReader setValidateSchema(final boolean validateSchema)
{
this.validateSchema = validateSchema;
return this;
@@ -443,11 +430,12 @@
- private ChangeRecord parseAddChangeRecordEntry(DN entryDN,
- String lastLDIFLine, LDIFRecord record) throws DecodeException
+ private ChangeRecord parseAddChangeRecordEntry(final DN entryDN,
+ final String lastLDIFLine, final LDIFRecord record)
+ throws DecodeException
{
// Use an Entry for the AttributeSequence.
- final Entry entry = new SortedEntry(entryDN);
+ final Entry entry = new LinkedHashMapEntry(entryDN);
if (lastLDIFLine != null)
{
@@ -466,13 +454,14 @@
- private ChangeRecord parseDeleteChangeRecordEntry(DN entryDN,
- LDIFRecord record) throws DecodeException
+ private ChangeRecord parseDeleteChangeRecordEntry(final DN entryDN,
+ final LDIFRecord record) throws DecodeException
{
if (record.iterator.hasNext())
{
// FIXME: include line number in error.
- final LocalizableMessage message = ERR_LDIF_INVALID_DELETE_ATTRIBUTES.get();
+ final LocalizableMessage message = ERR_LDIF_INVALID_DELETE_ATTRIBUTES
+ .get();
throw DecodeException.error(message);
}
@@ -481,11 +470,10 @@
- private ChangeRecord parseModifyChangeRecordEntry(DN entryDN,
- LDIFRecord record) throws DecodeException
+ private ChangeRecord parseModifyChangeRecordEntry(final DN entryDN,
+ final LDIFRecord record) throws DecodeException
{
- final ModifyRequest modifyRequest = Requests
- .newModifyRequest(entryDN);
+ final ModifyRequest modifyRequest = Requests.newModifyRequest(entryDN);
final KeyValuePair pair = new KeyValuePair();
final List<ByteString> attributeValues = new ArrayList<ByteString>();
@@ -515,16 +503,15 @@
else
{
// FIXME: improve error.
- final LocalizableMessage message = ERR_LDIF_INVALID_MODIFY_ATTRIBUTE.get(
- pair.key, "add, delete, replace, increment");
+ final LocalizableMessage message = ERR_LDIF_INVALID_MODIFY_ATTRIBUTE
+ .get(pair.key, "add, delete, replace, increment");
throw DecodeException.error(message);
}
AttributeDescription attributeDescription;
try
{
- attributeDescription = AttributeDescription.valueOf(pair.value,
- schema);
+ attributeDescription = AttributeDescription.valueOf(pair.value, schema);
}
catch (final LocalizedIllegalArgumentException e)
{
@@ -543,8 +530,7 @@
if (!attributeDescription.getAttributeType().getSyntax()
.isBEREncodingRequired())
{
- if (validateSchema
- && attributeDescription.containsOption("binary"))
+ if (validateSchema && attributeDescription.containsOption("binary"))
{
final LocalizableMessage message = ERR_LDIF_INVALID_ATTR_OPTION.get(
entryDN.toString(), record.lineNumber, pair.value);
@@ -575,8 +561,8 @@
AttributeDescription attributeDescription2;
try
{
- attributeDescription2 = AttributeDescription.valueOf(
- attrDescr, schema);
+ attributeDescription2 = AttributeDescription.valueOf(attrDescr,
+ schema);
}
catch (final LocalizedIllegalArgumentException e)
{
@@ -595,8 +581,8 @@
{
// TODO: include line number.
final LocalizableMessage message = ERR_LDIF_INVALID_CHANGERECORD_ATTRIBUTE
- .get(attributeDescription2.toString(),
- attributeDescription.toString());
+ .get(attributeDescription2.toString(), attributeDescription
+ .toString());
throw DecodeException.error(message);
}
@@ -605,9 +591,9 @@
colonPos, attrDescr));
}
- Change change = new Change(modType, new LinkedAttribute(
- attributeDescription, attributeValues));
- modifyRequest.addChange(change);
+ final Modification change = new Modification(modType,
+ new LinkedAttribute(attributeDescription, attributeValues));
+ modifyRequest.addModification(change);
}
return modifyRequest;
@@ -615,8 +601,8 @@
- private ChangeRecord parseModifyDNChangeRecordEntry(DN entryDN,
- LDIFRecord record) throws DecodeException
+ private ChangeRecord parseModifyDNChangeRecordEntry(final DN entryDN,
+ final LDIFRecord record) throws DecodeException
{
ModifyDNRequest modifyDNRequest;
@@ -634,7 +620,8 @@
if (!toLowerCase(pair.key).equals("newrdn"))
{
// FIXME: improve error.
- final LocalizableMessage message = LocalizableMessage.raw("Missing newrdn");
+ final LocalizableMessage message = LocalizableMessage
+ .raw("Missing newrdn");
throw DecodeException.error(message);
}
@@ -654,7 +641,8 @@
if (!record.iterator.hasNext())
{
// TODO: include line number.
- final LocalizableMessage message = ERR_LDIF_NO_DELETE_OLDRDN_ATTRIBUTE.get();
+ final LocalizableMessage message = ERR_LDIF_NO_DELETE_OLDRDN_ATTRIBUTE
+ .get();
throw DecodeException.error(message);
}
@@ -663,13 +651,13 @@
if (!toLowerCase(pair.key).equals("deleteoldrdn"))
{
// FIXME: improve error.
- final LocalizableMessage message = LocalizableMessage.raw("Missing deleteoldrdn");
+ final LocalizableMessage message = LocalizableMessage
+ .raw("Missing deleteoldrdn");
throw DecodeException.error(message);
}
final String delStr = toLowerCase(pair.value);
- if (delStr.equals("false") || delStr.equals("no")
- || delStr.equals("0"))
+ if (delStr.equals("false") || delStr.equals("no") || delStr.equals("0"))
{
modifyDNRequest.setDeleteOldRDN(false);
}
@@ -694,7 +682,8 @@
if (!toLowerCase(pair.key).equals("newsuperior"))
{
// FIXME: improve error.
- final LocalizableMessage message = LocalizableMessage.raw("Missing newsuperior");
+ final LocalizableMessage message = LocalizableMessage
+ .raw("Missing newsuperior");
throw DecodeException.error(message);
}
--
Gitblit v1.10.0