/** * Checks whether a given registration message contains all required properties. * * @param linkTarget The resource path to check the message's properties against for consistency. * @param msg The AMQP 1.0 message to perform the checks on. * @return {@code true} if the message passes all checks. */ public static boolean verify(final ResourceIdentifier linkTarget, final Message msg) { if (!hasValidDeviceId(linkTarget, msg)) { return false; } else if (!hasCorrelationId(msg)) { return false; } else if (!RegistrationConstants.isValidAction(msg.getSubject())) { LOG.trace("message [{}] does not contain valid action property", msg.getMessageId()); return false; } else if (msg.getReplyTo() == null) { LOG.trace("message [{}] contains no reply-to address", msg.getMessageId()); return false; } else if (msg.getBody() != null && !MessageHelper.hasDataBody(msg, true)) { LOG.trace("message [{}] contains no AmqpValue or Data section payload", msg.getMessageId()); return false; } else { return true; } } }
/** * Checks whether a given registration message contains all required properties. * * @param linkTarget The resource path to check the message's properties against for consistency. * @param msg The AMQP 1.0 message to perform the checks on. * @return {@code true} if the message passes all checks. */ public static boolean verify(final ResourceIdentifier linkTarget, final Message msg) { if (!hasValidDeviceId(linkTarget, msg)) { return false; } else if (!hasCorrelationId(msg)) { return false; } else if (!RegistrationConstants.isValidAction(msg.getSubject())) { LOG.trace("message [{}] does not contain valid action property", msg.getMessageId()); return false; } else if (msg.getReplyTo() == null) { LOG.trace("message [{}] contains no reply-to address", msg.getMessageId()); return false; } else if (msg.getBody() != null && !MessageHelper.hasDataBody(msg)) { LOG.trace("message [{}] contains no Data section payload", msg.getMessageId()); return false; } else { return true; } } }