Update of 
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/publisher
In directory 
james.mmbase.org:/tmp/cvs-serv2264/portlets-newsletter/src/java/com/finalist/newsletter/publisher

Modified Files:
        Personaliser.java NewsletterPublisher.java 
        NewsletterGenerator.java 
Log Message:
CMSC-703 change tag to term


See also: 
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/publisher
See also: http://www.mmbase.org/jira/browse/CMSC-703


Index: Personaliser.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/publisher/Personaliser.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- Personaliser.java   17 Apr 2008 02:50:45 -0000      1.1
+++ Personaliser.java   29 Apr 2008 01:37:05 -0000      1.2
@@ -1,7 +1,8 @@
 package com.finalist.newsletter.publisher;
 
 import com.finalist.newsletter.domain.Subscription;
+import com.finalist.newsletter.domain.Publication;
 
 public interface Personaliser {
-   public String personalise(String rawHtmlContent, Subscription subscription);
+   public String personalise(String rawHtmlContent, Subscription subscription, 
Publication publication);
 }


Index: NewsletterPublisher.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/publisher/NewsletterPublisher.java,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- NewsletterPublisher.java    25 Apr 2008 18:18:34 -0000      1.19
+++ NewsletterPublisher.java    29 Apr 2008 01:37:05 -0000      1.20
@@ -2,8 +2,10 @@
 
 import com.finalist.newsletter.domain.Subscription;
 import com.finalist.newsletter.domain.Publication;
+import com.finalist.newsletter.domain.Newsletter;
 import com.finalist.newsletter.publisher.NewsletterGenerator;
 import com.finalist.newsletter.NewsletterSendFailException;
+import com.finalist.newsletter.util.NewsletterUtil;
 import com.finalist.cmsc.mmbase.PropertiesUtil;
 import org.mmbase.module.Module;
 import org.mmbase.util.logging.Logger;
@@ -33,16 +35,20 @@
       NewsletterPublisher.personaliser = personaliser;
    }
 
-   public void deliver(String url, String recipient, String mineType, String 
title,
-                       String fromAddress, String fromName, String 
replyAddress, String replyName) {
+   public void deliver(Publication publication, Subscription subscription) {
       try {
          Message message = new MimeMessage(getMailSession());
-         setSenderInfomation(message, fromAddress, fromName, replyAddress, 
replyName);
-
-         setRecipient(message, recipient);
-         setBody(message, url, mineType);
-         setTitle(message, title);
-         setMIME(message, mineType);
+         Newsletter newsletter = publication.getNewsletter();
+         setSenderInfomation(message,
+               newsletter.getFromAddress(),
+               newsletter.getFromName(),
+               newsletter.getReplyAddress(),
+               newsletter.getReplyName());
+
+         setRecipient(message, subscription.getEmail());
+         setBody(publication, subscription, message);
+         setTitle(message, publication.getTitle());
+         setMIME(message, subscription.getMimeType());
 
          Transport.send(message);
          log.debug("mail send!");
@@ -55,12 +61,18 @@
       }
    }
 
+   private void setBody(Publication publication, Subscription subscription, 
Message message) throws MessagingException {
+      String url = 
NewsletterUtil.getTermURL(publication.getUrl(),subscription.getTerms(),publication.getId());
+      String content = NewsletterGenerator.generate(url, 
subscription.getMimeType());
+
+      if (null != getPersonalise()) {
+         content = getPersonalise().personalise(content, subscription, 
publication);
+      }
 
-   protected void setBody(Message message, String url, String mimeType) throws 
MessagingException {
-      String content = NewsletterGenerator.generate(url, mimeType);
       message.setText(content + "\n");
    }
 
+
    private void setSenderInfomation(Message message, String fromAddress, 
String fromName, String replyAddress, String replyName)
          throws MessagingException, UnsupportedEncodingException {
 
@@ -146,17 +158,15 @@
       return parameter;
    }
 
-   private static String personalise(String rawHtmlContent, Subscription 
subscription) {
-      String result = rawHtmlContent;
-
+   private Personaliser getPersonalise() {
+      Personaliser ps = null;
       if (null == personaliser) {
          personaliser = PropertiesUtil.getProperty("newsletter.personaliser");
       }
 
       if (StringUtils.isNotEmpty(personaliser)) {
          try {
-            Personaliser ps = (Personaliser) 
Class.forName(personaliser).newInstance();
-            result = ps.personalise(rawHtmlContent, subscription);
+            ps = (Personaliser) Class.forName(personaliser).newInstance();
          } catch (ClassNotFoundException e) {
             log.error("No specified personaliser found:" + personaliser, e);
          } catch (IllegalAccessException e) {
@@ -165,7 +175,7 @@
             log.error(e);
          }
       }
-      return result;
+      return ps;
 
    }
 }
\ No newline at end of file


Index: NewsletterGenerator.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/publisher/NewsletterGenerator.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- NewsletterGenerator.java    25 Apr 2008 18:18:34 -0000      1.4
+++ NewsletterGenerator.java    29 Apr 2008 01:37:05 -0000      1.5
@@ -1,22 +1,14 @@
 package com.finalist.newsletter.publisher;
 
+import org.mmbase.util.logging.Logger;
+import org.mmbase.util.logging.Logging;
+
+import javax.mail.MessagingException;
 import java.io.InputStreamReader;
 import java.io.Reader;
 import java.net.HttpURLConnection;
 import java.net.URL;
 
-import javax.mail.Message;
-import javax.mail.MessagingException;
-
-import org.mmbase.util.logging.Logger;
-import org.mmbase.util.logging.Logging;
-import org.apache.commons.lang.StringUtils;
-
-import com.finalist.cmsc.mmbase.PropertiesUtil;
-import com.finalist.cmsc.navigation.NavigationUtil;
-import com.finalist.newsletter.domain.Subscription;
-import com.finalist.newsletter.domain.Publication;
-
 public class NewsletterGenerator {
 
    private static Logger log = 
Logging.getLoggerInstance(NewsletterGenerator.class.getName());
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to