Author: norman
Date: Thu Sep 15 20:00:14 2011
New Revision: 1171252
URL: http://svn.apache.org/viewvc?rev=1171252&view=rev
Log:
Add javadocs
Modified:
james/server/trunk/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueue.java
james/server/trunk/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueueFactory.java
Modified:
james/server/trunk/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueue.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueue.java?rev=1171252&r1=1171251&r2=1171252&view=diff
==============================================================================
---
james/server/trunk/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueue.java
(original)
+++
james/server/trunk/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueue.java
Thu Sep 15 20:00:14 2011
@@ -49,6 +49,9 @@ import org.slf4j.Logger;
/**
* {@link ManageableMailQueue} implementation which use the fs to store {@link
Mail}'s
*
+ * On create of the {@link FileMailQueue} the {@link #init()} will get called.
This takes care of load the needed meta-data into memory for fast access.
+ *
+ *
* TODO: Split emails in sub-directories to make it more efficient with huge
queues
*
*
@@ -162,6 +165,7 @@ public class FileMailQueue implements Ma
keyMappings.put(key, item);
if (delay > 0) {
+ // The message should get delayed so schedule it for later
scheduler.schedule(new Runnable() {
@Override
@@ -178,6 +182,8 @@ public class FileMailQueue implements Ma
} else {
inmemoryQueue.put(key);
}
+
+ //TODO: Think about exception handling in detail
} catch (FileNotFoundException e) {
throw new MailQueueException("Unable to enqueue mail", e);
} catch (IOException e) {
@@ -217,6 +223,8 @@ public class FileMailQueue implements Ma
private String getFileNameWithoutExtension(String parentdir, String name,
long delay) {
return parentdir + "/" + System.currentTimeMillis() + delay + "-" +
name;
}
+
+
@Override
public void enQueue(Mail mail) throws MailQueueException {
enQueue(mail, 0, TimeUnit.MILLISECONDS);
@@ -271,6 +279,8 @@ public class FileMailQueue implements Ma
LifecycleUtil.dispose(mail);
}
};
+
+ // TODO: Think about exception handling in detail
} catch (FileNotFoundException e) {
throw new MailQueueException("Unable to dequeue", e);
} catch (IOException e) {
Modified:
james/server/trunk/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueueFactory.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueueFactory.java?rev=1171252&r1=1171251&r2=1171252&view=diff
==============================================================================
---
james/server/trunk/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueueFactory.java
(original)
+++
james/server/trunk/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueueFactory.java
Thu Sep 15 20:00:14 2011
@@ -46,6 +46,15 @@ public class FileMailQueueFactory implem
public void setFileSystem(FileSystem fs) {
this.fs = fs;
}
+
+ /**
+ * If <code>true</code> the later created {@link FileMailQueue} will call
<code>fsync</code> after each message {@link
FileMailQueue#enQueue(org.apache.mailet.Mail)} call. This
+ * is needed to be fully RFC conform but gives a performance penalty. If
you are brave enough you man set it to <code>false</code>
+ *
+ * The default is <code>true</code>
+ *
+ * @param sync
+ */
public void setSync(boolean sync) {
this.sync = sync;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]