Skip to content

Instantly share code, notes, and snippets.

@serdarmumcu
Last active March 28, 2024 09:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save serdarmumcu/066f145bb6aac0cc3e58eae295ad0044 to your computer and use it in GitHub Desktop.
Save serdarmumcu/066f145bb6aac0cc3e58eae295ad0044 to your computer and use it in GitHub Desktop.
@RestController
public class MessageController {
@Autowired
private MessageRepository messageRepository;
@Autowired
private OutboxRepository outboxRepository;
private final ObjectMapper objectMapper = new ObjectMapper();
@PostMapping("/messages")
@Transactional
public String createMessage(@RequestBody String content) throws JsonProcessingException {
Message message = new Message();
message.setContent(content);
messageRepository.save(message);
Outbox outbox = new Outbox();
outbox.setEventType("MessageCreated");
outbox.setPayload(objectMapper.writeValueAsString(message));
outboxRepository.save(outbox);
return "Message saved and event created";
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment