org.apache.qpid.proton.message.Message.getMessageId()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(15.4k)|赞(0)|评价(0)|浏览(198)

本文整理了Java中org.apache.qpid.proton.message.Message.getMessageId()方法的一些代码示例,展示了Message.getMessageId()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.getMessageId()方法的具体详情如下:
包路径:org.apache.qpid.proton.message.Message
类名称:Message
方法名:getMessageId

Message.getMessageId介绍

暂无

代码示例

代码示例来源:origin: org.eclipse.hono/hono-core

  1. /**
  2. * Checks if an AMQP message contains either a message ID or a correlation ID.
  3. *
  4. * @param msg The message.
  5. * @return {@code true} if the message has an ID that can be used for correlation.
  6. */
  7. protected static final boolean hasCorrelationId(final Message msg) {
  8. if (msg.getMessageId() == null && msg.getCorrelationId() == null) {
  9. LOG.trace("message has neither a message-id nor correlation-id");
  10. return false;
  11. } else {
  12. return true;
  13. }
  14. }
  15. }

代码示例来源:origin: eclipse/hono

  1. /**
  2. * Checks if an AMQP message contains either a message ID or a correlation ID.
  3. *
  4. * @param msg The message.
  5. * @return {@code true} if the message has an ID that can be used for correlation.
  6. */
  7. protected static final boolean hasCorrelationId(final Message msg) {
  8. if (msg.getMessageId() == null && msg.getCorrelationId() == null) {
  9. LOG.trace("message has neither a message-id nor correlation-id");
  10. return false;
  11. } else {
  12. return true;
  13. }
  14. }
  15. }

代码示例来源:origin: EnMasseProject/enmasse

  1. /**
  2. * Return an AMQP_PUBREL message from the raw AMQP one
  3. *
  4. * @param message raw AMQP message
  5. * @return AMQP_PUBREL message
  6. */
  7. public static AmqpPubrelMessage from(Message message) {
  8. if (!message.getSubject().equals(AMQP_SUBJECT)) {
  9. throw new IllegalArgumentException(String.format("AMQP message subject is no %s", AMQP_SUBJECT));
  10. }
  11. return new AmqpPubrelMessage(message.getMessageId());
  12. }

代码示例来源:origin: org.eclipse.hono/hono-server

  1. private void addHeadersToResponse(final Message request, final JsonObject message) {
  2. final boolean isApplicationCorrelationId = MessageHelper.getXOptAppCorrelationId(request);
  3. logger.debug("registration request [{}] uses application specific correlation ID: {}", request.getMessageId(), isApplicationCorrelationId);
  4. if (isApplicationCorrelationId) {
  5. message.put(ANNOTATION_X_OPT_APP_CORRELATION_ID, isApplicationCorrelationId);
  6. }
  7. final JsonObject correlationIdJson = encodeIdToJson(getCorrelationId(request));
  8. message.put(APP_PROPERTY_CORRELATION_ID, correlationIdJson);
  9. }

代码示例来源:origin: eclipse/hono

  1. /**
  2. * Checks whether a given tenant message contains all required properties.
  3. *
  4. * @param linkTarget The resource path to check the message's properties against for consistency.
  5. * @param msg The AMQP 1.0 message to perform the checks on.
  6. * @return {@code true} if the message passes all checks.
  7. */
  8. public static boolean verify(final ResourceIdentifier linkTarget, final Message msg) {
  9. if (msg.getMessageId() == null && msg.getCorrelationId() == null) {
  10. LOG.trace("message has neither a message-id nor correlation-id");
  11. return false;
  12. } else if (msg.getSubject() == null) {
  13. LOG.trace("message [{}] does not contain subject", msg.getMessageId());
  14. return false;
  15. } else if (msg.getReplyTo() == null) {
  16. LOG.trace("message [{}] contains no reply-to address", msg.getMessageId());
  17. return false;
  18. } else if (msg.getBody() != null && !MessageHelper.hasDataBody(msg)) {
  19. LOG.trace("message [{}] contains no Data section payload", msg.getMessageId());
  20. return false;
  21. } else {
  22. return true;
  23. }
  24. }
  25. }

