@Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } Investor investor = (Investor) o; // TODO: is it enough? return Arrays.equals(email == null ? null : email.getBytes(), investor.getEmail() == null ? null : investor.getEmail().getBytes()); }
investorRepository.saveAndFlush(investor); LOG.debug("Investor saved to the database: email=" + investor.getEmail() + "), emailConfirmationToken=" + investor.getEmailConfirmationToken());
public static InvestorMessageDTO build(Investor investor) { return new InvestorMessageDTO( investor.getCreationDate(), investor.getEmail(), investor.getEmailConfirmationToken(), investor.getWalletAddress(), investor.getPayInEtherAddress(), investor.getPayInBitcoinAddress(), investor.getRefundEtherAddress(), investor.getRefundBitcoinAddress(), investor.getIpAddress() ); }
public void sendSummaryEmail(Investor investor) throws EmailNotSentException, EmailNotPreparedException { Optional<MimeMessage> oMessageContainer = createMessageContainer(investor.getEmail()); Optional<MimeMessageHelper> oMessage = prepareMessage(oMessageContainer, investor.getEmail(), this.mailServiceConfigHolder.getSummaryEmailSubject(), MailType.SUMMARY_EMAIL); this.mailContentBuilder.buildSummaryEmail(oMessage, Optional.ofNullable(investor)); if (this.mailServiceConfigHolder.isEnabled()) { sendMail(oMessage, MailType.SUMMARY_EMAIL); } else { LOG.info("Skip sending {} email to {}", MailType.SUMMARY_EMAIL, investor.getEmail()); } }
.setRefundBitcoinAddress(refundBitcoinAddress) .setRefundEtherAddress(addPrefixEtherIfNotExist(refundEthereumAddress)); LOG.debug("Saving wallet for the investor (" + investor.getEmail() + ") with confirmation token (" + investor.getEmailConfirmationToken() + ")."); investorRepository.save(investor);
public void sendConfirmationEmail(Investor investor, String confirmationEmaiLink) throws EmailNotSentException, EmailNotPreparedException { Optional<MimeMessage> oMessageContainer = createMessageContainer(investor.getEmail()); Optional<MimeMessageHelper> oMessage = prepareMessage(oMessageContainer, investor.getEmail(), this.mailServiceConfigHolder.getConfirmationEmailSubject(), MailType.CONFIRMATION_EMAIL); this.mailContentBuilder.buildConfirmationEmail(oMessage, confirmationEmaiLink); if (this.mailServiceConfigHolder.isEnabled()) { sendMail(oMessage, MailType.CONFIRMATION_EMAIL); } else { LOG.info("Skip sending {} email to {}, link: {}", MailType.CONFIRMATION_EMAIL, investor.getEmail(), confirmationEmaiLink); } }
public void sendTransactionReceivedEmail(Investor investor, BigDecimal amountFundsReceived, CurrencyType currencyType, String transactionUrl) throws EmailNotSentException, EmailNotPreparedException { Optional<MimeMessage> oMessageContainer = createMessageContainer(investor.getEmail()); Optional<MimeMessageHelper> oMessage = prepareMessage(oMessageContainer, investor.getEmail(), this.mailServiceConfigHolder.getTransactionReceivedEmailSubject(), MailType.TOKENS_ALLOCATED_EMAIL); this.mailContentBuilder.buildTransactionReceivedEmail(oMessage, amountFundsReceived, currencyType, transactionUrl); if (this.mailServiceConfigHolder.isEnabled()) { sendMail(oMessage, MailType.TRANSACTION_RECEIVED_EMAIL); } else { LOG.info("Skip sending {} email to {}, funds: {}, currency: {}, url: {}", MailType.TRANSACTION_RECEIVED_EMAIL, investor.getEmail(), amountFundsReceived, currencyType, transactionUrl); } }
public void sendTokensAllocatedEmail(Investor investor, BigDecimal amountFundsReceived, CurrencyType currencyType, String transactionUrl, BigDecimal tokenAmount) throws EmailNotSentException, EmailNotPreparedException { Optional<MimeMessage> oMessageContainer = createMessageContainer(investor.getEmail()); Optional<MimeMessageHelper> oMessage = prepareMessage(oMessageContainer, investor.getEmail(), this.mailServiceConfigHolder.getTokensAllocatedEmailSubject(), MailType.TOKENS_ALLOCATED_EMAIL); this.mailContentBuilder.buildTokensAllocatedEmail(oMessage, amountFundsReceived, currencyType, transactionUrl, tokenAmount); if (this.mailServiceConfigHolder.isEnabled()) { sendMail(oMessage, MailType.TOKENS_ALLOCATED_EMAIL); } else { LOG.info("Skip sending {} email to {}, funds: {}, currency: {}, url: {}, tokens: {}", MailType.TOKENS_ALLOCATED_EMAIL, investor.getEmail(), amountFundsReceived, currencyType, transactionUrl, tokenAmount); } }
public void sendKycReminderEmail(Investor investor, String kycUrl) throws EmailNotSentException, EmailNotPreparedException { Optional<MimeMessage> oMessageContainer = createMessageContainer(investor.getEmail()); Optional<MimeMessageHelper> oMessage = prepareMessage(oMessageContainer, investor.getEmail(), this.mailServiceConfigHolder.getKycReminderEmailSubject(), MailType.KYC_REMINDER_EMAIL); this.mailContentBuilder.buildKycReminderEmail(oMessage, kycUrl); if (this.mailServiceConfigHolder.isEnabled()) { try { sendMail(oMessage, MailType.KYC_REMINDER_EMAIL); publishMailSentMessage(getRecipient(oMessage), MailType.KYC_REMINDER_EMAIL); } catch (MessagingException me) { LOG.error("Failed getting recipient after sending email type {}. Reason {}", MailType.KYC_REMINDER_EMAIL, me.toString()); } } else { LOG.info("Skip sending {} email to {}, url: {}", MailType.KYC_REMINDER_EMAIL, investor.getEmail(), kycUrl); } }
public void sendKycStartEmail(Investor investor, String kycUrl) throws EmailNotSentException, EmailNotPreparedException { Optional<MimeMessage> oMessageContainer = createMessageContainer(investor.getEmail()); Optional<MimeMessageHelper> oMessage = prepareMessage(oMessageContainer, investor.getEmail(), this.mailServiceConfigHolder.getKycStartEmailSubject(), MailType.KYC_START_EMAIL); this.mailContentBuilder.buildKycStartEmail(oMessage, kycUrl); if (this.mailServiceConfigHolder.isEnabled()) { try { sendMail(oMessage, MailType.KYC_START_EMAIL); publishMailSentMessage(getRecipient(oMessage), MailType.KYC_START_EMAIL); } catch (MessagingException me) { LOG.error("Failed getting recipient after sending email type {}. Reason {}", MailType.KYC_START_EMAIL, me.toString()); } } else { LOG.info("Skip sending {} email to {}, url: {}", MailType.KYC_START_EMAIL, investor.getEmail(), kycUrl); } }
@Test public void testSaveAndExistsAndFind() { Investor i = createInvestor(1); PaymentLog p = paymentLogRepository.save(createPaymentLog(i, "1")); // assertTrue(paymentLogRepository.existsByTxIdentifierAndCurrency("1", CURRENCY_TYPE)); Optional<PaymentLog> oPaymentLog = paymentLogRepository.findOptionalByTransactionId("1"); assertTrue(oPaymentLog.isPresent()); assertTrue(oPaymentLog.filter((paymentLog) -> paymentLog.getInvestor().getEmail().equals("emailAddress1") ).isPresent()); assertTrue(oPaymentLog.filter((paymentLog) -> paymentLog.equals(p)).isPresent()); }