From 546fbe6fd729eff1a0066690997c21f70a852711 Mon Sep 17 00:00:00 2001
From: matthew_swift <matthew_swift@localhost>
Date: Thu, 01 Jul 2010 14:35:48 +0000
Subject: [PATCH] Split Types utility class into Attributes and Entries sub-classes so that they are easier to find.
---
opendj-sdk/sdk/tests/unit-tests-testng/src/org/opends/sdk/TypesTestCase.java | 12
opendj-sdk/sdk/src/org/opends/sdk/Entries.java | 351 +++++++++++++++++++++++++++++
opendj-sdk/sdk/src/org/opends/sdk/Attributes.java | 312 -------------------------
opendj-sdk/sdk/tests/unit-tests-testng/src/org/opends/sdk/LDAPServer.java | 5
opendj-sdk/sdk/src/org/opends/sdk/AbstractEntry.java | 5
opendj-sdk/sdk/src/org/opends/sdk/controls/PreReadResponseControl.java | 6
opendj-sdk/sdk/src/org/opends/sdk/controls/PostReadResponseControl.java | 6
7 files changed, 373 insertions(+), 324 deletions(-)
diff --git a/opendj-sdk/sdk/src/org/opends/sdk/AbstractEntry.java b/opendj-sdk/sdk/src/org/opends/sdk/AbstractEntry.java
index 8a6379a..6898a9a 100644
--- a/opendj-sdk/sdk/src/org/opends/sdk/AbstractEntry.java
+++ b/opendj-sdk/sdk/src/org/opends/sdk/AbstractEntry.java
@@ -22,7 +22,7 @@
* CDDL HEADER END
*
*
- * Copyright 2009 Sun Microsystems, Inc.
+ * Copyright 2009-2010 Sun Microsystems, Inc.
*/
package org.opends.sdk;
@@ -311,7 +311,8 @@
public boolean removeAttribute(final AttributeDescription attributeDescription)
throws UnsupportedOperationException, NullPointerException
{
- return removeAttribute(Types.emptyAttribute(attributeDescription), null);
+ return removeAttribute(
+ Attributes.emptyAttribute(attributeDescription), null);
}
diff --git a/opendj-sdk/sdk/src/org/opends/sdk/Types.java b/opendj-sdk/sdk/src/org/opends/sdk/Attributes.java
similarity index 66%
rename from opendj-sdk/sdk/src/org/opends/sdk/Types.java
rename to opendj-sdk/sdk/src/org/opends/sdk/Attributes.java
index c8cbd29..1ae5c2a 100644
--- a/opendj-sdk/sdk/src/org/opends/sdk/Types.java
+++ b/opendj-sdk/sdk/src/org/opends/sdk/Attributes.java
@@ -22,7 +22,7 @@
* CDDL HEADER END
*
*
- * Copyright 2009 Sun Microsystems, Inc.
+ * Copyright 2010 Sun Microsystems, Inc.
*/
package org.opends.sdk;
@@ -35,18 +35,15 @@
import org.opends.sdk.schema.AttributeType;
-import com.sun.opends.sdk.util.Function;
-import com.sun.opends.sdk.util.Iterables;
import com.sun.opends.sdk.util.Iterators;
import com.sun.opends.sdk.util.Validator;
/**
- * This class contains methods for creating and manipulating attributes,
- * entries, and other types of object.
+ * This class contains methods for creating and manipulating attributes.
*/
-public final class Types
+public final class Attributes
{
/**
@@ -546,286 +543,6 @@
- private static final class UnmodifiableEntry implements Entry
- {
- private final Entry entry;
-
-
-
- private UnmodifiableEntry(final Entry entry)
- {
- this.entry = entry;
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- public boolean addAttribute(final Attribute attribute)
- throws UnsupportedOperationException, NullPointerException
- {
- throw new UnsupportedOperationException();
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- public boolean addAttribute(final Attribute attribute,
- final Collection<ByteString> duplicateValues)
- throws UnsupportedOperationException, NullPointerException
- {
- throw new UnsupportedOperationException();
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- public Entry addAttribute(final String attributeDescription,
- final Object... values) throws LocalizedIllegalArgumentException,
- UnsupportedOperationException, NullPointerException
- {
- throw new UnsupportedOperationException();
- }
-
-
-
- public Entry clearAttributes() throws UnsupportedOperationException
- {
- throw new UnsupportedOperationException();
- }
-
-
-
- public boolean containsAttribute(final Attribute attribute,
- final Collection<ByteString> missingValues) throws NullPointerException
- {
- return entry.containsAttribute(attribute, missingValues);
- }
-
-
-
- public boolean containsAttribute(final String attributeDescription,
- final Object... values) throws LocalizedIllegalArgumentException,
- NullPointerException
- {
- return entry.containsAttribute(attributeDescription, values);
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- @Override
- public boolean equals(final Object object)
- {
- return (object == this || entry.equals(object));
- }
-
-
-
- public Iterable<Attribute> getAllAttributes()
- {
- return Iterables.unmodifiable(Iterables.transform(entry
- .getAllAttributes(), UNMODIFIABLE_ATTRIBUTE_FUNCTION));
- }
-
-
-
- public Iterable<Attribute> getAllAttributes(
- final AttributeDescription attributeDescription)
- {
- return Iterables.unmodifiable(Iterables.transform(entry
- .getAllAttributes(attributeDescription),
- UNMODIFIABLE_ATTRIBUTE_FUNCTION));
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- public Iterable<Attribute> getAllAttributes(
- final String attributeDescription)
- throws LocalizedIllegalArgumentException, NullPointerException
- {
- return Iterables.unmodifiable(Iterables.transform(entry
- .getAllAttributes(attributeDescription),
- UNMODIFIABLE_ATTRIBUTE_FUNCTION));
- }
-
-
-
- public Attribute getAttribute(
- final AttributeDescription attributeDescription)
- {
- final Attribute attribute = entry.getAttribute(attributeDescription);
- if (attribute != null)
- {
- return unmodifiableAttribute(attribute);
- }
- else
- {
- return null;
- }
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- public Attribute getAttribute(final String attributeDescription)
- throws LocalizedIllegalArgumentException, NullPointerException
- {
- final Attribute attribute = entry.getAttribute(attributeDescription);
- if (attribute != null)
- {
- return unmodifiableAttribute(attribute);
- }
- else
- {
- return null;
- }
- }
-
-
-
- public int getAttributeCount()
- {
- return entry.getAttributeCount();
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- public DN getName()
- {
- return entry.getName();
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- @Override
- public int hashCode()
- {
- return entry.hashCode();
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- public boolean removeAttribute(final Attribute attribute,
- final Collection<ByteString> missingValues)
- throws UnsupportedOperationException, NullPointerException
- {
- throw new UnsupportedOperationException();
- }
-
-
-
- public boolean removeAttribute(
- final AttributeDescription attributeDescription)
- throws UnsupportedOperationException, NullPointerException
- {
- throw new UnsupportedOperationException();
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- public Entry removeAttribute(final String attributeDescription,
- final Object... values) throws LocalizedIllegalArgumentException,
- UnsupportedOperationException, NullPointerException
- {
- throw new UnsupportedOperationException();
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- public boolean replaceAttribute(final Attribute attribute)
- throws UnsupportedOperationException, NullPointerException
- {
- throw new UnsupportedOperationException();
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- public Entry replaceAttribute(final String attributeDescription,
- final Object... values) throws LocalizedIllegalArgumentException,
- UnsupportedOperationException, NullPointerException
- {
- throw new UnsupportedOperationException();
- }
-
-
-
- public Entry setName(final DN dn) throws UnsupportedOperationException,
- NullPointerException
- {
- throw new UnsupportedOperationException();
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- public Entry setName(final String dn)
- throws LocalizedIllegalArgumentException,
- UnsupportedOperationException, NullPointerException
- {
- throw new UnsupportedOperationException();
- }
-
-
-
- /**
- * {@inheritDoc}
- */
- @Override
- public String toString()
- {
- return entry.toString();
- }
-
- }
-
-
-
- private static final Function<Attribute, Attribute, Void>
- UNMODIFIABLE_ATTRIBUTE_FUNCTION = new Function<Attribute, Attribute, Void>()
- {
-
- public Attribute apply(final Attribute value, final Void p)
- {
- return unmodifiableAttribute(value);
- }
-
- };
-
-
-
/**
* Returns a read-only empty attribute having the specified attribute
* description.
@@ -902,29 +619,8 @@
- /**
- * Returns a read-only view of {@code entry} and its attributes. Query
- * operations on the returned entry and its attributes"read-through" to the
- * underlying entry or attribute, and attempts to modify the returned entry
- * and its attributes either directly or indirectly via an iterator result in
- * an {@code UnsupportedOperationException}.
- *
- * @param entry
- * The entry for which a read-only view is to be returned.
- * @return A read-only view of {@code entry}.
- * @throws NullPointerException
- * If {@code entry} was {@code null}.
- */
- public static final Entry unmodifiableEntry(final Entry entry)
- throws NullPointerException
- {
- return new UnmodifiableEntry(entry);
- }
-
-
-
// Prevent instantiation.
- private Types()
+ private Attributes()
{
// Nothing to do.
}
diff --git a/opendj-sdk/sdk/src/org/opends/sdk/Entries.java b/opendj-sdk/sdk/src/org/opends/sdk/Entries.java
new file mode 100644
index 0000000..14fbaae
--- /dev/null
+++ b/opendj-sdk/sdk/src/org/opends/sdk/Entries.java
@@ -0,0 +1,351 @@
+/*
+ * CDDL HEADER START
+ *
+ * The contents of this file are subject to the terms of the
+ * Common Development and Distribution License, Version 1.0 only
+ * (the "License"). You may not use this file except in compliance
+ * with the License.
+ *
+ * You can obtain a copy of the license at
+ * trunk/opends/resource/legal-notices/OpenDS.LICENSE
+ * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
+ * See the License for the specific language governing permissions
+ * and limitations under the License.
+ *
+ * When distributing Covered Code, include this CDDL HEADER in each
+ * file and include the License file at
+ * trunk/opends/resource/legal-notices/OpenDS.LICENSE. If applicable,
+ * add the following below this CDDL HEADER, with the fields enclosed
+ * by brackets "[]" replaced with your own identifying information:
+ * Portions Copyright [yyyy] [name of copyright owner]
+ *
+ * CDDL HEADER END
+ *
+ *
+ * Copyright 2010 Sun Microsystems, Inc.
+ */
+
+package org.opends.sdk;
+
+
+
+import java.util.Collection;
+
+import com.sun.opends.sdk.util.Function;
+import com.sun.opends.sdk.util.Iterables;
+
+
+
+/**
+ * This class contains methods for creating and manipulating entries.
+ */
+public final class Entries
+{
+
+ private static final class UnmodifiableEntry implements Entry
+ {
+ private final Entry entry;
+
+
+
+ private UnmodifiableEntry(final Entry entry)
+ {
+ this.entry = entry;
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public boolean addAttribute(final Attribute attribute)
+ throws UnsupportedOperationException, NullPointerException
+ {
+ throw new UnsupportedOperationException();
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public boolean addAttribute(final Attribute attribute,
+ final Collection<ByteString> duplicateValues)
+ throws UnsupportedOperationException, NullPointerException
+ {
+ throw new UnsupportedOperationException();
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public Entry addAttribute(final String attributeDescription,
+ final Object... values) throws LocalizedIllegalArgumentException,
+ UnsupportedOperationException, NullPointerException
+ {
+ throw new UnsupportedOperationException();
+ }
+
+
+
+ public Entry clearAttributes() throws UnsupportedOperationException
+ {
+ throw new UnsupportedOperationException();
+ }
+
+
+
+ public boolean containsAttribute(final Attribute attribute,
+ final Collection<ByteString> missingValues) throws NullPointerException
+ {
+ return entry.containsAttribute(attribute, missingValues);
+ }
+
+
+
+ public boolean containsAttribute(final String attributeDescription,
+ final Object... values) throws LocalizedIllegalArgumentException,
+ NullPointerException
+ {
+ return entry.containsAttribute(attributeDescription, values);
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public boolean equals(final Object object)
+ {
+ return (object == this || entry.equals(object));
+ }
+
+
+
+ public Iterable<Attribute> getAllAttributes()
+ {
+ return Iterables.unmodifiable(Iterables.transform(entry
+ .getAllAttributes(), UNMODIFIABLE_ATTRIBUTE_FUNCTION));
+ }
+
+
+
+ public Iterable<Attribute> getAllAttributes(
+ final AttributeDescription attributeDescription)
+ {
+ return Iterables.unmodifiable(Iterables.transform(entry
+ .getAllAttributes(attributeDescription),
+ UNMODIFIABLE_ATTRIBUTE_FUNCTION));
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public Iterable<Attribute> getAllAttributes(
+ final String attributeDescription)
+ throws LocalizedIllegalArgumentException, NullPointerException
+ {
+ return Iterables.unmodifiable(Iterables.transform(entry
+ .getAllAttributes(attributeDescription),
+ UNMODIFIABLE_ATTRIBUTE_FUNCTION));
+ }
+
+
+
+ public Attribute getAttribute(
+ final AttributeDescription attributeDescription)
+ {
+ final Attribute attribute = entry.getAttribute(attributeDescription);
+ if (attribute != null)
+ {
+ return Attributes.unmodifiableAttribute(attribute);
+ }
+ else
+ {
+ return null;
+ }
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public Attribute getAttribute(final String attributeDescription)
+ throws LocalizedIllegalArgumentException, NullPointerException
+ {
+ final Attribute attribute = entry.getAttribute(attributeDescription);
+ if (attribute != null)
+ {
+ return Attributes.unmodifiableAttribute(attribute);
+ }
+ else
+ {
+ return null;
+ }
+ }
+
+
+
+ public int getAttributeCount()
+ {
+ return entry.getAttributeCount();
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public DN getName()
+ {
+ return entry.getName();
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public int hashCode()
+ {
+ return entry.hashCode();
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public boolean removeAttribute(final Attribute attribute,
+ final Collection<ByteString> missingValues)
+ throws UnsupportedOperationException, NullPointerException
+ {
+ throw new UnsupportedOperationException();
+ }
+
+
+
+ public boolean removeAttribute(
+ final AttributeDescription attributeDescription)
+ throws UnsupportedOperationException, NullPointerException
+ {
+ throw new UnsupportedOperationException();
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public Entry removeAttribute(final String attributeDescription,
+ final Object... values) throws LocalizedIllegalArgumentException,
+ UnsupportedOperationException, NullPointerException
+ {
+ throw new UnsupportedOperationException();
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public boolean replaceAttribute(final Attribute attribute)
+ throws UnsupportedOperationException, NullPointerException
+ {
+ throw new UnsupportedOperationException();
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public Entry replaceAttribute(final String attributeDescription,
+ final Object... values) throws LocalizedIllegalArgumentException,
+ UnsupportedOperationException, NullPointerException
+ {
+ throw new UnsupportedOperationException();
+ }
+
+
+
+ public Entry setName(final DN dn) throws UnsupportedOperationException,
+ NullPointerException
+ {
+ throw new UnsupportedOperationException();
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ public Entry setName(final String dn)
+ throws LocalizedIllegalArgumentException,
+ UnsupportedOperationException, NullPointerException
+ {
+ throw new UnsupportedOperationException();
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public String toString()
+ {
+ return entry.toString();
+ }
+
+ }
+
+
+
+ private static final Function<Attribute, Attribute, Void>
+ UNMODIFIABLE_ATTRIBUTE_FUNCTION = new Function<Attribute, Attribute, Void>()
+ {
+
+ public Attribute apply(final Attribute value, final Void p)
+ {
+ return Attributes.unmodifiableAttribute(value);
+ }
+
+ };
+
+
+
+ /**
+ * Returns a read-only view of {@code entry} and its attributes. Query
+ * operations on the returned entry and its attributes"read-through" to the
+ * underlying entry or attribute, and attempts to modify the returned entry
+ * and its attributes either directly or indirectly via an iterator result in
+ * an {@code UnsupportedOperationException}.
+ *
+ * @param entry
+ * The entry for which a read-only view is to be returned.
+ * @return A read-only view of {@code entry}.
+ * @throws NullPointerException
+ * If {@code entry} was {@code null}.
+ */
+ public static final Entry unmodifiableEntry(final Entry entry)
+ throws NullPointerException
+ {
+ return new UnmodifiableEntry(entry);
+ }
+
+
+
+ // Prevent instantiation.
+ private Entries()
+ {
+ // Nothing to do.
+ }
+}
diff --git a/opendj-sdk/sdk/src/org/opends/sdk/controls/PostReadResponseControl.java b/opendj-sdk/sdk/src/org/opends/sdk/controls/PostReadResponseControl.java
index ecbb514..56f7631 100644
--- a/opendj-sdk/sdk/src/org/opends/sdk/controls/PostReadResponseControl.java
+++ b/opendj-sdk/sdk/src/org/opends/sdk/controls/PostReadResponseControl.java
@@ -22,7 +22,7 @@
* CDDL HEADER END
*
*
- * Copyright 2009 Sun Microsystems, Inc.
+ * Copyright 2009-2010 Sun Microsystems, Inc.
*/
package org.opends.sdk.controls;
@@ -121,7 +121,7 @@
* rather than an Entry. Can we assume that the response will not contain
* a nested set of controls?
*/
- return new PostReadResponseControl(control.isCritical(), Types
+ return new PostReadResponseControl(control.isCritical(), Entries
.unmodifiableEntry(searchEntry));
}
@@ -155,7 +155,7 @@
* SearchResultEntry rather than an Entry. Can we assume that the response
* will not contain a nested set of controls?
*/
- return new PostReadResponseControl(false, Types.unmodifiableEntry(entry));
+ return new PostReadResponseControl(false, Entries.unmodifiableEntry(entry));
}
diff --git a/opendj-sdk/sdk/src/org/opends/sdk/controls/PreReadResponseControl.java b/opendj-sdk/sdk/src/org/opends/sdk/controls/PreReadResponseControl.java
index 2854ca1..5f5953b 100644
--- a/opendj-sdk/sdk/src/org/opends/sdk/controls/PreReadResponseControl.java
+++ b/opendj-sdk/sdk/src/org/opends/sdk/controls/PreReadResponseControl.java
@@ -22,7 +22,7 @@
* CDDL HEADER END
*
*
- * Copyright 2009 Sun Microsystems, Inc.
+ * Copyright 2009-2010 Sun Microsystems, Inc.
*/
package org.opends.sdk.controls;
@@ -121,7 +121,7 @@
* rather than an Entry. Can we assume that the response will not contain
* a nested set of controls?
*/
- return new PreReadResponseControl(control.isCritical(), Types
+ return new PreReadResponseControl(control.isCritical(), Entries
.unmodifiableEntry(searchEntry));
}
@@ -155,7 +155,7 @@
* SearchResultEntry rather than an Entry. Can we assume that the response
* will not contain a nested set of controls?
*/
- return new PreReadResponseControl(false, Types.unmodifiableEntry(entry));
+ return new PreReadResponseControl(false, Entries.unmodifiableEntry(entry));
}
diff --git a/opendj-sdk/sdk/tests/unit-tests-testng/src/org/opends/sdk/LDAPServer.java b/opendj-sdk/sdk/tests/unit-tests-testng/src/org/opends/sdk/LDAPServer.java
index 3021311..08cf276 100644
--- a/opendj-sdk/sdk/tests/unit-tests-testng/src/org/opends/sdk/LDAPServer.java
+++ b/opendj-sdk/sdk/tests/unit-tests-testng/src/org/opends/sdk/LDAPServer.java
@@ -157,7 +157,8 @@
private LDAPServer()
{
// Add the root dse first.
- entryMap.put(DN.rootDN(), Types.unmodifiableEntry(new LinkedHashMapEntry()));
+ entryMap.put(DN.rootDN(),
+ Entries.unmodifiableEntry(new LinkedHashMapEntry()));
for (int i = 0; i < 1000; i++)
{
final String dn = String.format("uid=user.%d,ou=people,o=test", i);
@@ -169,7 +170,7 @@
final Entry e = new LinkedHashMapEntry("dn: " + dn,
"objectclass: person", "objectclass: inetorgperson",
"objectclass: top", cn, sn, uid);
- entryMap.put(d, Types.unmodifiableEntry(e));
+ entryMap.put(d, Entries.unmodifiableEntry(e));
}
}
diff --git a/opendj-sdk/sdk/tests/unit-tests-testng/src/org/opends/sdk/TypesTestCase.java b/opendj-sdk/sdk/tests/unit-tests-testng/src/org/opends/sdk/TypesTestCase.java
index fc5d201..d78ba50 100644
--- a/opendj-sdk/sdk/tests/unit-tests-testng/src/org/opends/sdk/TypesTestCase.java
+++ b/opendj-sdk/sdk/tests/unit-tests-testng/src/org/opends/sdk/TypesTestCase.java
@@ -87,10 +87,10 @@
Schema.getCoreSchema());
final AttributeDescription desc2 = AttributeDescription.valueOf(desc,
Schema.getCoreSchema());
- final Attribute attr1 = Types.emptyAttribute(desc1);
+ final Attribute attr1 = Attributes.emptyAttribute(desc1);
try
{
- Types.renameAttribute(attr1, desc2);
+ Attributes.renameAttribute(attr1, desc2);
}
catch (final Exception e)
{
@@ -114,7 +114,7 @@
{
final AttributeDescription desc = AttributeDescription.valueOf(attrDesc,
Schema.getCoreSchema());
- final Attribute attr = Types.emptyAttribute(desc);
+ final Attribute attr = Attributes.emptyAttribute(desc);
assertTrue(attr.isEmpty());
}
@@ -130,10 +130,10 @@
{
final AttributeDescription desc = AttributeDescription.valueOf(attrDesc,
Schema.getCoreSchema());
- final Attribute attr = Types.emptyAttribute(desc);
+ final Attribute attr = Attributes.emptyAttribute(desc);
attr.add("test"); // should go through.
// Make it unmodifiable.
- final Attribute attr1 = Types.unmodifiableAttribute(attr);
+ final Attribute attr1 = Attributes.unmodifiableAttribute(attr);
attr1.add("test");
}
@@ -150,7 +150,7 @@
final Entry entry = new LinkedHashMapEntry("cn=test");
// add a value.
entry.clearAttributes();
- final Entry entry1 = Types.unmodifiableEntry(entry);
+ final Entry entry1 = Entries.unmodifiableEntry(entry);
entry1.clearAttributes();
}
}
--
Gitblit v1.10.0