io.eventuate.tram.messaging.common.Message.getId()方法的使用及代码示例

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

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

Message.getId介绍

暂无

代码示例

代码示例来源:origin: io.eventuate.tram.core/eventuate-tram-consumer-rabbitmq

  1. private void handleMessage(String subscriberId, MessageHandler handler, Message tramMessage, Runnable acknowledgeCallback) {
  2. transactionTemplate.execute(ts -> {
  3. if (duplicateMessageDetector.isDuplicate(subscriberId, tramMessage.getId())) {
  4. logger.info("consumer {} with subscriberId {} received message duplicate with id{}", id, subscriberId, tramMessage.getId());
  5. acknowledgeCallback.run();
  6. return null;
  7. }
  8. try {
  9. handler.accept(tramMessage);
  10. logger.info("consumer {} with subscriberId {} handled message with id {}", id, subscriberId, tramMessage.getId());
  11. } catch (Throwable t) {
  12. logger.info("consumer {} with subscriberId {} got exception when tried to handle message with id {}", id, subscriberId, tramMessage.getId());
  13. logger.info("Got exception ", t);
  14. } finally {
  15. acknowledgeCallback.run();
  16. }
  17. return null;
  18. });
  19. }

代码示例来源:origin: io.eventuate.tram.core/eventuate-tram-consumer-activemq

  1. if (duplicateMessageDetector.isDuplicate(subscriberId, tramMessage.getId())) {
  2. logger.trace("Duplicate message {} {}", subscriberId, tramMessage.getId());
  3. acknowledge(textMessage);
  4. return null;
  5. logger.trace("Invoking handler {} {}", subscriberId, tramMessage.getId());
  6. handler.accept(tramMessage);
  7. logger.trace("handled message {} {}", subscriberId, tramMessage.getId());
  8. } catch (Throwable t) {
  9. logger.trace("Got exception {} {}", subscriberId, tramMessage.getId());
  10. logger.trace("Got exception ", t);
  11. } finally {

代码示例来源:origin: eventuate-tram/eventuate-tram-sagas

  1. @Override
  2. public Optional<Message> unlock(String sagaId, String target) {
  3. Optional<String> owningSagaId = selectForUpdate(target);
  4. Assert.isTrue(owningSagaId.isPresent());
  5. Assert.isTrue(owningSagaId.get().equals(sagaId), String.format("Expected owner to be %s but is %s", sagaId, owningSagaId.get()));
  6. logger.debug("Saga {} has unlocked {}", sagaId, target);
  7. List<StashedMessage> stashedMessages = jdbcTemplate.query(selectFromSagaStashTableSql, (rs, rowNum) -> {
  8. return new StashedMessage(rs.getString("saga_type"), rs.getString("saga_id"),
  9. MessageBuilder.withPayload(rs.getString("message_payload")).withExtraHeaders("",
  10. JSonMapper.fromJson(rs.getString("message_headers"), Map.class)).build());
  11. }, target);
  12. if (stashedMessages.isEmpty()) {
  13. assertEqualToOne(jdbcTemplate.update(deleteFromSagaLockTableSql, target));
  14. return Optional.empty();
  15. }
  16. StashedMessage stashedMessage = stashedMessages.get(0);
  17. logger.debug("unstashed from {} for {} : {}", sagaId, target, stashedMessage.getMessage());
  18. assertEqualToOne(jdbcTemplate.update(updateSagaLockTableSql, stashedMessage.getSagaType(),
  19. stashedMessage.getSagaId(), target));
  20. assertEqualToOne(jdbcTemplate.update(deleteFromSagaStashTableSql, stashedMessage.getMessage().getId()));
  21. return Optional.of(stashedMessage.getMessage());
  22. }

代码示例来源:origin: io.eventuate.tram.core/eventuate-tram-producer-jdbc

  1. private void send(Message message) {
  2. String table = eventuateSchema.qualifyTable("message");
  3. jdbcTemplate.update(String.format("insert into %s(id, destination, headers, payload, creation_time) values(?, ?, ?, ?, %s)",
  4. table,
  5. currentTimeInMillisecondsSql),
  6. message.getId(),
  7. message.getRequiredHeader(Message.DESTINATION),
  8. JSonMapper.toJson(message.getHeaders()),
  9. message.getPayload());
  10. }
  11. }

