CVS: beepcore-java/src/org/beepcore/beep/profile/sasl SASLSessionTable.java,1.6,1.7

Huston Franklin <[email protected]> Tue, 20 May 2003 15:22:04 -0700
Newsgroups gmane.network.beep.beepcore.java.cvs
Message-ID <[email protected]>
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl
In directory sc8-pr-cvs1:/tmp/cvs-serv15247/src/org/beepcore/beep/profile/sasl

Modified Files:
	SASLSessionTable.java 
Log Message:
Added sessionReset event handler.

Index: SASLSessionTable.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/SASLSessionTable.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -r1.6 -r1.7
*** SASLSessionTable.java	5 Oct 2002 15:32:22 -0000	1.6
--- SASLSessionTable.java	20 May 2003 22:22:02 -0000	1.7
***************
*** 26,29 ****
--- 26,30 ----
  import org.beepcore.beep.core.SessionCredential;
  import org.beepcore.beep.core.event.SessionEvent;
+ import org.beepcore.beep.core.event.SessionResetEvent;
  import org.beepcore.beep.core.event.SessionListener;
  import org.beepcore.beep.profile.sasl.anonymous.SASLAnonymousProfile;
***************
*** 180,183 ****
--- 181,204 ----
          {
              log.error("Error removing entry", x);
+         }
+     }
+     
+     /**
+      * Method receiveEvent is implemented here so the SASLSessionTable
+      * can receive events when a session is reset (so that it
+      * can update its information about what sessions are actively
+      * authenticated etc.
+      * 
+      * @param event event the SessionResetEvent used.
+      */
+     public void sessionReset(SessionResetEvent event)
+     {
+         try {
+             removeEntry((Session)event.getSource());
+             addEntry(event.getNewSession());
+         }
+         catch(SASLException e)
+         {
+             log.error("Error replacing entry", e);
          }
      }



-------------------------------------------------------
This SF.net email is sponsored by: ObjectStore.
If flattening out C++ or Java code to make your application fit in a
relational database is painful, don't do it! Check out ObjectStore.
Now part of Progress Software. http://www.objectstore.net/sourceforge