public class OKMMail extends Object implements MailModule
Modifier and Type | Method and Description |
---|---|
void |
copy(String token,
String mailPath,
String dstId)
Copy a mail to another location in the repository.
|
Mail |
create(String token,
Mail mail)
Create a new mail in the repository.
|
void |
delete(String token,
String mailId)
Delete a mail the repository.
|
void |
extendedCopy(String token,
String mailPath,
String dstId,
ExtendedAttributes extAttr)
Copy a mail to another location in the repository.
|
List<Mail> |
getChildren(String token,
String fldId)
Retrieve a list of children mails from an existing folder.
|
List<Mail> |
getChilds(String token,
String fldId)
Deprecated.
|
static OKMMail |
getInstance() |
String |
getPath(String token,
String uuid)
Get the mail path from a UUID
|
Mail |
getProperties(String token,
String mailId)
Obtains properties from a previously created mail.
|
Mail |
importEml(String path,
InputStream is)
Import EML file as MailNode.
|
Mail |
importMsg(String path,
InputStream is)
Import MSG file as MailNode.
|
boolean |
isValid(String token,
String mailId)
Test if a mail path is valid.
|
void |
move(String token,
String mailPath,
String dstId)
Move a mail to another location in the repository.
|
void |
purge(String token,
String mailId)
Deletes definitively a mail from the repository.
|
Mail |
rename(String token,
String mailId,
String newName)
Rename a mail in the repository.
|
public static OKMMail getInstance()
public Mail create(String token, Mail mail) throws PathNotFoundException, ItemExistsException, VirusDetectedException, AccessDeniedException, RepositoryException, DatabaseException, UserQuotaExceededException, AutomationException
MailModule
create
in interface MailModule
mail
- A mail object with the new mail properties.PathNotFoundException
- If the parent mail doesn't exist.ItemExistsException
- If there is already a mail in the
repository with the same name in the same path.AccessDeniedException
- If there is any security problem:
you can't modify the parent mail because of lack of permissions.RepositoryException
- If there is any general repository problem.VirusDetectedException
DatabaseException
UserQuotaExceededException
AutomationException
public Mail getProperties(String token, String mailId) throws AccessDeniedException, PathNotFoundException, RepositoryException, DatabaseException
MailModule
getProperties
in interface MailModule
mailId
- The path that identifies an unique mail, or its UUID.PathNotFoundException
- If the indicated mail doesn't exist.RepositoryException
- If there is any general repository problem.AccessDeniedException
DatabaseException
public void delete(String token, String mailId) throws LockException, PathNotFoundException, AccessDeniedException, RepositoryException, DatabaseException
MailModule
delete
in interface MailModule
mailId
- The path that identifies an unique mail.LockException
- Can't delete a mail with locked documents.PathNotFoundException
- If there is no mail in the repository in this path.AccessDeniedException
- If there is any security problem:
you can't modify the mail because of lack of permissions.RepositoryException
- If there is any general repository problem.DatabaseException
public void purge(String token, String mailId) throws LockException, PathNotFoundException, AccessDeniedException, RepositoryException, DatabaseException
MailModule
purge
in interface MailModule
mailId
- The path that identifies an unique mail.LockException
- Can't delete a mail with locked documents.PathNotFoundException
- If there is no mail in the repository in this path.AccessDeniedException
- If there is any security problem:
you can't modify the mail because of lack of permissions.RepositoryException
- If there is any general repository problem.DatabaseException
public Mail rename(String token, String mailId, String newName) throws PathNotFoundException, ItemExistsException, AccessDeniedException, RepositoryException, DatabaseException
MailModule
rename
in interface MailModule
mailId
- The path that identifies an unique mail.newName
- The new mail name.PathNotFoundException
- If there is no mail in the repository in this path.ItemExistsException
- If there is already a mail in the
repository with the same name in the same path.AccessDeniedException
- If there is any security problem:
you can't modify the mail because of lack of permissions.RepositoryException
- If there is any general repository problem.DatabaseException
public void move(String token, String mailPath, String dstId) throws PathNotFoundException, ItemExistsException, AccessDeniedException, RepositoryException, DatabaseException
MailModule
move
in interface MailModule
mailPath
- The path that identifies an unique mail.dstId
- The path of the destination mail.PathNotFoundException
- If the dstPath does not exists.ItemExistsException
- If there is already a mail in the
destination mail with the same name.AccessDeniedException
- If there is any security problem:
you can't modify the parent mail or the destination mail
because of lack of permissions.RepositoryException
- If there is any general repository problem.DatabaseException
public void copy(String token, String mailPath, String dstId) throws PathNotFoundException, ItemExistsException, AccessDeniedException, RepositoryException, IOException, AutomationException, DatabaseException, UserQuotaExceededException
MailModule
copy
in interface MailModule
mailPath
- The path that identifies an unique mail.dstId
- The path of the destination mail.PathNotFoundException
- If the dstPath does not exists.ItemExistsException
- If there is already a mail in the
destination mail with the same name.AccessDeniedException
- If there is any security problem:
you can't modify the parent mail or the destination mail
because of lack of permissions.RepositoryException
- If there is any general repository problem.IOException
AutomationException
DatabaseException
UserQuotaExceededException
public void extendedCopy(String token, String mailPath, String dstId, ExtendedAttributes extAttr) throws PathNotFoundException, ItemExistsException, AccessDeniedException, RepositoryException, IOException, AutomationException, DatabaseException, UserQuotaExceededException
MailModule
extendedCopy
in interface MailModule
mailPath
- The path that identifies an unique mail.dstId
- The path of the destination mail.extAttr
- Attributes to define what need to be duplicated.PathNotFoundException
- If the dstPath does not exists.ItemExistsException
- If there is already a mail in the
destination mail with the same name.AccessDeniedException
- If there is any security problem:
you can't modify the parent mail or the destination mail
because of lack of permissions.RepositoryException
- If there is any general repository problem.IOException
AutomationException
DatabaseException
UserQuotaExceededException
@Deprecated public List<Mail> getChilds(String token, String fldId) throws AccessDeniedException, PathNotFoundException, RepositoryException, DatabaseException
MailModule
getChilds
in interface MailModule
fldId
- The path that identifies an unique folder or its UUID.PathNotFoundException
- If there is no folder in the repository in this pathRepositoryException
- If there is any general repository problem.AccessDeniedException
DatabaseException
public List<Mail> getChildren(String token, String fldId) throws AccessDeniedException, PathNotFoundException, RepositoryException, DatabaseException
MailModule
getChildren
in interface MailModule
fldId
- The path that identifies an unique folder or its UUID.PathNotFoundException
- If there is no folder in the repository in this pathRepositoryException
- If there is any general repository problem.AccessDeniedException
DatabaseException
public boolean isValid(String token, String mailId) throws PathNotFoundException, AccessDeniedException, RepositoryException, DatabaseException
MailModule
isValid
in interface MailModule
mailId
- The path that identifies an unique mail or its UUID.PathNotFoundException
- If there is no mail in the repository with this path.AccessDeniedException
- If there is any security problem:
you can't access this mail because of lack of permissions.RepositoryException
- If there is any general repository problem.DatabaseException
public String getPath(String token, String uuid) throws AccessDeniedException, RepositoryException, DatabaseException
MailModule
getPath
in interface MailModule
uuid
- The unique mail id.AccessDeniedException
- If there is any security problem:
you can't access this folder because of lack of permissions.RepositoryException
- If there is any problem.DatabaseException
public Mail importEml(String path, InputStream is) throws javax.mail.MessagingException, PathNotFoundException, ItemExistsException, VirusDetectedException, AccessDeniedException, RepositoryException, DatabaseException, UserQuotaExceededException, UnsupportedMimeTypeException, FileSizeExceededException, ExtensionException, AutomationException, IOException
public Mail importMsg(String path, InputStream is) throws javax.mail.MessagingException, PathNotFoundException, ItemExistsException, VirusDetectedException, AccessDeniedException, RepositoryException, DatabaseException, UserQuotaExceededException, UnsupportedMimeTypeException, FileSizeExceededException, ExtensionException, AutomationException, IOException
Copyright © 2019 Open Knowledge Management System S.L.. All rights reserved.