代码示例来源:origin: eclipse/hono

  1. /**
  2. * Checks whether a given credentials message contains all required properties.
  3. *
  4. * @param linkTarget The resource path to check the message's properties against for consistency.
  5. * @param msg The AMQP 1.0 message to perform the checks on.
  6. * @return {@code true} if the message passes all checks.
  7. */
  8. public static boolean verify(final ResourceIdentifier linkTarget, final Message msg) {
  9. if (msg.getMessageId() == null && msg.getCorrelationId() == null) {
  10. LOG.trace("message has neither a message-id nor correlation-id");
  11. return false;
  12. } else if (!CredentialsConstants.CredentialsAction.isValid(msg.getSubject())) {
  13. LOG.trace("message [{}] does not contain valid subject property", msg.getMessageId());
  14. return false;
  15. } else if (msg.getReplyTo() == null) {
  16. LOG.trace("message [{}] has no reply-to address set", msg.getMessageId());
  17. return false;
  18. } else if (!MessageHelper.hasDataBody(msg)) {
  19. LOG.trace("message [{}] contains no Data section payload", msg.getMessageId());
  20. return false;
  21. } else {
  22. return true;
  23. }
  24. }

代码示例来源:origin: org.eclipse.hono/hono-service-base

  1. /**
  2. * Checks whether a given credentials message contains all required properties.
  3. *
  4. * @param linkTarget The resource path to check the message's properties against for consistency.
  5. * @param msg The AMQP 1.0 message to perform the checks on.
  6. * @return {@code true} if the message passes all checks.
  7. */
  8. public static boolean verify(final ResourceIdentifier linkTarget, final Message msg) {
  9. if (msg.getMessageId() == null && msg.getCorrelationId() == null) {
  10. LOG.trace("message has neither a message-id nor correlation-id");
  11. return false;
  12. } else if (!CredentialsConstants.CredentialsAction.isValid(msg.getSubject())) {
  13. LOG.trace("message [{}] does not contain valid subject property", msg.getMessageId());
  14. return false;
  15. } else if (msg.getReplyTo() == null) {
  16. LOG.trace("message [{}] has no reply-to address set", msg.getMessageId());
  17. return false;
  18. } else if (!MessageHelper.hasDataBody(msg, true)) {
  19. LOG.trace("message [{}] contains no AmqpValue or Data section payload", msg.getMessageId());
  20. return false;
  21. } else {
  22. return true;
  23. }
  24. }

代码示例来源:origin: org.eclipse.hono/hono-service-base

  1. /**
  2. * Checks whether a given tenant message contains all required properties.
  3. *
  4. * @param linkTarget The resource path to check the message's properties against for consistency.
  5. * @param msg The AMQP 1.0 message to perform the checks on.
  6. * @return {@code true} if the message passes all checks.
  7. */
  8. public static boolean verify(final ResourceIdentifier linkTarget, final Message msg) {
  9. if (msg.getMessageId() == null && msg.getCorrelationId() == null) {
  10. LOG.trace("message has neither a message-id nor correlation-id");
  11. return false;
  12. } else if (msg.getSubject() == null) {
  13. LOG.trace("message [{}] does not contain subject", msg.getMessageId());
  14. return false;
  15. } else if (msg.getReplyTo() == null) {
  16. LOG.trace("message [{}] contains no reply-to address", msg.getMessageId());
  17. return false;
  18. } else if (msg.getBody() != null && !MessageHelper.hasDataBody(msg, true)) {
  19. LOG.trace("message [{}] contains no AmqpValue or Data section payload", msg.getMessageId());
  20. return false;
  21. } else {
  22. return true;
  23. }
  24. }
  25. }

