Index: lams_common/src/java/org/lamsfoundation/lams/tool/ToolAccessMode.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/tool/ToolAccessMode.java,v diff -u -r1.5 -r1.6 --- lams_common/src/java/org/lamsfoundation/lams/tool/ToolAccessMode.java 3 Apr 2006 23:36:52 -0000 1.5 +++ lams_common/src/java/org/lamsfoundation/lams/tool/ToolAccessMode.java 27 Apr 2006 00:38:22 -0000 1.6 @@ -26,6 +26,9 @@ import java.io.ObjectStreamException; import java.io.Serializable; +import org.apache.commons.lang.StringUtils; +import org.apache.commons.lang.builder.HashCodeBuilder; + /** *
ToolAccessMode is implemented using Ordinal-based typesafe enum pattern. * It resolves the performance and potential hard coding error problems of using @@ -84,7 +87,28 @@ { return VALUES[ordinal]; } + + @Override + public boolean equals(Object obj) { + if(!(obj instanceof ToolAccessMode)) + return false; + return StringUtils.equals(((ToolAccessMode)obj).name,this.name); + } + + @Override + public int hashCode() { + return new HashCodeBuilder().append(name).toHashCode(); + } + public boolean isTeacher(ToolAccessMode mode){ + return TEACHER.equals(mode); + } + public boolean isLearner(ToolAccessMode mode){ + return LEARNER.equals(mode); + } + public boolean isAuthor(ToolAccessMode mode){ + return AUTHOR.equals(mode); + } } \ No newline at end of file