code: @Override
      public void send(Destination destination, Message message) throws JMSException {
          if (destination == null) {
              throw new InvalidDestinationException("Destination cannot be null");
          }
          if (destination instanceof SQSQueueDestination) {
              send((Queue) destination, message);
          } else {
              throw new InvalidDestinationException("Incompatible implementation of Destination. Please use SQSQueueDestination implementation.");
          }
      }
docs: Sends a message to a queue destination.
  
  @param destination
  the queue destination to send this message to
  @param message
  the message to send
  @throws InvalidDestinationException
  If a client uses this method with a destination other than
  valid SQS queue destination.
  @throws MessageFormatException
  If an invalid message is specified.
  @throws UnsupportedOperationException
  If a client uses this method with a MessageProducer that
  specified a destination at creation time.
  @throws JMSException
  If session is closed or internal error.