Oracle® Mail Java API Reference
10g Release 1 (10.1.1)

B14492-01

oracle.mail.sdk.esmail
Class OracleSharedFolder

java.lang.Object
  |
  +--javax.mail.Folder
        |
        +--oracle.mail.sdk.esmail.OracleFolder
              |
              +--oracle.mail.sdk.esmail.OracleSharedFolder

public class OracleSharedFolder
extends OracleFolder

This class implements an Oracle Shared folder. Shared folder functionality is an extension to the standard Javamail functionality and is based on the RFC 2086 IMAP4 ACL extension. All shared folders are owned by a user. Only the owner can delete and rename shared folders. Only an owner can add and remove acis for a shared folder. The list acl - l is implied with other acls. For increased usability and compatibility with v1, list aci is implicit.


Inner classes inherited from class oracle.mail.sdk.esmail.OracleFolder
OracleFolder.OracleFlag

Fields inherited from class javax.mail.Folder
HOLDS_FOLDERS, HOLDS_MESSAGES, READ_ONLY, READ_WRITE

Method Summary
void _setFlags(int[] msgnums, int len, javax.mail.Flags flag, boolean value)
Set flags only when SETSEENFLAG or SETALLFLAGS acis are present.
void appendMessages(javax.mail.Message[] msgs)
appendMessages - append only if shared folder writable
void copyMessages(javax.mail.Message[] msgs, javax.mail.Folder folder)
Copy messages only when COPYFROM aci is present.
boolean create(int type)
Create - override the create method in the OracleFolder class.
boolean delete(boolean recurse)
Delete this folder.
boolean exists()
Check if this folder exists in the database
javax.mail.Message[] expunge()
Expunge permitted only if allowed i.e., shared folder is writable.
void fetch(javax.mail.Message[] msgs, javax.mail.FetchProfile fp)
Get the messages if FETCH aci is present.
javax.mail.Message getMessage(int msgnum)
Get the message if FETCH aci is present.
java.lang.String getNamespace()
Retrieve shared namespace.
javax.mail.Folder getParent()
Return the parent of this folder as an instance of OracleSharedFolder.
boolean hasDigitPermission(int aDigit)
Check if shared folder has digit permissions.
boolean hasRead()
Check if shared folder has read permissions.
boolean hasWrite()
Check if shared folder has write permissions.
boolean isSubscribed()
Check if the shared folder is subscribed.
javax.mail.Folder[] list(java.lang.String pattern)
List subtree of shared folders using *(recursive) or %(top level)
javax.mail.Folder[] listSubscribed(java.lang.String pattern)
List subtree of subscribed shared folders using *(recursive) or %(top level)
void moveMessages(javax.mail.Message[] msgs, javax.mail.Folder folder)
Checks for permissions and moves messages to/from shared folders.
void open(int mode)
Open -- Get folder information and then get all the messages in the folder...
boolean renameTo(javax.mail.Folder f)
Rename this folder; notify the RenameListeners
javax.mail.Message[] search(javax.mail.search.SearchTerm term)
Search on the messages is permitted only if SEARCH aci is present.
void setFlags(int[] msgnums, javax.mail.Flags flag, boolean value)
Set flags only when SETSEENFLAG or SETALLFLAGS acis are present.
void setFlags(int start, int end, javax.mail.Flags flag, boolean value)
Set flags only when SETSEENFLAG or SETALLFLAGS acis are present.
void setFlags(javax.mail.Message[] msgs, javax.mail.Flags flag, boolean value)
Set flags only when SETSEENFLAG or SETALLFLAGS acis are present.
void setSubscribed(boolean subscribe)
Check the shared folder to be subscribed.

Methods inherited from class oracle.mail.sdk.esmail.OracleFolder
_doSearch, addACI, addACI, addACI, addACI, addACI, addACI, appendMessages, appendMessages, close, convertFlag, convertFlag, convertUsrFlag, getCounts, getFilteredHeaders, getFolder, getFolderExpiry, getFolderId, getFolderSize, getFolderSize, getFullName, getFullPath, getGranteeACI, getMessageByType, getMessageByUID, getMessageCount, getMessagesByUID, getMessagesByUID, getName, getNewMessageCount, getPermanentFlags, getSeparator, getType, getUID, getUIDValidity, getUnreadMessageCount, getURLName, hasNewMessages, isInheritedACI, isOpen, isShared, modifyACI, modifyACI, openInternal, removeACI, removeACI, removeACI, removeACI, search, setFolderExpiry, sortMessages

Methods inherited from class javax.mail.Folder
addConnectionListener, addFolderListener, addMessageChangedListener, addMessageCountListener, getMessages, getMessages, getMessages, getMode, getStore, list, listSubscribed, removeConnectionListener, removeFolderListener, removeMessageChangedListener, removeMessageCountListener, toString

Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait

Method Detail

delete

public boolean delete(boolean recurse)
               throws javax.mail.MessagingException

Delete this folder. If recurse is true, delete all the sub-folders as well. Notify listeners of the DELETE event.

Overrides:
delete in class OracleFolder
Tags copied from class: OracleFolder
See Also:
Folder.delete

create

public boolean create(int type)
               throws javax.mail.MessagingException

Create - override the create method in the OracleFolder class.