代码示例来源:origin: org.eclipse.hono/hono-server

  1. /**
  2. * @param request the request message from which to extract the correlationId
  3. * @return The ID used to correlate the given request message. This can either be the provided correlationId
  4. * (Correlation ID Pattern) or the messageId of the request (Message ID Pattern, if no correlationId is provided).
  5. */
  6. private Object getCorrelationId(final Message request) {
  7. /* if a correlationId is provided, we use it to correlate the response -> Correlation ID Pattern */
  8. if (request.getCorrelationId() != null) {
  9. return request.getCorrelationId();
  10. } else {
  11. /* otherwise we use the message id -> Message ID Pattern */
  12. return request.getMessageId();
  13. }
  14. }
  15. }

代码示例来源:origin: org.eclipse.hono/hono-server

  1. private void sendMessage(final Message msg) {
  2. ByteBuffer b = ByteBuffer.allocate(4);
  3. b.putInt(count.getAndIncrement());
  4. b.flip();
  5. LOG.trace("sending message [id: {}] to peer", msg.getMessageId());
  6. if (ProtonQoS.AT_MOST_ONCE.equals(sender.getQoS())) {
  7. sender.send(b.array(), msg);
  8. sentHandler.handle(null);
  9. } else {
  10. sender.send(b.array(), msg, res -> {
  11. if (Accepted.class.isInstance(res.getRemoteState())) {
  12. LOG.trace("message [id: {}, remotelySettled: {}] has been accepted by peer", msg.getMessageId(),
  13. res.remotelySettled());
  14. res.settle();
  15. if (sentHandler != null) {
  16. sentHandler.handle(null);
  17. }
  18. } else {
  19. LOG.warn("message [id: {}] has not been accepted by peer: {}", msg.getMessageId(),
  20. res.getRemoteState());
  21. }
  22. });
  23. }
  24. }
  25. }

代码示例来源:origin: org.eclipse.hono/hono-core

  1. /**
  2. * Adds a property for the correlation identifier.
  3. * <p>
  4. * The value of the property is set
  5. * <ol>
  6. * <li>to the AMQP message's correlation identifier, if not {@code null}, or<li>
  7. * <li>to the AMQP message's message identifier, if not {@code null}.</li>
  8. * </ol>
  9. *
  10. * @param message The AMQP message to retrieve the value from.
  11. * @return This message for chaining.
  12. * @throws IllegalArgumentException if the message doesn't contain a correlation id
  13. * nor a message id.
  14. */
  15. public EventBusMessage setCorrelationId(final Message message) {
  16. if (message.getCorrelationId() != null) {
  17. return setCorrelationId(message.getCorrelationId());
  18. } else if (message.getMessageId() != null) {
  19. return setCorrelationId(message.getMessageId());
  20. } else {
  21. throw new IllegalArgumentException("message does not contain message-id nor correlation-id");
  22. }
  23. }

代码示例来源:origin: eclipse/hono

  1. /**
  2. * Adds a property for the correlation identifier.
  3. * <p>
  4. * The value of the property is set
  5. * <ol>
  6. * <li>to the AMQP message's correlation identifier, if not {@code null}, or<li>
  7. * <li>to the AMQP message's message identifier, if not {@code null}.</li>
  8. * </ol>
  9. *
  10. * @param message The AMQP message to retrieve the value from.
  11. * @return This message for chaining.
  12. * @throws IllegalArgumentException if the message doesn't contain a correlation id
  13. * nor a message id.
  14. */
  15. public EventBusMessage setCorrelationId(final Message message) {
  16. if (message.getCorrelationId() != null) {
  17. return setCorrelationId(message.getCorrelationId());
  18. } else if (message.getMessageId() != null) {
  19. return setCorrelationId(message.getMessageId());
  20. } else {
  21. throw new IllegalArgumentException("message does not contain message-id nor correlation-id");
  22. }
  23. }

