You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by no...@apache.org on 2011/04/20 11:06:39 UTC
svn commit: r1095329 -
/james/mailbox/trunk/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java
Author: norman
Date: Wed Apr 20 09:06:38 2011
New Revision: 1095329
URL: http://svn.apache.org/viewvc?rev=1095329&view=rev
Log:
Use FileUtils.moveFile(...) as replacement for File.renameTo(..) and make sure all inputstreams get closed after copy a message
Modified:
james/mailbox/trunk/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java
Modified: james/mailbox/trunk/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java
URL: http://svn.apache.org/viewvc/james/mailbox/trunk/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java?rev=1095329&r1=1095328&r2=1095329&view=diff
==============================================================================
--- james/mailbox/trunk/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java (original)
+++ james/mailbox/trunk/maildir/src/main/java/org/apache/james/mailbox/maildir/mail/MaildirMessageMapper.java Wed Apr 20 09:06:38 2011
@@ -311,10 +311,11 @@ public class MaildirMessageMapper extend
message.getMessage().getFullContentOctets());
File messageFile = new File(tmpFolder, messageName.getFullName());
FileOutputStream fos = null;
+ InputStream input = null;
try {
messageFile.createNewFile();
fos = new FileOutputStream(messageFile);
- InputStream input = message.getMessage().getFullContent();
+ input = message.getMessage().getFullContent();
byte[] b = new byte[BUF_SIZE];
int len = 0;
while ((len = input.read(b)) != -1)
@@ -328,7 +329,11 @@ public class MaildirMessageMapper extend
if (fos != null)
fos.close();
} catch (IOException e) {
- e.printStackTrace();
+ }
+ try {
+ if (input != null)
+ input.close();
+ } catch (IOException e) {
}
}
File newMessageFile = null;
@@ -412,7 +417,7 @@ public class MaildirMessageMapper extend
// this automatically moves messages from new to cur if
// needed
String newMessageName = messageName.getFullName();
- messageFile.renameTo(new File(folder.getCurFolder(), newMessageName));
+ FileUtils.moveFile(messageFile, new File(folder.getCurFolder(), newMessageName));
long uid = maildirMessage.getUid();
folder.update(uid, newMessageName);
} catch (IOException e) {
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org