Re: [Beepcore-java-users] AbortChannelException terminates session
Status: Beta
Brought to you by:
huston
From: Huston <hu...@us...> - 2003-06-04 17:12:23
|
On Wed, 2003-06-04 at 09:52, Paul Andrews wrote: > Hi again :-) > > I have a message reply listener that throws an AbortChannelException in > certain circumstances but this actually causes the session code to issue > a terminate session request to the remote peer - when all I wanted to do > was to terminate the channel. > > A slight wrinkle with this is that my test code originally called > session.close() immediately after the AbortChannelException was thrown, > but in a different thread. This caused the session to deadlock. > > - Paul In the code I'm working on right now I have removed AbortChannelException from the signature of the MessageHandler.receiveMSG(). (MessageHandler is a new version of MessageListener, the reason for a new interface was to provide a migration path for profile writers.) While AbortChannelException made some things easier when writing profiles I think it can be the source of more problems than good. BTW, I'm also considering removing the throws BEEPError from the receiveMSG() method because there isn't a good method of notifying the profile if there is a problem sending the ERR message from the BEEPError exception. Instead profiles would call MessageMSG.sendERR() directly. Any feedback on these changes is welcome and right now is the best time since I am in the middle of making them. --Huston |