Skip to content

Commit

Permalink
end2end
Browse files Browse the repository at this point in the history
  • Loading branch information
Marc Gorzala committed Mar 31, 2024
1 parent 2f57eef commit 11cd36f
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package net.dancier.kikeriki.adapter.out.userinfo;

import net.dancier.kikeriki.application.port.UserInfoDto;
import net.dancier.kikeriki.application.port.UserInfoPort;
import org.springframework.stereotype.Component;

@Component
public class UserInfoAdapter implements UserInfoPort {
@Override
public UserInfoDto loadByDancerId(String dancerId) {
UserInfoDto userInfoDto = new UserInfoDto();
userInfoDto.setDancerId(dancerId);
userInfoDto.setEmailAddress("[email protected]");
return userInfoDto;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,17 @@

import jakarta.transaction.Transactional;
import lombok.RequiredArgsConstructor;
import net.dancier.kikeriki.adapter.out.userinfo.UserInfoAdapter;
import net.dancier.kikeriki.application.domain.model.messages.EmailSendingRequestedCommand;
import net.dancier.kikeriki.application.domain.model.state.State;
import net.dancier.kikeriki.application.port.StatePort;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.stereotype.Component;

import java.time.LocalDateTime;
import java.util.UUID;

@Component
@RequiredArgsConstructor
Expand All @@ -17,6 +21,10 @@ public class CheckAndSendService {

private final StatePort statePort;

private final UserInfoAdapter userInfoAdapter;

private ApplicationEventPublisher applicationEventPublisher;

@Transactional
public void checkAndSend(String dancerId) {
log.info("CheckAndSend for {}", dancerId);
Expand All @@ -28,5 +36,15 @@ public void checkAndSend(String dancerId) {
}
public void sendMail(String dancerId) {
log.info("Sending InfoMail...");
String mailAddress = userInfoAdapter.loadByDancerId(dancerId).getEmailAddress();
EmailSendingRequestedCommand emailSendingRequestedCommand =
new EmailSendingRequestedCommand.EmailSendingRequestedCommandBuilder()
.setFrom("[email protected]")
.setId(UUID.randomUUID().toString())
.setTo(new String[]{mailAddress})
.setSubject("Infomail")
.setText("Hallo Welt")
.build();
applicationEventPublisher.publishEvent(emailSendingRequestedCommand);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package net.dancier.kikeriki.application.port;

import lombok.Data;

@Data
public class UserInfoDto {

private String dancerId;

private String emailAddress;

}

0 comments on commit 11cd36f

Please sign in to comment.