Confirmation.java: do not import prevayler
[org.ibex.mail.git] / src / org / ibex / mail / Confirmation.java
index ccb8793..6f3428d 100644 (file)
@@ -4,7 +4,6 @@
 
 package org.ibex.mail;
 import java.lang.reflect.*;
-//import org.prevayler.*;
 import org.ibex.crypto.*;
 import org.ibex.util.*;
 import org.ibex.mail.protocol.*;
@@ -30,7 +29,7 @@ public abstract class Confirmation implements Externalizable {
     public              long    expiration;
     public     abstract String  getDescription();
     public     abstract String  getURL(String tail);
-    public              int serial;
+    public              int     serial;
 
     private static HashMap<Integer,Confirmation> all = new HashMap<Integer,Confirmation>();
 
@@ -102,17 +101,20 @@ public abstract class Confirmation implements Externalizable {
     }
 
     public void signAndSend(Address sender, long secret, Date now) throws IOException, Message.Malformed {
-        SMTP.Outgoing.accept(Message.newMessage(new Fountain.StringFountain("From: "    + sender + "\r\n" +
-                                                                            "To: "      + who.toString(true) + "\r\n" +
-                                                                            "Subject: confirm " + getDescription() + "\r\n" +
-                                                                            "Message-Id: "+Message.generateFreshMessageId()+"\r\n" +
-                                                                            "\r\n" +
-                                                                            "Please click the link below to " + getDescription() + "\r\n" +
-                                                                            getURL(sign(secret))),
-                                                sender,
-                                                who
-                                                )
-                             );
+
+        Headers h = new Headers(new String[] {
+            "From",        sender.toString(true),
+            "To",          who.toString(true),
+            "Message-Id",  Message.generateFreshMessageId(),
+            "Date",        new Date()+"" /*FIXME!!!*/,
+            "Subject",     "confirm " + getDescription()
+        });
+
+        Fountain fountain = Fountain.Util.create("Please click the link below to " +
+                                                 getDescription() + "\r\n" +
+                                                 getURL(sign(secret)));
+        Message m = Message.newMessageFromHeadersAndBody(h, fountain, sender, who);
+        SMTP.Outgoing.enqueue(m);
     }
 
     public String sign(long secret) throws IOException {