代码示例来源:origin: eclipse/hono

  1. /**
  2. * Checks whether a given registration message contains all required properties.
  3. *
  4. * @param linkTarget The resource path to check the message's properties against for consistency.
  5. * @param msg The AMQP 1.0 message to perform the checks on.
  6. * @return {@code true} if the message passes all checks.
  7. */
  8. public static boolean verify(final ResourceIdentifier linkTarget, final Message msg) {
  9. if (!hasValidDeviceId(linkTarget, msg)) {
  10. return false;
  11. } else if (!hasCorrelationId(msg)) {
  12. return false;
  13. } else if (!RegistrationConstants.isValidAction(msg.getSubject())) {
  14. LOG.trace("message [{}] does not contain valid action property", msg.getMessageId());
  15. return false;
  16. } else if (msg.getReplyTo() == null) {
  17. LOG.trace("message [{}] contains no reply-to address", msg.getMessageId());
  18. return false;
  19. } else if (msg.getBody() != null && !MessageHelper.hasDataBody(msg)) {
  20. LOG.trace("message [{}] contains no Data section payload", msg.getMessageId());
  21. return false;
  22. } else {
  23. return true;
  24. }
  25. }
  26. }

代码示例来源:origin: org.eclipse.hono/hono-service-base

  1. /**
  2. * Checks whether a given registration message contains all required properties.
  3. *
  4. * @param linkTarget The resource path to check the message's properties against for consistency.
  5. * @param msg The AMQP 1.0 message to perform the checks on.
  6. * @return {@code true} if the message passes all checks.
  7. */
  8. public static boolean verify(final ResourceIdentifier linkTarget, final Message msg) {
  9. if (!hasValidDeviceId(linkTarget, msg)) {
  10. return false;
  11. } else if (!hasCorrelationId(msg)) {
  12. return false;
  13. } else if (!RegistrationConstants.isValidAction(msg.getSubject())) {
  14. LOG.trace("message [{}] does not contain valid action property", msg.getMessageId());
  15. return false;
  16. } else if (msg.getReplyTo() == null) {
  17. LOG.trace("message [{}] contains no reply-to address", msg.getMessageId());
  18. return false;
  19. } else if (msg.getBody() != null && !MessageHelper.hasDataBody(msg, true)) {
  20. LOG.trace("message [{}] contains no AmqpValue or Data section payload", msg.getMessageId());
  21. return false;
  22. } else {
  23. return true;
  24. }
  25. }
  26. }

代码示例来源:origin: org.eclipse.hono/hono-core

  1. /**
  2. * Checks if an AMQP message contains a valid device identifier.
  3. *
  4. * @param linkTarget The resource path to check the message's properties against for consistency.
  5. * @param msg The AMQP 1.0 message to perform the checks on.
  6. * @return {@code true} if the following conditions are met:
  7. * <ul>
  8. * <li>The message contains an application property {@link MessageHelper#APP_PROPERTY_DEVICE_ID}.</li>
  9. * <li>If the link target contains a resource ID, it matches the ID from the property.</li>
  10. * </ul>
  11. */
  12. protected static final boolean hasValidDeviceId(final ResourceIdentifier linkTarget, final Message msg) {
  13. final String deviceIdProperty = MessageHelper.getDeviceId(msg);
  14. if (deviceIdProperty == null) {
  15. LOG.trace("message [{}] contains no {} application property", msg.getMessageId(), MessageHelper.APP_PROPERTY_DEVICE_ID);
  16. return false;
  17. } else if (linkTarget.getResourceId() != null && !deviceIdProperty.equals(linkTarget.getResourceId())) {
  18. LOG.trace("message's {} property contains invalid device ID [expected: {}, but was: {}]",
  19. MessageHelper.APP_PROPERTY_DEVICE_ID, linkTarget.getResourceId(), deviceIdProperty);
  20. return false;
  21. } else {
  22. return true;
  23. }
  24. }

