Improve javadocs
git-svn-id: https://svn.apache.org/repos/asf/jakarta/commons/proper/lang/trunk@137869 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/java/org/apache/commons/lang/mutable/Mutable.java b/src/java/org/apache/commons/lang/mutable/Mutable.java
index 8e0a228..f8944d1 100755
--- a/src/java/org/apache/commons/lang/mutable/Mutable.java
+++ b/src/java/org/apache/commons/lang/mutable/Mutable.java
@@ -16,26 +16,37 @@
package org.apache.commons.lang.mutable;
/**
- * A mutable object.
+ * Defines an object that allows mutable access to a value.
+ * <p>
+ * <code>Mutable</code> is used as a generic interface to the implementations
+ * in this package.
+ * <p>
+ * A typical use case would be to enable a primitive or string to be passed
+ * to a method and allow that method to effectively change the value of the
+ * primitive/string. Another use case is to store a frequently changing
+ * primitive in a collection (for example a total in a map) without needing
+ * to create new Integer/Long wrapper objects.
*
* @author Matthew Hawthorne
* @since 2.1
- * @version $Id: Mutable.java,v 1.1 2004/06/11 02:26:32 matth Exp $
+ * @version $Id: Mutable.java,v 1.2 2004/07/05 22:12:22 scolebourne Exp $
*/
public interface Mutable {
/**
- * Sets the value of this object.
+ * Gets the value of this mutable.
*
- * @param value the value of this object.
+ * @return the stored value
*/
- public void setValue(Object value);
+ Object getValue();
/**
- * Gets the value of this object.
+ * Sets the value of this mutable.
*
- * @return a value.
+ * @param value the value to store
+ * @throws NullPointerException if the object is null and null is invalid
+ * @throws ClassCastException if the type is invalid
*/
- public Object getValue();
+ void setValue(Object value);
}