if ( useIMAPstorage ) {
ImapMailbox mbox = null;
try {
user = ( JamesUser ) localusers.getUserByName( username );
mbox = imapHost.getInbox( user );
MailImpl mail = new MailImpl( message );
mbox.store( mail );
getLogger().info( "Message " + message.getMessageID() +
" stored in " +
mbox.getFullName() );
mbox = null;
}
catch ( Exception e ) {
getLogger().error( "Exception storing mail: " + e );
e.printStackTrace();
if ( mbox != null ) {
mbox = null;
}
throw new RuntimeException( "Exception storing mail: " + e );
}
}
else {
Collection recipients = new HashSet();
recipients.add( recipient );
MailImpl mailImpl = new MailImpl( getId(), sender, recipients, message );
MailRepository userInbox = getUserInbox( username );
if ( userInbox == null ) {
StringBuffer errorBuffer =
new StringBuffer( 128 )
.append( "The inbox for user " )