代码示例来源:origin: eclipse/hono

  1. /**
  2. * Checks if an AMQP message contains a valid device identifier.
  3. *
  4. * @param linkTarget The resource path to check the message's properties against for consistency.
  5. * @param msg The AMQP 1.0 message to perform the checks on.
  6. * @return {@code true} if the following conditions are met:
  7. * <ul>
  8. * <li>The message contains an application property {@link MessageHelper#APP_PROPERTY_DEVICE_ID}.</li>
  9. * <li>If the link target contains a resource ID, it matches the ID from the property.</li>
  10. * </ul>
  11. */
  12. protected static final boolean hasValidDeviceId(final ResourceIdentifier linkTarget, final Message msg) {
  13. final String deviceIdProperty = MessageHelper.getDeviceId(msg);
  14. if (deviceIdProperty == null) {
  15. LOG.trace("message [{}] contains no {} application property", msg.getMessageId(), MessageHelper.APP_PROPERTY_DEVICE_ID);
  16. return false;
  17. } else if (linkTarget.getResourceId() != null && !deviceIdProperty.equals(linkTarget.getResourceId())) {
  18. LOG.trace("message's {} property contains invalid device ID [expected: {}, but was: {}]",
  19. MessageHelper.APP_PROPERTY_DEVICE_ID, linkTarget.getResourceId(), deviceIdProperty);
  20. return false;
  21. } else {
  22. return true;
  23. }
  24. }

代码示例来源:origin: Azure/azure-event-hubs-java

  1. public void request(
  2. final Message message,
  3. final OperationResult<Message, Exception> onResponse) {
  4. if (message == null)
  5. throw new IllegalArgumentException("message cannot be null");
  6. if (message.getMessageId() != null)
  7. throw new IllegalArgumentException("message.getMessageId() should be null");
  8. if (message.getReplyTo() != null)
  9. throw new IllegalArgumentException("message.getReplyTo() should be null");
  10. message.setMessageId("request" + UnsignedLong.valueOf(this.requestId.incrementAndGet()).toString());
  11. message.setReplyTo(this.replyTo);
  12. this.inflightRequests.put(message.getMessageId(), onResponse);
  13. sendLink.delivery(UUID.randomUUID().toString().replace("-", StringUtil.EMPTY).getBytes());
  14. final int payloadSize = AmqpUtil.getDataSerializedSize(message) + 512; // need buffer for headers
  15. final byte[] bytes = new byte[payloadSize];
  16. final int encodedSize = message.encode(bytes, 0, payloadSize);
  17. receiveLink.flow(1);
  18. sendLink.send(bytes, 0, encodedSize);
  19. sendLink.advance();
  20. }

代码示例来源:origin: org.eclipse.hono/hono-server

  1. @Override
  2. public void processMessage(final UpstreamReceiver client, final ProtonDelivery delivery, final Message data) {
  3. LinkStatus status = statusMap.get(client.getLinkId());
  4. if (status == null) {
  5. LOG.debug("creating new link status object [{}]", client.getLinkId());
  6. status = new LinkStatus(client);
  7. statusMap.put(client.getLinkId(), status);
  8. }
  9. LOG.debug("processing telemetry data [id: {}, to: {}, content-type: {}]", data.getMessageId(), data.getAddress(),
  10. data.getContentType());
  11. if (messageConsumer != null) {
  12. messageConsumer.accept(data);
  13. }
  14. ProtonHelper.accepted(delivery, true);
  15. status.onMsgReceived();
  16. }

代码示例来源:origin: org.eclipse.hono/hono-server

  1. private void processRequest(final Message msg) {
  2. final JsonObject registrationMsg = RegistrationConstants.getRegistrationMsg(msg);
  3. vertx.eventBus().send(EVENT_BUS_ADDRESS_REGISTRATION_IN, registrationMsg,
  4. result -> {
  5. JsonObject response = null;
  6. if (result.succeeded()) {
  7. // TODO check for correct session here...?
  8. response = (JsonObject) result.result().body();
  9. } else {
  10. logger.debug("failed to process request [msg ID: {}] due to {}", msg.getMessageId(), result.cause());
  11. // we need to inform client about failure
  12. response = RegistrationConstants.getReply(
  13. HttpURLConnection.HTTP_INTERNAL_ERROR,
  14. MessageHelper.getTenantIdAnnotation(msg),
  15. MessageHelper.getDeviceIdAnnotation(msg),
  16. null);
  17. }
  18. addHeadersToResponse(msg, response);
  19. vertx.eventBus().send(msg.getReplyTo(), response);
  20. });
  21. }

代码示例来源:origin: EnMasseProject/enmasse

  1. this.deliveries.put(message.getMessageId(), delivery);

相关文章