public class DavExchangeSession extends ExchangeSession
Modifier and Type | Class and Description |
---|---|
protected static class |
DavExchangeSession.AttributeCondition |
class |
DavExchangeSession.Contact |
class |
DavExchangeSession.Event |
protected static class |
DavExchangeSession.FolderQueryTraversal |
protected static class |
DavExchangeSession.HeaderCondition |
class |
DavExchangeSession.Message |
protected static class |
DavExchangeSession.MonoCondition |
protected static class |
DavExchangeSession.MultiCondition |
protected static class |
DavExchangeSession.NotCondition |
ExchangeSession.Condition, ExchangeSession.ContactPhoto, ExchangeSession.Folder, ExchangeSession.FreeBusy, ExchangeSession.Item, ExchangeSession.ItemResult, ExchangeSession.MessageList, ExchangeSession.Operator
Modifier and Type | Field and Description |
---|---|
protected static long |
BODY_ENCODING_TEXT_AND_HTML |
protected String |
calendarName |
protected String |
calendarUrl |
protected String |
contactsName |
protected String |
contactsUrl |
protected String |
deleteditemsName |
protected String |
deleteditemsUrl |
protected String |
draftsName |
protected String |
draftsUrl |
protected static long |
ENCODING_MIME |
protected static long |
ENCODING_PREFERENCE |
protected static Set<String> |
EVENT_REQUEST_PROPERTIES |
protected static org.apache.jackrabbit.webdav.property.DavPropertyNameSet |
EVENT_REQUEST_PROPERTIES_NAME_SET |
protected static Set<String> |
FOLDER_PROPERTIES |
protected static org.apache.jackrabbit.webdav.property.DavPropertyNameSet |
FOLDER_PROPERTIES_NAME_SET |
protected static Map<String,String> |
importanceToPriorityMap |
protected String |
inboxName |
protected String |
inboxUrl
Various standard mail boxes Urls
|
protected static Set<String> |
ITEM_PROPERTIES
Common item properties
|
protected String |
outboxName |
protected String |
outboxUrl |
protected static Map<String,String> |
priorityToImportanceMap |
protected boolean |
restoreHostName |
protected String |
sendmsgName |
protected String |
sendmsgUrl |
protected String |
sentitemsName |
protected String |
sentitemsUrl |
protected String |
tasksName |
protected String |
tasksUrl |
protected static String |
USERS |
protected static org.apache.jackrabbit.webdav.property.DavPropertyNameSet |
WELL_KNOWN_FOLDERS |
ADDRESSBOOK, alias, CALENDAR, CONTACT_ATTRIBUTES, CONTACTS, currentMailboxPath, DISTRIBUTION_LIST_ATTRIBUTES, DRAFTS, email, FREE_BUSY_INTERVAL, GMT_TIMEZONE, IMAP_MESSAGE_ATTRIBUTES, INBOX, JUNK, lastSentMessageId, LOGGER, LOWER_CASE_INBOX, MAILBOX_BASE, mailPath, MIXED_CASE_INBOX, POP_MESSAGE_ATTRIBUTES, PUBLIC_ROOT, publicFolderUrl, rootPath, SENDMSG, SENT, serverVersion, SPECIAL, TASKS, TRASH, UID_MESSAGE_ATTRIBUTES, UNSENT, userName, vTimezone, YYYY_MM_DD_HH_MM_SS, YYYY_MM_DD_T_HHMMSS_Z
Constructor and Description |
---|
DavExchangeSession(HttpClientAdapter httpClientAdapter,
URI uri,
String userName) |
Modifier and Type | Method and Description |
---|---|
ExchangeSession.MultiCondition |
and(ExchangeSession.Condition... condition)
And search filter.
|
protected DavExchangeSession.Contact |
buildContact(String folderPath,
String itemName,
Map<String,String> properties,
String etag,
String noneMatch) |
void |
buildEmail(String hostName)
Determine user email through various means.
|
protected ExchangeSession.Folder |
buildFolder(org.apache.jackrabbit.webdav.MultiStatusResponse entity) |
protected void |
buildGalfindContact(DavExchangeSession.Contact contact,
Map<String,String> response) |
protected void |
buildMailPath(URI uri) |
protected DavExchangeSession.Message |
buildMessage(org.apache.jackrabbit.webdav.MultiStatusResponse responseEntity) |
protected List<org.apache.jackrabbit.webdav.property.PropEntry> |
buildProperties(Map<String,String> properties) |
void |
buildSessionInfo(URI uri) |
protected void |
checkPublicFolder() |
void |
close()
Close session.
|
ExchangeSession.Condition |
contains(String attributeName,
String value)
Contains condition.
|
protected String |
convertDateFromExchange(String exchangeDateValue) |
protected String |
convertDateFromExchangeToTaskDate(String exchangeDateValue) |
protected String |
convertPriorityFromExchange(String exchangeImportanceValue) |
protected String |
convertPriorityToExchange(String vTodoPriorityValue) |
protected String |
convertTaskDateToZulu(String value) |
void |
copyMessage(ExchangeSession.Message message,
String targetFolder)
Copy message to target folder
|
protected void |
copyMessage(String sourceUrl,
String targetFolder) |
int |
createFolder(String folderPath,
String folderClass,
Map<String,String> properties)
Create Exchange folder with given folder class.
|
DavExchangeSession.Message |
createMessage(String folderPath,
String messageName,
HashMap<String,String> properties,
javax.mail.internet.MimeMessage mimeMessage)
Create message in specified folder.
|
void |
deleteFolder(String folderPath)
Delete Exchange folder.
|
void |
deleteItem(String folderPath,
String itemName)
Delete event named itemName in folder
|
void |
deleteMessage(ExchangeSession.Message message)
Delete Exchange message.
|
protected String |
encodeAndFixUrl(String url)
sometimes permanenturis inside items are wrong after an Exchange version migration
need to restore base uri to actual public Exchange uri
|
ExchangeSession.Condition |
exists(String attributeName)
Exists condition.
|
protected void |
fixClientHost(URI currentUri) |
String |
formatSearchDate(Date date)
Format date to exchange search format.
|
Map<String,ExchangeSession.Contact> |
galFind(ExchangeSession.Condition condition,
Set<String> returningAttributes,
int sizeLimit)
Search global address list
|
protected Map<String,Map<String,String>> |
galFind(String query) |
void |
galLookup(DavExchangeSession.Contact contact)
Get extended address book information for person with gallookup.
|
String |
getAliasFromMailboxDisplayName()
Get user alias from mailbox display name over Webdav.
|
protected byte[] |
getBinaryPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties,
String alias) |
protected ExchangeSession.Condition |
getCalendarItemCondition(ExchangeSession.Condition dateCondition) |
String |
getCmdBasePath()
Build base path for cmd commands (galfind, gallookup).
|
ExchangeSession.ContactPhoto |
getContactPhoto(ExchangeSession.Contact contact)
Retrieve contact photo attached to contact
|
protected byte[] |
getContent(ExchangeSession.Message message)
Get raw MIME message content
|
protected InputStream |
getContentInputStream(String url) |
protected double |
getDoublePropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties,
String alias) |
String |
getEmail(String alias)
Get user email from global address list (galfind).
|
protected void |
getEmailAndAliasFromOptions()
HttpClient4 conversion.
|
List<ExchangeSession.Event> |
getEventMessages(String folderPath)
Search calendar messages in provided folder.
|
protected String |
getFolderName(String url) |
String |
getFolderPath(String folderPath)
Convert logical or relative folder path to exchange folder path.
|
protected String |
getFreeBusyData(String attendee,
String start,
String end,
int interval)
Get freebusy data string from Exchange.
|
protected int |
getIntPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties,
String alias) |
ExchangeSession.Item |
getItem(String folderPath,
String itemName)
Get item named eventName in folder
|
protected Set<String> |
getItemProperties() |
protected String |
getItemProperty(String permanentUrl,
String propertyName) |
protected long |
getLongPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties,
String alias) |
protected String |
getMailboxPath()
Get current Exchange alias name from mailbox name
|
protected String |
getMailpathFromWelcomePage(URI uri)
Exchange 2003: get mailPath from welcome page
|
protected String |
getPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties,
String alias) |
List<ExchangeSession.Folder> |
getSubFolders(String folderPath,
ExchangeSession.Condition condition,
boolean recursive)
Search folders under given folder matching filter.
|
protected String |
getTimezoneIdFromExchange() |
protected String |
getTimezoneNameFromRoamingDictionary(byte[] roamingdictionary) |
protected String |
getURIPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties,
String alias) |
protected String |
getURLPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties,
String alias) |
protected void |
getWellKnownFolders() |
ExchangeSession.Condition |
gt(String attributeName,
String value)
Greater than condition.
|
ExchangeSession.Condition |
gte(String attributeName,
String value)
Greater than or equals condition.
|
ExchangeSession.Condition |
headerIsEqualTo(String headerName,
String value)
MIME header equals condition.
|
ExchangeSession.ItemResult |
internalCreateOrUpdateEvent(String folderPath,
String itemName,
String contentClass,
String icsBody,
String etag,
String noneMatch) |
protected ExchangeSession.Folder |
internalGetFolder(String folderPath) |
ExchangeSession.Condition |
isEqualTo(String attributeName,
int value)
Equals condition.
|
ExchangeSession.Condition |
isEqualTo(String attributeName,
String value)
Equals condition.
|
boolean |
isExpired()
Test if the session expired.
|
ExchangeSession.Condition |
isFalse(String attributeName)
Is false condition.
|
boolean |
isMainCalendar(String folderPath)
Test if folderPath is main calendar.
|
ExchangeSession.Condition |
isNull(String attributeName)
Is null condition.
|
boolean |
isSharedFolder(String folderPath)
Test if folderPath is inside user mailbox.
|
ExchangeSession.Condition |
isTrue(String attributeName)
Is true condition.
|
protected void |
loadVtimezone()
create a fake event to get VTIMEZONE body
|
ExchangeSession.Condition |
lt(String attributeName,
String value)
Lower than condition.
|
ExchangeSession.Condition |
lte(String attributeName,
String value)
Lower than or equals condition.
|
void |
moveFolder(String folderPath,
String targetPath)
Move folder to target name.
|
protected void |
moveItem(org.apache.jackrabbit.webdav.client.methods.HttpMove httpMove) |
void |
moveItem(String sourcePath,
String targetPath)
Move item from source path to target path.
|
void |
moveMessage(ExchangeSession.Message message,
String targetFolder)
Move message to target folder
|
protected void |
moveMessage(String sourceUrl,
String targetFolder) |
protected void |
moveToTrash(ExchangeSession.Message message) |
protected boolean |
needGalLookup(String searchAttributeName,
Set<String> returningAttributes) |
ExchangeSession.Condition |
not(ExchangeSession.Condition condition)
Not search filter.
|
ExchangeSession.MultiCondition |
or(ExchangeSession.Condition... condition)
Or search filter.
|
protected Date |
parseDateFromExchange(String exchangeDateValue) |
void |
processItem(String folderPath,
String itemName)
Mark event processed named eventName in folder
|
List<ExchangeSession.Contact> |
searchContacts(String folderPath,
Set<String> attributes,
ExchangeSession.Condition condition,
int maxCount)
Search contacts in provided folder matching the search query.
|
List<ExchangeSession.Event> |
searchEvents(String folderPath,
Set<String> attributes,
ExchangeSession.Condition condition)
Search calendar events or messages in provided folder matching the search query.
|
protected org.apache.jackrabbit.webdav.MultiStatusResponse[] |
searchItems(String folderPath,
Set<String> attributes,
ExchangeSession.Condition condition,
DavExchangeSession.FolderQueryTraversal folderQueryTraversal,
int maxCount) |
ExchangeSession.MessageList |
searchMessages(String folderPath,
Set<String> attributes,
ExchangeSession.Condition condition)
Search folder for messages matching conditions, with given attributes.
|
int |
sendEvent(String icsBody)
Build and send the MIME message for the provided ICS event.
|
void |
sendMessage(byte[] messageBody)
Send message.
|
void |
sendMessage(javax.mail.internet.MimeMessage mimeMessage)
Send Mime message.
|
ExchangeSession.Condition |
startsWith(String attributeName,
String value)
Starts with condition.
|
int |
updateFolder(String folderPath,
Map<String,String> properties)
Update Exchange folder properties.
|
void |
updateMessage(ExchangeSession.Message message,
Map<String,String> properties)
Update given properties on message.
|
convertBDayToZulu, convertContactProperties, convertFlagsToKeywords, convertFlagToKeyword, convertItemNameToEML, convertKeywordToFlag, convertResentHeader, convertZuluDateToBday, copyMessages, createCalendarFolder, createContactFolder, createMessageFolder, createOrUpdateContact, createOrUpdateItem, decodeKeyword, encodeKeyword, getADPhoto, getAlias, getAliasFromLogin, getAllContacts, getAllEvents, getAllMessageUidAndSize, getAllRecipients, getEmail, getExchangeDateFormat, getExchangeZuluDateFormat, getExchangeZuluDateFormatMillisecond, getFolder, getFreebusy, getPastDelayCondition, getRangeCondition, getServerVersion, getSubCalendarFolders, getSubFolders, getVcardBdayFormat, getVTimezone, getZuluDateFormat, moveMessages, parseDate, purgeOldestFolderMessages, purgeOldestTrashAndSentMessages, refreshFolder, replaceIcal4Principal, searchEvents, searchEvents, searchEventsOnly, searchMessages, searchMessages, searchTasksOnly, sendMessage
protected static final org.apache.jackrabbit.webdav.property.DavPropertyNameSet WELL_KNOWN_FOLDERS
protected String inboxUrl
protected String deleteditemsUrl
protected String sentitemsUrl
protected String sendmsgUrl
protected String draftsUrl
protected String calendarUrl
protected String tasksUrl
protected String contactsUrl
protected String outboxUrl
protected String inboxName
protected String deleteditemsName
protected String sentitemsName
protected String sendmsgName
protected String draftsName
protected String calendarName
protected String tasksName
protected String contactsName
protected String outboxName
protected static final String USERS
protected static final org.apache.jackrabbit.webdav.property.DavPropertyNameSet FOLDER_PROPERTIES_NAME_SET
protected static final org.apache.jackrabbit.webdav.property.DavPropertyNameSet EVENT_REQUEST_PROPERTIES_NAME_SET
protected static final long ENCODING_PREFERENCE
protected static final long ENCODING_MIME
protected static final long BODY_ENCODING_TEXT_AND_HTML
protected boolean restoreHostName
public DavExchangeSession(HttpClientAdapter httpClientAdapter, URI uri, String userName) throws IOException
IOException
protected void getEmailAndAliasFromOptions()
public boolean isExpired() throws NoRouteToHostException, UnknownHostException
ExchangeSession
isExpired
in class ExchangeSession
NoRouteToHostException
- on errorUnknownHostException
- on errorpublic String getFolderPath(String folderPath)
folderPath
- folder namepublic boolean isSharedFolder(String folderPath)
isSharedFolder
in class ExchangeSession
folderPath
- absolute folder pathpublic boolean isMainCalendar(String folderPath)
isMainCalendar
in class ExchangeSession
folderPath
- absolute folder pathpublic String getCmdBasePath()
protected Map<String,Map<String,String>> galFind(String query) throws IOException
IOException
public Map<String,ExchangeSession.Contact> galFind(ExchangeSession.Condition condition, Set<String> returningAttributes, int sizeLimit) throws IOException
ExchangeSession
galFind
in class ExchangeSession
condition
- search filterreturningAttributes
- returning attributessizeLimit
- size limitIOException
- on errorprotected boolean needGalLookup(String searchAttributeName, Set<String> returningAttributes)
public void galLookup(DavExchangeSession.Contact contact)
contact
- galfind contactprotected void buildGalfindContact(DavExchangeSession.Contact contact, Map<String,String> response)
protected String getFreeBusyData(String attendee, String start, String end, int interval) throws IOException
ExchangeSession
getFreeBusyData
in class ExchangeSession
attendee
- attendee email addressstart
- start date in Exchange zulu formatend
- end date in Exchange zulu formatinterval
- freebusy interval in minutesIOException
- on errorpublic void buildSessionInfo(URI uri) throws DavMailException
buildSessionInfo
in class ExchangeSession
DavMailException
protected String getMailpathFromWelcomePage(URI uri)
uri
- current uriprotected void buildMailPath(URI uri) throws DavMailAuthenticationException
DavMailAuthenticationException
public void buildEmail(String hostName)
hostName
- Exchange server host name for last failoverpublic String getAliasFromMailboxDisplayName()
protected String getMailboxPath()
public String getEmail(String alias)
alias
- user aliasprotected String getURIPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties, String alias) throws IOException
IOException
protected void fixClientHost(URI currentUri)
protected void checkPublicFolder()
protected void getWellKnownFolders() throws DavMailException
DavMailException
public ExchangeSession.MultiCondition and(ExchangeSession.Condition... condition)
ExchangeSession
and
in class ExchangeSession
condition
- search conditionspublic ExchangeSession.MultiCondition or(ExchangeSession.Condition... condition)
ExchangeSession
or
in class ExchangeSession
condition
- search conditionspublic ExchangeSession.Condition not(ExchangeSession.Condition condition)
ExchangeSession
not
in class ExchangeSession
condition
- search conditionpublic ExchangeSession.Condition isEqualTo(String attributeName, String value)
ExchangeSession
isEqualTo
in class ExchangeSession
attributeName
- logical Exchange attribute namevalue
- attribute valuepublic ExchangeSession.Condition isEqualTo(String attributeName, int value)
ExchangeSession
isEqualTo
in class ExchangeSession
attributeName
- logical Exchange attribute namevalue
- attribute valuepublic ExchangeSession.Condition headerIsEqualTo(String headerName, String value)
ExchangeSession
headerIsEqualTo
in class ExchangeSession
headerName
- MIME header namevalue
- attribute valuepublic ExchangeSession.Condition gte(String attributeName, String value)
ExchangeSession
gte
in class ExchangeSession
attributeName
- logical Exchange attribute namevalue
- attribute valuepublic ExchangeSession.Condition lte(String attributeName, String value)
ExchangeSession
lte
in class ExchangeSession
attributeName
- logical Exchange attribute namevalue
- attribute valuepublic ExchangeSession.Condition lt(String attributeName, String value)
ExchangeSession
lt
in class ExchangeSession
attributeName
- logical Exchange attribute namevalue
- attribute valuepublic ExchangeSession.Condition gt(String attributeName, String value)
ExchangeSession
gt
in class ExchangeSession
attributeName
- logical Exchange attribute namevalue
- attribute valuepublic ExchangeSession.Condition contains(String attributeName, String value)
ExchangeSession
contains
in class ExchangeSession
attributeName
- logical Exchange attribute namevalue
- attribute valuepublic ExchangeSession.Condition startsWith(String attributeName, String value)
ExchangeSession
startsWith
in class ExchangeSession
attributeName
- logical Exchange attribute namevalue
- attribute valuepublic ExchangeSession.Condition isNull(String attributeName)
ExchangeSession
isNull
in class ExchangeSession
attributeName
- logical Exchange attribute namepublic ExchangeSession.Condition exists(String attributeName)
ExchangeSession
exists
in class ExchangeSession
attributeName
- logical Exchange attribute namepublic ExchangeSession.Condition isTrue(String attributeName)
ExchangeSession
isTrue
in class ExchangeSession
attributeName
- logical Exchange attribute namepublic ExchangeSession.Condition isFalse(String attributeName)
ExchangeSession
isFalse
in class ExchangeSession
attributeName
- logical Exchange attribute nameprotected ExchangeSession.Folder buildFolder(org.apache.jackrabbit.webdav.MultiStatusResponse entity) throws IOException
IOException
protected ExchangeSession.Folder internalGetFolder(String folderPath) throws IOException
internalGetFolder
in class ExchangeSession
IOException
public List<ExchangeSession.Folder> getSubFolders(String folderPath, ExchangeSession.Condition condition, boolean recursive) throws IOException
ExchangeSession
getSubFolders
in class ExchangeSession
folderPath
- Exchange folder namecondition
- search filterrecursive
- deep search if trueIOException
- on errorpublic int createFolder(String folderPath, String folderClass, Map<String,String> properties) throws IOException
ExchangeSession
createFolder
in class ExchangeSession
folderPath
- logical folder namefolderClass
- folder classproperties
- folder propertiesIOException
- on errorpublic int updateFolder(String folderPath, Map<String,String> properties) throws IOException
ExchangeSession
updateFolder
in class ExchangeSession
folderPath
- logical folder nameproperties
- folder propertiesIOException
- on errorpublic void deleteFolder(String folderPath) throws IOException
ExchangeSession
deleteFolder
in class ExchangeSession
folderPath
- logical folder nameIOException
- on errorpublic void moveFolder(String folderPath, String targetPath) throws IOException
ExchangeSession
moveFolder
in class ExchangeSession
folderPath
- current folder name/pathtargetPath
- target folder name/pathIOException
- on errorpublic void moveItem(String sourcePath, String targetPath) throws IOException
ExchangeSession
moveItem
in class ExchangeSession
sourcePath
- item source pathtargetPath
- item target pathIOException
- on errorprotected void moveItem(org.apache.jackrabbit.webdav.client.methods.HttpMove httpMove) throws IOException
IOException
protected String getPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties, String alias)
protected String getURLPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties, String alias) throws IOException
IOException
protected int getIntPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties, String alias)
protected long getLongPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties, String alias)
protected double getDoublePropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties, String alias)
protected byte[] getBinaryPropertyIfExists(org.apache.jackrabbit.webdav.property.DavPropertySet properties, String alias)
protected DavExchangeSession.Message buildMessage(org.apache.jackrabbit.webdav.MultiStatusResponse responseEntity) throws IOException
IOException
public ExchangeSession.MessageList searchMessages(String folderPath, Set<String> attributes, ExchangeSession.Condition condition) throws IOException
ExchangeSession
searchMessages
in class ExchangeSession
folderPath
- Exchange folder nameattributes
- requested Webdav attributescondition
- search filterIOException
- on errorpublic List<ExchangeSession.Contact> searchContacts(String folderPath, Set<String> attributes, ExchangeSession.Condition condition, int maxCount) throws IOException
ExchangeSession
searchContacts
in class ExchangeSession
folderPath
- Exchange folder pathattributes
- requested attributescondition
- Exchange search querymaxCount
- maximum item countIOException
- on errorprotected Set<String> getItemProperties()
getItemProperties
in class ExchangeSession
public List<ExchangeSession.Event> getEventMessages(String folderPath) throws IOException
ExchangeSession
getEventMessages
in class ExchangeSession
folderPath
- Exchange folder pathIOException
- on errorpublic List<ExchangeSession.Event> searchEvents(String folderPath, Set<String> attributes, ExchangeSession.Condition condition) throws IOException
ExchangeSession
searchEvents
in class ExchangeSession
folderPath
- Exchange folder pathattributes
- requested attributescondition
- Exchange search queryIOException
- on errorprotected ExchangeSession.Condition getCalendarItemCondition(ExchangeSession.Condition dateCondition)
getCalendarItemCondition
in class ExchangeSession
protected org.apache.jackrabbit.webdav.MultiStatusResponse[] searchItems(String folderPath, Set<String> attributes, ExchangeSession.Condition condition, DavExchangeSession.FolderQueryTraversal folderQueryTraversal, int maxCount) throws IOException
IOException
public ExchangeSession.Item getItem(String folderPath, String itemName) throws IOException
ExchangeSession
getItem
in class ExchangeSession
folderPath
- Exchange folder pathitemName
- event nameIOException
- on errorpublic ExchangeSession.ContactPhoto getContactPhoto(ExchangeSession.Contact contact) throws IOException
ExchangeSession
getContactPhoto
in class ExchangeSession
contact
- address book contactIOException
- on errorpublic int sendEvent(String icsBody) throws IOException
ExchangeSession
sendEvent
in class ExchangeSession
icsBody
- event in iCalendar formatIOException
- on errorpublic void deleteItem(String folderPath, String itemName) throws IOException
ExchangeSession
deleteItem
in class ExchangeSession
folderPath
- Exchange folder pathitemName
- item nameIOException
- on errorpublic void processItem(String folderPath, String itemName) throws IOException
ExchangeSession
processItem
in class ExchangeSession
folderPath
- Exchange folder pathitemName
- item nameIOException
- on errorpublic ExchangeSession.ItemResult internalCreateOrUpdateEvent(String folderPath, String itemName, String contentClass, String icsBody, String etag, String noneMatch) throws IOException
internalCreateOrUpdateEvent
in class ExchangeSession
IOException
protected void loadVtimezone()
loadVtimezone
in class ExchangeSession
protected String getTimezoneIdFromExchange()
protected String getTimezoneNameFromRoamingDictionary(byte[] roamingdictionary)
protected DavExchangeSession.Contact buildContact(String folderPath, String itemName, Map<String,String> properties, String etag, String noneMatch)
buildContact
in class ExchangeSession
protected List<org.apache.jackrabbit.webdav.property.PropEntry> buildProperties(Map<String,String> properties)
public DavExchangeSession.Message createMessage(String folderPath, String messageName, HashMap<String,String> properties, javax.mail.internet.MimeMessage mimeMessage) throws IOException
createMessage
in class ExchangeSession
folderPath
- Exchange folder pathmessageName
- message nameproperties
- message properties (flags)mimeMessage
- MIME messageIOException
- when unable to create messagepublic void updateMessage(ExchangeSession.Message message, Map<String,String> properties) throws IOException
ExchangeSession
updateMessage
in class ExchangeSession
message
- Exchange messageproperties
- Webdav properties mapIOException
- on errorpublic void deleteMessage(ExchangeSession.Message message) throws IOException
ExchangeSession
deleteMessage
in class ExchangeSession
message
- Exchange messageIOException
- on errorpublic void sendMessage(byte[] messageBody) throws IOException
messageBody
- MIME message bodyIOException
- on errorpublic void sendMessage(javax.mail.internet.MimeMessage mimeMessage) throws IOException
ExchangeSession
sendMessage
in class ExchangeSession
mimeMessage
- MIME messageIOException
- on errorprotected byte[] getContent(ExchangeSession.Message message) throws IOException
ExchangeSession
getContent
in class ExchangeSession
message
- Exchange messageIOException
- on errorprotected String encodeAndFixUrl(String url) throws IOException
url
- input uriIOException
- on errorprotected InputStream getContentInputStream(String url) throws IOException
IOException
public void moveMessage(ExchangeSession.Message message, String targetFolder) throws IOException
ExchangeSession
moveMessage
in class ExchangeSession
message
- Exchange messagetargetFolder
- target folderIOException
- on errorprotected void moveMessage(String sourceUrl, String targetFolder) throws IOException
IOException
public void copyMessage(ExchangeSession.Message message, String targetFolder) throws IOException
ExchangeSession
copyMessage
in class ExchangeSession
message
- Exchange messagetargetFolder
- target folderIOException
- on errorprotected void copyMessage(String sourceUrl, String targetFolder) throws IOException
IOException
protected void moveToTrash(ExchangeSession.Message message) throws IOException
moveToTrash
in class ExchangeSession
IOException
protected String getItemProperty(String permanentUrl, String propertyName) throws IOException, org.apache.jackrabbit.webdav.DavException
IOException
org.apache.jackrabbit.webdav.DavException
protected String convertDateFromExchange(String exchangeDateValue) throws DavMailException
DavMailException
protected String convertPriorityFromExchange(String exchangeImportanceValue)
public void close()
ExchangeSession
close
in class ExchangeSession
public String formatSearchDate(Date date)
formatSearchDate
in class ExchangeSession
date
- date objectprotected String convertDateFromExchangeToTaskDate(String exchangeDateValue) throws DavMailException
DavMailException
protected Date parseDateFromExchange(String exchangeDateValue) throws DavMailException
DavMailException
Copyright © 2001–2024 MickaĆ«l Guessant. All rights reserved.