代码示例来源:origin: eventuate-tram/eventuate-tram-core

  1. @Override
  2. public String send(String channel, String resource, Command command, String replyTo, Map<String, String> headers) {
  3. Message message = makeMessage(channel, resource, command, replyTo, headers);
  4. messageProducer.send(channelMapping.transform(channel), message);
  5. return message.getId();
  6. }

代码示例来源:origin: eventuate-tram/eventuate-tram-core

  1. private void send(Message message) {
  2. String table = eventuateSchema.qualifyTable("message");
  3. jdbcTemplate.update(String.format("insert into %s(id, destination, headers, payload) values(?, ?, ?, ?)", table),
  4. message.getId(),
  5. message.getRequiredHeader(Message.DESTINATION),
  6. JSonMapper.toJson(message.getHeaders()),
  7. message.getPayload());
  8. }

代码示例来源:origin: io.eventuate.tram.sagas/eventuate-jpa-sagas-framework

  1. @Override
  2. public Optional<Message> unlock(String sagaId, String target) {
  3. Optional<String> owningSagaId = selectForUpdate(target);
  4. Assert.isTrue(owningSagaId.isPresent());
  5. Assert.isTrue(owningSagaId.get().equals(sagaId), String.format("Expected owner to be %s but is %s", sagaId, owningSagaId.get()));
  6. logger.debug("Saga {} has unlocked {}", sagaId, target);
  7. List<StashedMessage> stashedMessages = jdbcTemplate.query(selectFromSagaStashTableSql, (rs, rowNum) -> {
  8. return new StashedMessage(rs.getString("saga_type"), rs.getString("saga_id"),
  9. MessageBuilder.withPayload(rs.getString("message_payload")).withExtraHeaders("",
  10. JSonMapper.fromJson(rs.getString("message_headers"), Map.class)).build());
  11. }, target);
  12. if (stashedMessages.isEmpty()) {
  13. assertEqualToOne(jdbcTemplate.update(deleteFromSagaLockTableSql, target));
  14. return Optional.empty();
  15. }
  16. StashedMessage stashedMessage = stashedMessages.get(0);
  17. logger.debug("unstashed from {} for {} : {}", sagaId, target, stashedMessage.getMessage());
  18. assertEqualToOne(jdbcTemplate.update(updateSagaLockTableSql, stashedMessage.getSagaType(),
  19. stashedMessage.getSagaId(), target));
  20. assertEqualToOne(jdbcTemplate.update(deleteFromSagaStashTableSql, stashedMessage.getMessage().getId()));
  21. return Optional.of(stashedMessage.getMessage());
  22. }

