Oracle Email Java API Reference
Release 2(9.0.4)

B10724-01

oracle.mail.sdk.esmail
Class OracleSharedFolder

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.

Version:
1.0, 2001/05/14

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

 

Method Summary
 void appendMessages(javax.mail.Message[] msgs)
           appendMessages - append only if shared folder writable
 void copyMessages(javax.mail.Message[] msgs, oracle.mail.sdk.esmail.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, oracle.mail.sdk.esmail.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.
 oracle.mail.sdk.esmail.Folder getParent()
          Return the parent of this folder as an instance of OracleSharedFolder.
 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.
 oracle.mail.sdk.esmail.Folder[] list(java.lang.String pattern)
          List subtree of shared folders using *(recursive) or %(top level)
 oracle.mail.sdk.esmail.Folder[] listSubscribed(java.lang.String pattern)
          List subtree of subscribed shared folders using *(recursive) or %(top level)
 void moveMessages(javax.mail.Message[] msgs, oracle.mail.sdk.esmail.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(oracle.mail.sdk.esmail.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, oracle.mail.sdk.esmail.Flags flag, boolean value)
          Set flags only when SETSEENFLAG or SETALLFLAGS acis are present.
 void setFlags(int start, int end, oracle.mail.sdk.esmail.Flags flag, boolean value)
          Set flags only when SETSEENFLAG or SETALLFLAGS acis are present.
 void setFlags(javax.mail.Message[] msgs, oracle.mail.sdk.esmail.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
addACI, addACI, addACI, addACI, appendMessages, close, getFilteredHeaders, getFolder, getFolderId, getFolderSize, getFullName, getFullPath, getGranteeACI, getMessageByType, getMessageByUID, getMessageCount, getMessagesByUID, getMessagesByUID, getName, getNewMessageCount, getPermanentFlags, getSeparator, getType, getUID, getUIDValidity, getUnreadMessageCount, getURLName, hasNewMessages, isOpen, isShared, modifyACI, modifyACI, removeACI, removeACI, search, sortMessages

 

Method Detail

delete

public boolean delete(boolean recurse)
               throws oracle.mail.sdk.esmail.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 oracle.mail.sdk.esmail.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 oracle.mail.sdk.esmail.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 oracle.mail.sdk.esmail.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 oracle.mail.sdk.esmail.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(oracle.mail.sdk.esmail.Folder f)
                 throws oracle.mail.sdk.esmail.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 oracle.mail.sdk.esmail.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 oracle.mail.sdk.esmail.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,
                  oracle.mail.sdk.esmail.FetchProfile fp)
           throws oracle.mail.sdk.esmail.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 oracle.mail.sdk.esmail.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,
                     oracle.mail.sdk.esmail.Flags flag,
                     boolean value)
              throws oracle.mail.sdk.esmail.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(javax.mail.Message[] msgs,
                     oracle.mail.sdk.esmail.Flags flag,
                     boolean value)
              throws oracle.mail.sdk.esmail.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,
                     oracle.mail.sdk.esmail.Flags flag,
                     boolean value)
              throws oracle.mail.sdk.esmail.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,
                         oracle.mail.sdk.esmail.Folder folder)
                  throws oracle.mail.sdk.esmail.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 oracle.mail.sdk.esmail.Folder getParent()
                                        throws oracle.mail.sdk.esmail.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 oracle.mail.sdk.esmail.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 oracle.mail.sdk.esmail.Folder[] listSubscribed(java.lang.String pattern)
                                               throws oracle.mail.sdk.esmail.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 oracle.mail.sdk.esmail.Folder[] list(java.lang.String pattern)
                                     throws oracle.mail.sdk.esmail.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

getNamespace

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

moveMessages

public void moveMessages(javax.mail.Message[] msgs,
                         oracle.mail.sdk.esmail.Folder folder)
                  throws oracle.mail.sdk.esmail.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 Email Java API Reference
Release 2(9.0.4)

B10724-01

Copyright © 1988, 2003 Oracle Corporation. All Rights Reserved.