Examples of AbstractQueryPacket


Examples of net.timewalker.ffmq3.transport.packet.AbstractQueryPacket

     * (non-Javadoc)
     * @see net.timewalker.ffmq3.remote.transport.PacketTransportListener#packetReceived(net.timewalker.ffmq3.remote.transport.packet.AbstractPacket)
     */
    public boolean packetReceived(AbstractPacket packet)
    {
        AbstractQueryPacket query = (AbstractQueryPacket)packet;
      AbstractResponsePacket response = null;
     
      // Process packet
        try
        {
            if (traceEnabled)
                log.trace("#"+id+" Received "+packet);
                       
            try
            {
                response = process(query);
            }
            catch (JMSException e)
            {
              log.debug("#"+id+" process() failed with "+e.toString());
                response = new ErrorResponse(e);
            }
        }
        catch (Exception e)
        {
            log.error("#"+id+" Cannot process command",e);
        }
       
        // Send response
        if (response != null)
        {         
            // Map endpoint id on response
            response.setEndpointId(query.getEndpointId());
           
          try
          {  
              if (traceEnabled)
                  log.trace("#"+id+" Sending "+response);
              transport.send(response);
          }
          catch (Exception e)
          {
              log.warn("#"+id+" Cannot send response to client : "+e.toString());
              transport.close();
          }
        }
        else
        {
          // Consistency check
          if (query.getEndpointId() >= 0)
            throw new IllegalStateException("Missing response to endpoint "+query.getEndpointId()+" query : "+query.getClass().getSimpleName());
        }
       
        return localConnection != null; // Connection still valid ?
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.