jaugment2.mail
Interface MailSender

All Known Implementing Classes:
JavaMailServiceProxy, JavaMailService

public interface MailSender
extends java.rmi.Remote

Well-known-interface of proxies able to send messages


Inner Class Summary
static class MailSender.FolderHandle
           
static class MailSender.MailEvent
          Class for events thrown here
static class MailSender.MailSenderFolder
           
static class MailSender.MailSenderMessage
          JavaMail-messages are connected to a store and thus cannot be send over the wire so we have to wrasp them like this
static class MailSender.MessageHandle
           
static class MailSender.Receiver
           
static class MailSender.StoreHandle
           
 
Method Summary
 net.jini.core.lease.Lease addListener(net.jini.core.event.RemoteEventListener listener, java.rmi.MarshalledObject handback, int registerfor)
          Subscribe for events
 boolean copyMessage(MailSender.MessageHandle hmessage, MailSender.FolderHandle hfolder, boolean move)
          copies the identified message to the identified folder
 void deleteMessage(MailSender.MessageHandle hmessage)
          delete the identified message
 MailSender.MailSenderMessage[] getFolderMessages(MailSender.FolderHandle hfolder, boolean getcontent)
          Get all messages of a folder
 MailSender.MailSenderFolder getMailSenderFolder(MailSender.FolderHandle hfolder)
           
 MailSender.MailSenderMessage getMessage(MailSender.MessageHandle hmessage, boolean getcontent)
          Get all data of the designated message
 MailSender.FolderHandle[] getSubFolders(MailSender.FolderHandle hfolder)
           
 TextEditorProxyIF getTextEditorProxy()
          Return the first TextEditorProxyIF found for our Representations to have some central buffers.
 boolean sendMessage(javax.mail.internet.MimeMultipart body, java.lang.String subject, MailSender.Receiver[] to)
          Send a generic message.
 boolean sendSimpleMessage(java.lang.String text, java.lang.String subject, java.lang.String to)
           
 void setMessageReat(MailSender.MessageHandle hmessage, boolean reat)
          mark a message as reat/unreat
 

Method Detail

getTextEditorProxy

public TextEditorProxyIF getTextEditorProxy()
                                     throws java.rmi.RemoteException
Return the first TextEditorProxyIF found for our Representations to have some central buffers. TODO: put this into another interface extending MailSender

getMailSenderFolder

public MailSender.MailSenderFolder getMailSenderFolder(MailSender.FolderHandle hfolder)
                                                throws java.rmi.RemoteException

getSubFolders

public MailSender.FolderHandle[] getSubFolders(MailSender.FolderHandle hfolder)
                                        throws java.rmi.RemoteException

getFolderMessages

public MailSender.MailSenderMessage[] getFolderMessages(MailSender.FolderHandle hfolder,
                                                        boolean getcontent)
                                                 throws java.rmi.RemoteException
Get all messages of a folder

getMessage

public MailSender.MailSenderMessage getMessage(MailSender.MessageHandle hmessage,
                                               boolean getcontent)
                                        throws java.rmi.RemoteException
Get all data of the designated message
Parameters:
getcontent - fill in the content-field too. This may be an expensive operation

deleteMessage

public void deleteMessage(MailSender.MessageHandle hmessage)
                   throws java.rmi.RemoteException
delete the identified message

setMessageReat

public void setMessageReat(MailSender.MessageHandle hmessage,
                           boolean reat)
                    throws java.rmi.RemoteException
mark a message as reat/unreat

copyMessage

public boolean copyMessage(MailSender.MessageHandle hmessage,
                           MailSender.FolderHandle hfolder,
                           boolean move)
                    throws java.rmi.RemoteException
copies the identified message to the identified folder
Parameters:
move - true if the message shall be moved to the new folder

sendMessage

public boolean sendMessage(javax.mail.internet.MimeMultipart body,
                           java.lang.String subject,
                           MailSender.Receiver[] to)
                    throws java.lang.Exception
Send a generic message. The actual implementation may be limited to special messages for some receivers. So e.g. an SMS-message may not contain non-text or a voice-message only voice.

sendSimpleMessage

public boolean sendSimpleMessage(java.lang.String text,
                                 java.lang.String subject,
                                 java.lang.String to)
                          throws java.lang.Exception

addListener

public net.jini.core.lease.Lease addListener(net.jini.core.event.RemoteEventListener listener,
                                             java.rmi.MarshalledObject handback,
                                             int registerfor)
                                      throws java.rmi.RemoteException,
                                             net.jini.core.lease.LeaseDeniedException,
                                             java.lang.IllegalStateException
Subscribe for events