Overrides:
create in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.create()

appendMessages

public void appendMessages(javax.mail.Message[] msgs)
                    throws javax.mail.MessagingException

appendMessages - append only if shared folder writable

Overrides:
appendMessages in class OracleFolder
Tags copied from class: OracleFolder
Parameters:
msgs - Message objects to append into this folder
See Also:
Folder.appendMessages

open

public void open(int mode)
          throws javax.mail.MessagingException
Open -- Get folder information and then get all the messages in the folder... create light weight message objects.
Overrides:
open in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.open

expunge

public javax.mail.Message[] expunge()
                             throws javax.mail.MessagingException
Expunge permitted only if allowed i.e., shared folder is writable.
Overrides:
expunge in class OracleFolder
Tags copied from class: OracleFolder
See Also:
Folder.expunge()

renameTo

public boolean renameTo(javax.mail.Folder f)
                 throws javax.mail.MessagingException
Rename this folder; notify the RenameListeners
Overrides:
renameTo in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.renameTo

exists

public boolean exists()
               throws javax.mail.MessagingException
Check if this folder exists in the database
Overrides:
exists in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.exists

getMessage

public javax.mail.Message getMessage(int msgnum)
                              throws javax.mail.MessagingException
Get the message if FETCH aci is present.
Overrides:
getMessage in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.getMessage

fetch

public void fetch(javax.mail.Message[] msgs,
                  javax.mail.FetchProfile fp)
           throws javax.mail.MessagingException
Get the messages if FETCH aci is present.
Overrides:
fetch in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.fetch

search

public javax.mail.Message[] search(javax.mail.search.SearchTerm term)
                            throws javax.mail.MessagingException
Search on the messages is permitted only if SEARCH aci is present.
Overrides:
search in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.search

setFlags

public void setFlags(int[] msgnums,
                     javax.mail.Flags flag,
                     boolean value)
              throws javax.mail.MessagingException
Set flags only when SETSEENFLAG or SETALLFLAGS acis are present.
Overrides:
setFlags in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.setFlags

_setFlags

public void _setFlags(int[] msgnums,
                      int len,
                      javax.mail.Flags flag,
                      boolean value)
               throws javax.mail.MessagingException
Set flags only when SETSEENFLAG or SETALLFLAGS acis are present.

setFlags

public void setFlags(javax.mail.Message[] msgs,
                     javax.mail.Flags flag,
                     boolean value)
              throws javax.mail.MessagingException
Set flags only when SETSEENFLAG or SETALLFLAGS acis are present.
Overrides:
setFlags in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.setFlags

setFlags

public void setFlags(int start,
                     int end,
                     javax.mail.Flags flag,
                     boolean value)
              throws javax.mail.MessagingException
Set flags only when SETSEENFLAG or SETALLFLAGS acis are present.
Overrides:
setFlags in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.setFlags

copyMessages

public void copyMessages(javax.mail.Message[] msgs,
                         javax.mail.Folder folder)
                  throws javax.mail.MessagingException
Copy messages only when COPYFROM aci is present.
Overrides:
copyMessages in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.copyMessages

getParent

public javax.mail.Folder getParent()
                            throws javax.mail.MessagingException
Return the parent of this folder as an instance of OracleSharedFolder. If the parent is not shared, it has ONLY list privileges in order to list the full hirearchy.
Overrides:
getParent in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.getParent

isSubscribed

public boolean isSubscribed()
Check if the shared folder is subscribed.
Overrides:
isSubscribed in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.isSubscribed

setSubscribed

public void setSubscribed(boolean subscribe)
                   throws javax.mail.MessagingException
Check the shared folder to be subscribed.
Overrides:
setSubscribed in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.setSubscribed

listSubscribed

public javax.mail.Folder[] listSubscribed(java.lang.String pattern)
                                   throws javax.mail.MessagingException
List subtree of subscribed shared folders using *(recursive) or %(top level)
Overrides:
listSubscribed in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.listSubscribed

list

public javax.mail.Folder[] list(java.lang.String pattern)
                         throws javax.mail.MessagingException
List subtree of shared folders using *(recursive) or %(top level)
Overrides:
list in class OracleFolder
Tags copied from class: OracleFolder
See Also:
javax.mail.Folder.list

hasRead

public boolean hasRead()
Check if shared folder has read permissions.
Returns:
boolean true/false

hasWrite

public boolean hasWrite()
Check if shared folder has write permissions.
Returns:
boolean true/false

hasDigitPermission

public boolean hasDigitPermission(int aDigit)
                           throws javax.mail.MessagingException
Check if shared folder has digit permissions.
Parameters:
int - permission to check for
Returns:
boolean true/false

getNamespace

public java.lang.String getNamespace()
Retrieve shared namespace.
Returns:
String namespace

moveMessages

public void moveMessages(javax.mail.Message[] msgs,
                         javax.mail.Folder folder)
                  throws javax.mail.MessagingException

Checks for permissions and moves messages to/from shared folders. You must have read, delete and expunge permissions on the from shared folder. You must have insert permission on the to folder.

Overrides:
moveMessages in class OracleFolder

Oracle® Mail Java API Reference
10g Release 1 (10.1.1)

B14492-01

Copyright © 1988, 2005, Oracle. All rights reserved.