[Asterisk-java-cvs] CVS: asterisk-java/src/java/net/sf/asterisk/fastagi/impl AGIChannelImpl.java,1.1
Brought to you by:
srt
From: Stefan R. <sr...@us...> - 2005-03-11 19:35:08
|
Update of /cvsroot/asterisk-java/asterisk-java/src/java/net/sf/asterisk/fastagi/impl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23072/src/java/net/sf/asterisk/fastagi/impl Modified Files: AGIChannelImpl.java Log Message: Fixed InvalidCommandSyntaxException and InvalidOrUnknownCommandException Index: AGIChannelImpl.java =================================================================== RCS file: /cvsroot/asterisk-java/asterisk-java/src/java/net/sf/asterisk/fastagi/impl/AGIChannelImpl.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -p -r1.1 -r1.2 --- AGIChannelImpl.java 11 Mar 2005 15:20:50 -0000 1.1 +++ AGIChannelImpl.java 11 Mar 2005 19:34:55 -0000 1.2 @@ -20,6 +20,8 @@ import net.sf.asterisk.fastagi.AGIChanne import net.sf.asterisk.fastagi.AGIException; import net.sf.asterisk.fastagi.AGIReader; import net.sf.asterisk.fastagi.AGIWriter; +import net.sf.asterisk.fastagi.InvalidCommandSyntaxException; +import net.sf.asterisk.fastagi.InvalidOrUnknownCommandException; import net.sf.asterisk.fastagi.command.AGICommand; import net.sf.asterisk.fastagi.reply.AGIReply; import net.sf.asterisk.io.SocketConnectionFacade; @@ -35,27 +37,38 @@ public class AGIChannelImpl implements A private AGIWriter agiWriter; private AGIReader agiReader; private SocketConnectionFacade socket; - + public AGIChannelImpl(SocketConnectionFacade socket) { this.socket = socket; this.agiWriter = new AGIWriterImpl(socket); this.agiReader = new AGIReaderImpl(socket); } - + public AGIChannelImpl(AGIWriter agiWriter, AGIReader agiReader) { this.agiWriter = agiWriter; this.agiReader = agiReader; } - - public synchronized AGIReply sendCommand(AGICommand command) throws AGIException + + public synchronized AGIReply sendCommand(AGICommand command) + throws AGIException { AGIReply reply; - + agiWriter.sendCommand(command); reply = agiReader.readReply(); - + + if (reply.getStatus() == AGIReply.SC_INVALID_OR_UNKNOWN_COMMAND) + { + throw new InvalidOrUnknownCommandException(); + } + if (reply.getStatus() == AGIReply.SC_INVALID_COMMAND_SYNTAX) + { + throw new InvalidCommandSyntaxException(reply.getSynopsis(), reply + .getUsage()); + } + return reply; } } |