public void copySubscribers(AEntity from, AEntity to) { Subscription fromSubscription = subscriptionDao.getSubscriptionBySubject(from); if (fromSubscription == null || fromSubscription.isSubscribersEmailsEmpty()) return; Subscription toSubscription = subscriptionDao.getSubscriptionBySubject(to); if (toSubscription == null) toSubscription = subscriptionDao.postSubscription(to); toSubscription.addSubscribersEmails(fromSubscription.getSubscribersEmails()); }
public void subscribe(String email, AEntity subject) { if (!Str.isEmail(email)) throw new RuntimeException("Invalid email: " + email); email = email.toLowerCase(); Subscription subscription = subscriptionDao.getSubscriptionBySubject(subject); if (subscription == null) subscription = subscriptionDao.postSubscription(subject); subscription.addSubscribersEmail(email); log.info(email, "subscribed to", subject); }