Author: scolebourne
Date: Fri Mar  4 15:08:53 2011
New Revision: 1077992

URL: http://svn.apache.org/viewvc?rev=1077992&view=rev
Log:
Javadoc

Modified:
    
commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/ObjectUtils.java

Modified: 
commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/ObjectUtils.java
URL: 
http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/ObjectUtils.java?rev=1077992&r1=1077991&r2=1077992&view=diff
==============================================================================
--- 
commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/ObjectUtils.java
 (original)
+++ 
commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/ObjectUtils.java
 Fri Mar  4 15:08:53 2011
@@ -24,10 +24,10 @@ import java.lang.reflect.Method;
 import org.apache.commons.lang3.exception.CloneFailedException;
 
 /**
- * <p>Operations on <code>Object</code>.</p>
+ * <p>Operations on {@code Object}.</p>
  * 
- * <p>This class tries to handle <code>null</code> input gracefully.
- * An exception will generally not be thrown for a <code>null</code> input.
+ * <p>This class tries to handle {@code null} input gracefully.
+ * An exception will generally not be thrown for a {@code null} input.
  * Each method documents its behaviour in more detail.</p>
  *
  * <p>#ThreadSafe#</p>
@@ -45,17 +45,16 @@ import org.apache.commons.lang3.exceptio
 public class ObjectUtils {
 
     /**
-     * <p>Singleton used as a <code>null</code> placeholder where
-     * <code>null</code> has another meaning.</p>
+     * <p>Singleton used as a {@code null} placeholder where
+     * {@code null} has another meaning.</p>
      *
-     * <p>For example, in a <code>HashMap</code> the
+     * <p>For example, in a {@code HashMap} the
      * {@link java.util.HashMap#get(java.lang.Object)} method returns
-     * <code>null</code> if the <code>Map</code> contains
-     * <code>null</code> or if there is no matching key. The
-     * <code>Null</code> placeholder can be used to distinguish between
-     * these two cases.</p>
+     * {@code null} if the {@code Map} contains {@code null} or if there
+     * is no matching key. The {@code Null} placeholder can be used to
+     * distinguish between these two cases.</p>
      *
-     * <p>Another example is <code>Hashtable</code>, where <code>null</code>
+     * <p>Another example is {@code Hashtable}, where {@code null}
      * cannot be stored.</p>
      *
      * <p>This instance is Serializable.</p>
@@ -63,12 +62,12 @@ public class ObjectUtils {
     public static final Null NULL = new Null();
     
     /**
-     * <p><code>ObjectUtils</code> instances should NOT be constructed in
-     * standard programming. Instead, the class should be used as
-     * <code>ObjectUtils.defaultIfNull("a","b");</code>.</p>
+     * <p>{@code ObjectUtils} instances should NOT be constructed in
+     * standard programming. Instead, the static methods on the class should
+     * be used, such as {@code ObjectUtils.defaultIfNull("a","b");}.</p>
      *
-     * <p>This constructor is public to permit tools that require a JavaBean 
instance
-     * to operate.</p>
+     * <p>This constructor is public to permit tools that require a JavaBean
+     * instance to operate.</p>
      */
     public ObjectUtils() {
         super();
@@ -77,8 +76,7 @@ public class ObjectUtils {
     // Defaulting
     //-----------------------------------------------------------------------
     /**
-     * <p>Returns a default value if the object passed is
-     * <code>null</code>.</p>
+     * <p>Returns a default value if the object passed is {@code null}.</p>
      * 
      * <pre>
      * ObjectUtils.defaultIfNull(null, null)      = null
@@ -88,18 +86,18 @@ public class ObjectUtils {
      * ObjectUtils.defaultIfNull(Boolean.TRUE, *) = Boolean.TRUE
      * </pre>
      *
-     * @param object  the <code>Object</code> to test, may be <code>null</code>
-     * @param defaultValue  the default value to return, may be 
<code>null</code>
-     * @return <code>object</code> if it is not <code>null</code>, 
defaultValue otherwise
+     * @param object  the {@code Object} to test, may be {@code null}
+     * @param defaultValue  the default value to return, may be {@code null}
+     * @return {@code object} if it is not {@code null}, defaultValue otherwise
      */
     public static <T> T defaultIfNull(T object, T defaultValue) {
         return object != null ? object : defaultValue;
     }
 
     /**
-     * <p>Returns the first value in the array which is not <code>null</code>.
-     * If all the values are <code>null</code> or the array is 
<code>null</code>
-     * or empty then <code>null</code> is returned.</p>
+     * <p>Returns the first value in the array which is not {@code null}.
+     * If all the values are {@code null} or the array is {@code null}
+     * or empty then {@code null} is returned.</p>
      * 
      * <pre>
      * ObjectUtils.firstNonNull(null, null)      = null
@@ -112,9 +110,9 @@ public class ObjectUtils {
      * ObjectUtils.firstNonNull()                = null
      * </pre>
      *
-     * @param values  the values to test, may be <code>null</code> or empty
-     * @return the first value from <code>values</code> which is not 
<code>null</code>,
-     *  or <code>null</code> if there are no non-null values
+     * @param values  the values to test, may be {@code null} or empty
+     * @return the first value from {@code values} which is not {@code null},
+     *  or {@code null} if there are no non-null values
      */
     public static <T> T firstNonNull(T... values) {
         if (values != null) {
@@ -131,7 +129,7 @@ public class ObjectUtils {
     //-----------------------------------------------------------------------
     /**
      * <p>Compares two objects for equality, where either one or both
-     * objects may be <code>null</code>.</p>
+     * objects may be {@code null}.</p>
      *
      * <pre>
      * ObjectUtils.equals(null, null)                  = true
@@ -144,9 +142,9 @@ public class ObjectUtils {
      * ObjectUtils.equals(Boolean.TRUE, Boolean.FALSE) = false
      * </pre>
      *
-     * @param object1  the first object, may be <code>null</code>
-     * @param object2  the second object, may be <code>null</code>
-     * @return <code>true</code> if the values of both objects are the same
+     * @param object1  the first object, may be {@code null}
+     * @param object2  the second object, may be {@code null}
+     * @return {@code true} if the values of both objects are the same
      */
     public static boolean equals(Object object1, Object object2) {
         if (object1 == object2) {
@@ -160,7 +158,7 @@ public class ObjectUtils {
 
     /**
      * <p>Compares two objects for inequality, where either one or both
-     * objects may be <code>null</code>.</p>
+     * objects may be {@code null}.</p>
      *
      * <pre>
      * ObjectUtils.notEqual(null, null)                  = false
@@ -173,9 +171,9 @@ public class ObjectUtils {
      * ObjectUtils.notEqual(Boolean.TRUE, Boolean.FALSE) = true
      * </pre>
      *
-     * @param object1  the first object, may be <code>null</code>
-     * @param object2  the second object, may be <code>null</code>
-     * @return <code>false</code> if the values of both objects are the same
+     * @param object1  the first object, may be {@code null}
+     * @param object2  the second object, may be {@code null}
+     * @return {@code false} if the values of both objects are the same
      */
     public static boolean notEqual(Object object1, Object object2) {
         return ObjectUtils.equals(object1, object2) == false;
@@ -183,14 +181,14 @@ public class ObjectUtils {
 
     /**
      * <p>Gets the hash code of an object returning zero when the
-     * object is <code>null</code>.</p>
+     * object is {@code null}.</p>
      *
      * <pre>
      * ObjectUtils.hashCode(null)   = 0
      * ObjectUtils.hashCode(obj)    = obj.hashCode()
      * </pre>
      *
-     * @param obj  the object to obtain the hash code of, may be 
<code>null</code>
+     * @param obj  the object to obtain the hash code of, may be {@code null}
      * @return the hash code of the object, or zero if null
      * @since 2.1
      */
@@ -201,9 +199,9 @@ public class ObjectUtils {
     // Identity ToString
     //-----------------------------------------------------------------------
     /**
-     * <p>Gets the toString that would be produced by <code>Object</code>
-     * if a class did not override toString itself. <code>null</code>
-     * will return <code>null</code>.</p>
+     * <p>Gets the toString that would be produced by {@code Object}
+     * if a class did not override toString itself. {@code null}
+     * will return {@code null}.</p>
      *
      * <pre>
      * ObjectUtils.identityToString(null)         = null
@@ -212,9 +210,9 @@ public class ObjectUtils {
      * </pre>
      *
      * @param object  the object to create a toString for, may be
-     *  <code>null</code>
-     * @return the default toString text, or <code>null</code> if
-     *  <code>null</code> passed in
+     *  {@code null}
+     * @return the default toString text, or {@code null} if
+     *  {@code null} passed in
      */
     public static String identityToString(Object object) {
         if (object == null) {
@@ -226,8 +224,8 @@ public class ObjectUtils {
     }
 
     /**
-     * <p>Appends the toString that would be produced by <code>Object</code>
-     * if a class did not override toString itself. <code>null</code>
+     * <p>Appends the toString that would be produced by {@code Object}
+     * if a class did not override toString itself. {@code null}
      * will throw a NullPointerException for either of the two parameters. </p>
      *
      * <pre>
@@ -252,8 +250,8 @@ public class ObjectUtils {
     // ToString
     //-----------------------------------------------------------------------
     /**
-     * <p>Gets the <code>toString</code> of an <code>Object</code> returning
-     * an empty string ("") if <code>null</code> input.</p>
+     * <p>Gets the {@code toString} of an {@code Object} returning
+     * an empty string ("") if {@code null} input.</p>
      * 
      * <pre>
      * ObjectUtils.toString(null)         = ""
@@ -264,8 +262,8 @@ public class ObjectUtils {
      * 
      * @see StringUtils#defaultString(String)
      * @see String#valueOf(Object)
-     * @param obj  the Object to <code>toString</code>, may be null
-     * @return the passed in Object's toString, or nullStr if 
<code>null</code> input
+     * @param obj  the Object to {@code toString}, may be null
+     * @return the passed in Object's toString, or nullStr if {@code null} 
input
      * @since 2.0
      */
     public static String toString(Object obj) {
@@ -273,8 +271,8 @@ public class ObjectUtils {
     }
 
     /**
-     * <p>Gets the <code>toString</code> of an <code>Object</code> returning
-     * a specified text if <code>null</code> input.</p>
+     * <p>Gets the {@code toString} of an {@code Object} returning
+     * a specified text if {@code null} input.</p>
      * 
      * <pre>
      * ObjectUtils.toString(null, null)           = null
@@ -286,9 +284,9 @@ public class ObjectUtils {
      * 
      * @see StringUtils#defaultString(String,String)
      * @see String#valueOf(Object)
-     * @param obj  the Object to <code>toString</code>, may be null
-     * @param nullStr  the String to return if <code>null</code> input, may be 
null
-     * @return the passed in Object's toString, or nullStr if 
<code>null</code> input
+     * @param obj  the Object to {@code toString}, may be null
+     * @param nullStr  the String to return if {@code null} input, may be null
+     * @return the passed in Object's toString, or nullStr if {@code null} 
input
      * @since 2.0
      */
     public static String toString(Object obj, String nullStr) {
@@ -298,14 +296,14 @@ public class ObjectUtils {
     // Min/Max
     //-----------------------------------------------------------------------
     /**
-     * Null safe comparison of Comparables.
+     * <p>Null safe comparison of Comparables.</p>
      * 
      * @param values the set of comparable values, may be null
      * @return
      *  <ul>
      *   <li>If any objects are non-null and unequal, the lesser object.
      *   <li>If all objects are non-null and equal, the first.
-     *   <li>If any of the comparables are null, the lesser of the non-null 
object.
+     *   <li>If any of the comparables are null, the lesser of the non-null 
objects.
      *   <li>If all the comparables are null, null is returned.
      *  </ul>
      */
@@ -322,14 +320,14 @@ public class ObjectUtils {
     }
 
     /**
-     * Null safe comparison of Comparables.
+     * <p>Null safe comparison of Comparables.</p>
      * 
      * @param values the set of comparable values, may be null
      * @return
      *  <ul>
      *   <li>If any objects are non-null and unequal, the greater object.
      *   <li>If all objects are non-null and equal, the first.
-     *   <li>If any of the comparables are null, the greater of the non-null 
object.
+     *   <li>If any of the comparables are null, the greater of the non-null 
objects.
      *   <li>If all the comparables are null, null is returned.
      *  </ul>
      */
@@ -346,28 +344,28 @@ public class ObjectUtils {
     }
 
     /**
-     * Null safe comparison of Comparables.
-     * {@code null} is assumed to be less than a non-{@code null} value.
+     * <p>Null safe comparison of Comparables.
+     * {@code null} is assumed to be less than a non-{@code null} value.</p>
      * 
      * @param c1  the first comparable, may be null
      * @param c2  the second comparable, may be null
      * @return a negative value if c1 < c2, zero if c1 = c2
-     * and a positive value if c1 > c2
+     *  and a positive value if c1 > c2
      */
     public static <T extends Comparable<? super T>> int compare(T c1, T c2) {
         return compare(c1, c2, false);
     }
 
     /**
-     * Null safe comparison of Comparables.
+     * <p>Null safe comparison of Comparables.</p>
      * 
      * @param c1  the first comparable, may be null
      * @param c2  the second comparable, may be null
-     * @param nullGreater if true <code>null</code> is considered greater
-     * than a Non-<code>null</code> value or if false <code>null</code> is
-     * considered less than a Non-<code>null</code> value
+     * @param nullGreater if true {@code null} is considered greater
+     *  than a non-{@code null} value or if false {@code null} is
+     *  considered less than a Non-{@code null} value
      * @return a negative value if c1 < c2, zero if c1 = c2
-     * and a positive value if c1 > c2
+     *  and a positive value if c1 > c2
      * @see java.util.Comparator#compare(Object, Object)
      */
     public static <T extends Comparable<? super T>> int compare(T c1, T c2, 
boolean nullGreater) {
@@ -382,42 +380,42 @@ public class ObjectUtils {
     }
     
     /**
-     * Clone an object.
+     * <p>Clone an object.</p>
      * 
      * @param <T> the type of the object
-     * @param o the object to clone
-     * @return the clone if the object implements {@link Cloneable} otherwise 
<code>null</code>
+     * @param obj  the object to clone, null returns null
+     * @return the clone if the object implements {@link Cloneable} otherwise 
{@code null}
      * @throws CloneFailedException if the object is cloneable and the clone 
operation fails
      * @since 3.0
      */
-    public static <T> T clone(final T o) {
-        if (o instanceof Cloneable) {
+    public static <T> T clone(final T obj) {
+        if (obj instanceof Cloneable) {
             final Object result;
-            if (o.getClass().isArray()) {
-                final Class<?> componentType = o.getClass().getComponentType();
+            if (obj.getClass().isArray()) {
+                final Class<?> componentType = 
obj.getClass().getComponentType();
                 if (!componentType.isPrimitive()) {
-                    result = ((Object[]) o).clone();
+                    result = ((Object[]) obj).clone();
                 } else {
-                    int length = Array.getLength(o);
+                    int length = Array.getLength(obj);
                     result = Array.newInstance(componentType, length);
                     while (length-- > 0) {
-                        Array.set(result, length, Array.get(o, length));
+                        Array.set(result, length, Array.get(obj, length));
                     }
                 }
             } else {
                 try {
-                    final Method clone = o.getClass().getMethod("clone");
-                    result = clone.invoke(o);
+                    final Method clone = obj.getClass().getMethod("clone");
+                    result = clone.invoke(obj);
                 } catch (final NoSuchMethodException e) {
                     throw new CloneFailedException("Cloneable type "
-                        + o.getClass().getName()
+                        + obj.getClass().getName()
                         + " has no clone method", e);
                 } catch (final IllegalAccessException e) {
                     throw new CloneFailedException("Cannot clone Cloneable 
type "
-                        + o.getClass().getName(), e);
+                        + obj.getClass().getName(), e);
                 } catch (final InvocationTargetException e) {
                     throw new CloneFailedException("Exception cloning 
Cloneable type "
-                        + o.getClass().getName(), e.getCause());
+                        + obj.getClass().getName(), e.getCause());
                 }
             }
             @SuppressWarnings("unchecked")
@@ -429,38 +427,39 @@ public class ObjectUtils {
     }
 
     /**
-     * Clone an object if possible. This method is similar to {@link 
#clone(Object)}, but will
-     * return the provided instance as the return value instead of 
<code>null</code> if the instance
+     * <p>Clone an object if possible.</p>
+     * 
+     * <p>This method is similar to {@link #clone(Object)}, but will return 
the provided
+     * instance as the return value instead of {@code null} if the instance
      * is not cloneable. This is more convenient if the caller uses different
      * implementations (e.g. of a service) and some of the implementations do 
not allow concurrent
      * processing or have state. In such cases the implementation can simply 
provide a proper
-     * clone implementation and the caller's code does not have to change.
+     * clone implementation and the caller's code does not have to change.</p>
      * 
      * @param <T> the type of the object
-     * @param o the object to clone
+     * @param obj  the object to clone, null returns null
      * @return the clone if the object implements {@link Cloneable} otherwise 
the object itself
      * @throws CloneFailedException if the object is cloneable and the clone 
operation fails
      * @since 3.0
      */
-    public static <T> T cloneIfPossible(final T o) {
-        final T clone = clone(o);
-        return clone == null ? o : clone;
+    public static <T> T cloneIfPossible(final T obj) {
+        final T clone = clone(obj);
+        return clone == null ? obj : clone;
     }
 
     // Null
     //-----------------------------------------------------------------------
     /**
-     * <p>Class used as a null placeholder where <code>null</code>
+     * <p>Class used as a null placeholder where {@code null}
      * has another meaning.</p>
      *
-     * <p>For example, in a <code>HashMap</code> the
+     * <p>For example, in a {@code HashMap} the
      * {@link java.util.HashMap#get(java.lang.Object)} method returns
-     * <code>null</code> if the <code>Map</code> contains
-     * <code>null</code> or if there is no matching key. The
-     * <code>Null</code> placeholder can be used to distinguish between
-     * these two cases.</p>
+     * {@code null} if the {@code Map} contains {@code null} or if there is
+     * no matching key. The {@code Null} placeholder can be used to distinguish
+     * between these two cases.</p>
      *
-     * <p>Another example is <code>Hashtable</code>, where <code>null</code>
+     * <p>Another example is {@code Hashtable}, where {@code null}
      * cannot be stored.</p>
      */
     public static class Null implements Serializable {


Reply via email to