Author: niklas
Date: Mon Jan 29 00:08:59 2007
New Revision: 500962
URL: http://svn.apache.org/viewvc?view=rev&rev=500962
Log:
* Added equals(), hashCode() and toString() methods to State.
* Fixed a bug in StateMachine. The current state wasn't updated when using
breakAndGotoNow and breanAndReturnNow.
Modified:
mina/sandbox/niklas/mina-sm/src/main/java/org/apache/mina/sm/State.java
mina/sandbox/niklas/mina-sm/src/main/java/org/apache/mina/sm/StateMachine.java
Modified:
mina/sandbox/niklas/mina-sm/src/main/java/org/apache/mina/sm/State.java
URL:
http://svn.apache.org/viewvc/mina/sandbox/niklas/mina-sm/src/main/java/org/apache/mina/sm/State.java?view=diff&rev=500962&r1=500961&r2=500962
==============================================================================
--- mina/sandbox/niklas/mina-sm/src/main/java/org/apache/mina/sm/State.java
(original)
+++ mina/sandbox/niklas/mina-sm/src/main/java/org/apache/mina/sm/State.java Mon
Jan 29 00:08:59 2007
@@ -22,6 +22,9 @@
import java.util.Collections;
import java.util.List;
+import org.apache.commons.lang.builder.EqualsBuilder;
+import org.apache.commons.lang.builder.HashCodeBuilder;
+import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.mina.sm.transition.Transition;
/**
@@ -88,6 +91,39 @@
return this;
}
+ @Override
+ public boolean equals( Object o )
+ {
+ if( ! ( o instanceof State ) )
+ {
+ return false;
+ }
+ if ( o == this )
+ {
+ return true;
+ }
+ State that = ( State ) o;
+ return new EqualsBuilder()
+ .append( this.id, that.id )
+ .isEquals();
+ }
+
+ @Override
+ public int hashCode()
+ {
+ return new HashCodeBuilder( 13, 33 )
+ .append( this.id )
+ .toHashCode();
+ }
+
+ @Override
+ public String toString()
+ {
+ return new ToStringBuilder( this )
+ .append( "id", this.id )
+ .toString();
+ }
+
private static class TransitionHolder implements
Comparable<TransitionHolder>
{
Transition transition;
Modified:
mina/sandbox/niklas/mina-sm/src/main/java/org/apache/mina/sm/StateMachine.java
URL:
http://svn.apache.org/viewvc/mina/sandbox/niklas/mina-sm/src/main/java/org/apache/mina/sm/StateMachine.java?view=diff&rev=500962&r1=500961&r2=500962
==============================================================================
---
mina/sandbox/niklas/mina-sm/src/main/java/org/apache/mina/sm/StateMachine.java
(original)
+++
mina/sandbox/niklas/mina-sm/src/main/java/org/apache/mina/sm/StateMachine.java
Mon Jan 29 00:08:59 2007
@@ -189,6 +189,7 @@
+ ". Moving to state " + newState.getId()
+ " now." );
}
+ setCurrentState( context, newState );
handle( newState, event );
}
else
@@ -222,6 +223,7 @@
+ ". Moving to state " + newState.getId()
+ " now." );
}
+ setCurrentState( context, newState );
handle( newState, event );
}
else
@@ -251,6 +253,7 @@
+ ". Moving to state " + newState.getId()
+ " now." );
}
+ setCurrentState( context, newState );
handle( newState, event );
}
else