代码示例来源:origin: eventuate-tram/eventuate-tram-core

  1. try {
  2. transactionTemplate.execute(ts -> {
  3. if (duplicateMessageDetector.isDuplicate(subscriberId, message.getId())) {
  4. logger.trace("Duplicate message {} {}", subscriberId, message.getId());
  5. callback.accept(null, null);
  6. return null;
  7. logger.trace("Invoking handler {} {}", subscriberId, message.getId());
  8. preHandle(subscriberId, message);
  9. handler.accept(message);
  10. } catch (Throwable t) {
  11. postHandle(subscriberId, message, t);
  12. logger.trace("Got exception {} {}", subscriberId, message.getId());
  13. logger.trace("Got exception ", t);
  14. callback.accept(null, t);
  15. return null;
  16. logger.trace("handled message {} {}", subscriberId, message.getId());
  17. callback.accept(null, null);
  18. return null;

代码示例来源:origin: eventuate-tram/eventuate-tram-core

  1. public void messageHandler(Message message) {
  2. logger.trace("Received message {} {}", commandDispatcherId, message);
  3. Optional<CommandHandler> possibleMethod = commandHandlers.findTargetMethod(message);
  4. if (!possibleMethod.isPresent()) {
  5. throw new RuntimeException("No method for " + message);
  6. }
  7. CommandHandler m = possibleMethod.get();
  8. Object param = convertPayload(m, message.getPayload());
  9. Map<String, String> correlationHeaders = correlationHeaders(message.getHeaders());
  10. Map<String, String> pathVars = getPathVars(message, m);
  11. Optional<String> defaultReplyChannel = message.getHeader(CommandMessageHeaders.REPLY_TO);
  12. List<Message> replies;
  13. try {
  14. CommandMessage cm = new CommandMessage(message.getId(), param, correlationHeaders, message);
  15. replies = invoke(m, cm, pathVars);
  16. logger.trace("Generated replies {} {} {}", commandDispatcherId, message, replies);
  17. } catch (Exception e) {
  18. logger.trace("Generated error {} {} {}", commandDispatcherId, message, e.getClass().getName());
  19. handleException(message, param, m, e, pathVars, defaultReplyChannel);
  20. return;
  21. }
  22. if (replies != null) {
  23. publish(correlationHeaders, replies, defaultReplyChannel);
  24. } else {
  25. logger.trace("Null replies - not publishling");
  26. }
  27. }

代码示例来源:origin: eventuate-tram/eventuate-tram-core

  1. @PostMapping(path= "/foo/{id}")
  2. public String sendSomething(@RequestBody TestMessage message, @PathVariable String id) {
  3. Message message1 = MessageBuilder.withPayload(JSonMapper.toJson(message)).build();
  4. messageProducer.send("testChannel", message1);
  5. return message1.getId();
  6. }

代码示例来源:origin: eventuate-tram/eventuate-tram-core

  1. @Test
  2. public void shouldSetIdWithinTransaction() {
  3. Message m = MessageBuilder.withPayload(payload).build();
  4. transactionTemplate.execute((TransactionCallback<Void>) status -> {
  5. inMemoryMessaging.send(destination, m);
  6. assertNotNull(m.getId());
  7. return null;
  8. });
  9. }

代码示例来源:origin: eventuate-tram/eventuate-tram-core

  1. @Test
  2. public void shouldDeliverToMatchingSubscribers() {
  3. inMemoryMessaging.subscribe(subscriberId, Collections.singleton(destination), mh);
  4. Message m = MessageBuilder.withPayload(payload).build();
  5. inMemoryMessaging.send(destination, m);
  6. assertNotNull(m.getId());
  7. mh.shouldReceiveMessage(payload);
  8. }

代码示例来源:origin: io.eventuate.tram.sagas/eventuate-jpa-sagas-framework

  1. String requestId = message.getRequiredHeader(SagaReplyHeaders.REPLY_SAGA_REQUEST_ID);
  2. String messageId = message.getId();

代码示例来源:origin: eventuate-tram/eventuate-tram-sagas

  1. @Test
  2. public void shouldReleaseLockAndUnstashMessage() {
  3. String sagaId1 = idGenerator.genId().toString();
  4. String sagaId2 = idGenerator.genId().toString();
  5. String target = "/target/" + idGenerator.genId().toString();
  6. String messageId = idGenerator.genId().toString();
  7. assertTrue(sagaLockManager.claimLock(sagaType, sagaId1, target));
  8. assertFalse(sagaLockManager.claimLock(sagaType, sagaId2, target));
  9. String payload = "hello";
  10. Message message = MessageBuilder.withPayload(payload).withHeader(Message.ID, messageId).build();
  11. sagaLockManager.stashMessage(sagaType, sagaId2, target, message);
  12. Optional<Message> unstashedMessage1 = sagaLockManager.unlock(sagaId1, target);
  13. assertTrue(unstashedMessage1.isPresent());
  14. assertEquals(messageId, unstashedMessage1.get().getId());
  15. assertEquals(payload, unstashedMessage1.get().getPayload());
  16. assertFalse(sagaLockManager.unlock(sagaId2, target).isPresent());
  17. }

相关文章