* 2012-09-19 - ldo@microdoc.de

 - Bug 23026 - "DoS" after password change (wrong IMAP password)
 
* 2012-09-03 - ldo@microdoc.de

 - Bug 22663 - report conflicts on resources as error when editing appointments
 
* 2012-08-20 - ldo@microdoc.de

 - Bug 21773 - update confirmation status on external participants
 
* 2012-08-13 - ldo@microdoc.de

 - Bug 22741 - Disable the ping request limit for all protocols except EAS
 
* 2012-08-07 - ldo@microdoc.de

 - Bug 22716 - DataObjects (in DataSets) are equal only if the uuids are equal
 
* 2012-07-16 - afe@microdoc.de

 - Bug 22485 - USM/JSON: Add missing attachments list to meeting_requests

* 2012-07-16 - afe@microdoc.de

 - Bug 22488 - USM/JSON: Correctly set attachments for new exceptions to appointment series that already have attachments
 
* 2012-07-05 - ldo@microdoc.de

 - Bug 22347 - References and In-Reply-To Headers should be set in mails sent via eas. 
 
* 2012-06-15 - ldo@microdoc.de

 - Bug 22000 - Call action=confrim for tasks if the field "users" has been modified by the client
 
* 2012-06-11 - ldo@microdoc.de

 - Bug 22209 - add field email address to resources
 
* 2012-06-11 - ldo@microdoc.de

 - Bug 21858 - reply from android gets duplicated quote intro line
 
* 2012-06-11 - ldo@microdoc.de

 - Bug 22140 - DOS-Shield is disabled, because of blocking clients with big folder hierarchy during normal work 
 
* 2012-06-05 - ldo@microdoc.de

 - Bug 22253 - NPE at MailAttachment.equals
 
* 2012-06-04 - ldo@microdoc.de

 - Bug 22013 - Lots of warnings: Duplicate property on server start
 
* 2012-05-31 - afe@microdoc.de

 - Bug 22122 - Added method to allow protocols to invalidate the USM cache for OX data, added multi-step update in JSON protocol for multiple updates in series and exceptions
 
* 2012-05-29 - ldo@microdoc.de

 - Bug 22081 - Error code IMAP-1016 can be returned from server when IMAP is temporary unreachable
 
* 2012-05-25 - afe@microdoc.de

 - Bug 22140 - Fixed problem in detecting old SyncKeys, adjusted default values for test and block intervals and number of requests required to block access

* 2012-05-24 - afe@microdoc.de

 - Bug 22164 - An unwanted side effect of the change for bug 21587 caused for some client creations to be repeatedly detected as server changes, which might cause endless synchronizations if too many of those creations occurred in 1 folder
 
* 2012-05-21 - afe@microdoc.de

 - Bug 22140 - Introduced new mechanism that detects clients that behave badly (too many unnecessary synchronizations) and temporarily refuses access to them (see config property com.openexchange.usm.json.access_check.test_interval for more information) 
 
* 2012-05-14 - afe@microdoc.de

 - Bug 21587 - Optimization to use same SyncKey can be deactivated (new server config property com.openexchange.usm.force_new_sync_key_on_empty_sync)
 
* 2012-05-11 - afe@microdoc.de

 - Bug 21587 - Optional extra protocol information was not checked when testing for changes to avoid unnecessary updates in USMDataStorage
 
* 2012-05-09 - afe@microdoc.de

 - Bug 21945 - Changed method to remove unused syncstates in DB to avoid large SQL statements
 
* 2012-05-08 - afe@microdoc.de

 - Bug 21587 - Fixed problem in test case, fixed problem if initial slow sync is performed on empty folder
 
* 2012-05-04 - afe@microdoc.de

 - Bug 21587 - Fixed problem in SyncState storage optimization, now all modified states will correctly trigger a new storage
 
* 2012-04-27 - ldo@microdoc.de

 - Bug 21587 - Do not increment the syncKey when no changes are reported/received
 
* 2012-04-18 - ldo@microdoc.de

 - Bug 20991 - Read server changes after client modification (move) on a folder and return them in the response to the move
 
* 2012-03-22 - ldo@microdoc.de

 - Bug 21587 - Make UPDATE in USMDataStorage instead of DELETE/INSERT if the folder state has not changed but only the sync key.  
 
* 2012-03-09 - ldo@microdoc.de

 - Bug 21514 - Endless sync after creating app in a shared folder which got invisible in meantime
 
* 2012-02-27 - afe@microdoc.de

 - Bug 20884, 21587 - Limit number of direct ping responses for modified folders (after 3 pings, folders will be marked synchronized even if no sync has been performed)
 
* 2012-02-23 - afe@microdoc.de

 - Bug 20462 - Added logging of bad folder hierarchies (at level WARNING) including session and cyclic folder IDs  
 
* 2012-02-22 - afe@microdoc.de

 - Bug 20462 - Fix for possible endless loop in sorting of folder hierarchy if folder hierarchy contains a loop (i.e. F1 has F2 as parent and F2 has F1 as parent) 
 
* 2012-02-10 - ldo@microdoc.de

 - Bug 20300 - External Invitations in EAS; Part I - implemented meeting requests (new meetings)
 
* 2012-01-27 - ldo@microdoc.de

 - Bug 20805 - Implement new fields 227 organizerId, 228 principal, 229 principalID  in USM.
 
* 2012-01-25 - ldo@microdoc.de

 - Bug 21351 - errorOnDuplicateName should not be active for EAS users

* 2012-01-13 - ldo@microdoc.de

 - Bug 20613 - Added parameter errorOnDuplicateName to GET /ajax/folders?action=list
 
* 2012-01-10 - ldo@microdoc.de

 - Bug 21147 - NPE when the IMAP server is stopped
 
* 2011-12-21 - ldo@microdoc.de

 - Bug 19123 - added field UID to tasks
 
* 2011-12-21 - ldo@microdoc.de

 - Bug 20872 - added new cache configuration for the UUID cache: USMUUIDCache
 
* 2011-12-16 - ldo@microdoc.de

 - Bug 19827 - added additional address fields
 
* 2011-12-15 - ldo@microdoc.de

 - Bug 20971 - [L3] Editing draft mails not possible after mail has been saved - ping/pong on color_label
 
* 2011-12-09 - ldo@microdoc.de

 - Retry requests to server up to 10 times if the server has returned an error from category: 4,5,6 or 11.
 
* 2011-12-06 - ldo@microdoc.de

 - Bug 20895 - enable inline forwarded messages from devices
 
* 2011-12-02 - ldo@microdoc.de

 - Bug 20519 - HTTP client of USM should not follow HTTP 302 redirect responses
 
* 2011-11-29 - ldo@microdoc.de

 - Bug 20696 - Special characters not recognized for password authentication - use iso-8859-1 for iOS
 
* 2011-11-25 - ldo@microdoc.de

 - Bug 20854 - "unparseable reply or missing field" 0x800d1000 error during sync of public contacts folder - text/html; charset="UTF-8" not recognized as valid header

* 2011-11-24 - ldo@microdoc.de

 - Poll the inbox in USM/JSON after a ping from client if the last saved sync state for the inbox is larger than a configured interval
 
* 2011-11-09 - ldo@microdoc.de

 - Bug #19715 - Add default email address to getConfiguration call (USM/JSON)
 
* 2011-11-08 - ldo@microdoc.de

 - Bug #20085 - High CPU-load caused by SlowContentSyncer when syncing contact folder
 
* 2011-11-03 - ldo@microdoc.de

 - Bug #20706 - USM should send custom HTTP headers to the OX server
 
* 2011-10-18 - afe@microdoc.de

 - Bug #18074 - Use HttpsURL when combining https URL with relative URL
 
* 2011-10-14 - ldo@microdoc.de

 - Bug #20320 - add meeting_request field to invitations from external mail servers
 
* 2011-10-05 - ldo@microdoc.de

 - Bug #20508 - NPE in OXJSONAccessImpl
 
* 2011-09-29 - ldo@microdoc.de

 - Bug #20392 - EAS Logins come with localhost IP address 
 
* 2011-09-22 - ldo@microdoc.de

 - Bug #20085 - Temporary fix : ignoring client data on slow sync

* 2011-09-15 - ldo@microdoc.de

 - Bug #20280 - Moving a subfolder tree of mailfolders with OLOX - added error code 13 when the folder does not exist on the server
 
* 2011-09-12 - ldo@microdoc.de

 - Added logging to investigate bug 20047
 - Added possibility to read leaf nodes in the OX user configuration
 
* 2011-08-29 - ldo@microdoc.de

 - Bug #20205 - Error code when creating folders with too long ids. Server folders with too long ids are removed from synchronization.
 
* 2011-08-26 - ldo@microdoc.de

 - Bug #20085 - High CPU-load caused by SlowContentSyncer when syncing contact folder 
 
* 2011-08-25 - ldo@microdoc.de

 - EAS: Bug #19946 - Mail subfolders not synced with Mail For Exchange 3.0 
 
* 2011-08-24 - ldo@microdoc.de

 - Bugfix #20164 - added unsorted array type
 
* 2011-08-12 - ldo@microdoc.de

 - Bugfix #20086 - Before calling a JSONResult.get<Type>()-Method, check first the JSONResult's Type.  
 
* 2011-08-05 - ldo@microdoc.de

 - Bugfix #20031 - USM does not interpret RemoteEvent with module EMAIL and folderId 1 correctly
 
* 2011-08-04 - ldo@microdoc.de

 - Code cleanup 
 
* 2011-07-29 - ldo@microdoc.de

 - Bugfix #19964 - Added logging of the OX Result where unexpected OX Result causes an error. 
 
* 2011-07-27 - afe@microdoc.de

 - Bugfix #19962 - Adjusted OX-Event-Listener code to correctly handle new CommonEvents with email folder IDs instead of DataObjects as folder references

* 2011-07-08 - afe@microdoc.de

 - Changed code to ensure UTF-8 for byte[]<->String conversions in test classes and logging of communication data

* 2011-07-05 - afe@microdoc.de

 - Bugfix #19689 - Fixed error reporting problem "Result from OX server is a String, expected String"

* 2011-06-20 - ldo@microdoc.de

 - Bugfix #19508 - [L3] NPE at com.openexchange.usm.datatypes.tasks.calendar.ParticipantIdentifier.equals(ParticipantIdentifier.java:155

* 2011-06-07 - ldo@microdoc.de

 - Bugfix #19427: email folder name collision not detected

* 2011-05-26 - afe@microdoc.de

 - Bugfix #18931 - OX-IDs were not correctly remapped when simultaneously moving multiple email folders combined with changes to those folders 

* 2011-05-26 - afe@microdoc.de

 - Added unique name "USM-OX-HttpConnectionCloser" to background thread that closes idle HTTP connections after their timeout has been reached 

* 2011-05-25 - afe@microdoc.de

 - Added PSF-files for use with SubVersive-plugin, added launch to start OX-server with USM

* 2011-05-16 - afe@microdoc.de

 - Bugfix 19025 (partial): Fixed possible race condition on OX session renewal for multiple concurrent client requests in 1 USM session

* 2011-05-16 - afe@microdoc.de

 - Expanded sync test cases to also test for correct propagation of custom protocol information between sync states

* 2011-05-10 - afe@microdoc.de

 - Code cleanup & reformatting

* 2011-05-06 - afe@microdoc.de

 - Optional behavior change for appointment deletions: delete->decline in private/public folder if participant and not organizer
 - Confirmations will now be changed for the owner of a folder (instead of always the session user)

* 2011-05-06 - afe@microdoc.de

 - Optimized code that checks if an OX folder is still available after an OX error is reported when reading the content of a folder

* 2011-05-05 - afe@microdoc.de

 - Bugfix #19144 - Limit "unlimited" sync (to start about 274000 BC) to avoid computation problem in OX for appointments and tasks

* 2011-05-02 - afe@microdoc.de

 - Bugfix #18597 - Added new fields "yomiFirstName", "yomiLastName", "yomiCompany" to Contacts ContentType

* 2011-04-26 - afe@microdoc.de

 - Bugfix #18923 - Adjusted access methods, added security checks to PIMAttachment(s) objects

* 2011-04-20 - afe@microdoc.de

 - Enhanced error output for OX responses that couldn't be parsed or were of an unexpected type, now the expected type is also reported/logged

* 2011-04-19 - afe@microdoc.de

 - Bugfix #18589 - Provide "folder" parameter when retrieving all occurrences of a series to determine the occurrences that should be deleted

* 2011-04-07 - tse@microdoc.de

 - Bugfix #18888 - Fixed a NullPointerException in JSONSessionInitializer which occurred when OSGi bundle com.openexchange.usm.contenttypes.mail_1.0.0 has been shut down

* 2011-02-28 - afe@microdoc.de

 - Bugfix #18422 - Modified folder content-type to throw FolderNotFoundException if a folder cannot be read in the OX server

* 2011-02-21 - afe@microdoc.de

 - Bugfix #18074 - Removed decoding of "image1_url" provided by the OX server when accessing URL to retrieve the contact image data

* 2011-02-11 - afe@microdoc.de

 - Bugfix #18322 - Added new API method to allow for customized sync states to be retained in sync mechanism (instead of the one provided to the sync mechanism)

* 2011-02-11 - afe@microdoc.de

 - Bugfix #18185 - Executing a sync of the folder hierarchy in a new session before syncing groups and resources removed sync states for those special "folders"

* 2011-02-10 - afe@microdoc.de

 - Added code to allow for more customized folder hierarchy retrieval

* 2011-02-08 - tse@microdoc.de

 - Bug #17355 - added code to the background cleanup task to check for the existence of table "USMSession" before operating on it

* 2011-02-02 - tse@microdoc.de

 - Bug #17225 - the folder owner information got lost when depositing objects in the USM cache; this resulted in unmodified UUIDs for elements in foreign shared folders

* 2011-01-20 - tse@microdoc.de

 - Bug #18001 - USM/JSON-call "setConfirmationStatus": parameterlist changed to sessionid, uid, confirmation, confirmmessage; tasks are no longer supported

* 2011-01-17 - tse@microdoc.de

 - Bugfix #17910 - When transforming a series into an appointment, the field "recurrence_type" will be sent to the OX server instead of the field "occurrences"

* 2011-01-14 - tse@microdoc.de

 - Bugfix #18001 - New USM/JSON-call "setConfirmationStatus" to confirm/decline appointments and tasks

* 2011-01-13 - afe@microdoc.de

 - Changed handling of failed folder deletions (will not be reported as temporary failure since the OX server also reports fatal errors in the same way)

* 2011-01-12 - afe@microdoc.de

 - Bugfix #17903 - element read rights will be checked before reading implicit server changes for creations, errors while reading implicit server changes will be ignored (logged at level debug)

* 2011-01-11 - afe@microdoc.de

 - Bugfix #16860 - Creations/changes of exceptions to series were executed without "ignore_conflicts" set, causing them to fail if they overlapped with another appointment

* 2011-01-10 - tse@microdoc.de

 - Bugfix #17940 - Fixed NullPointerException for unknown image formats

* 2011-01-10 - tse@microdoc.de

 - Bug #17916 - changed type of field "id" in ResourceContentType from Number to String

* 2010-12-16 - afe@microdoc.de

 - Bugfix - new caching system must remove cached server data if client operations are requested

* 2010-12-16 - afe@microdoc.de

 - Bugfix - new time frame filter for OLOX triggered bug: Unlimited number of mails in a limited time frame was not handled correctly (no mails were reported)

* 2010-12-14 - afe@microdoc.de

 - Enhancement - added caching system for OX server data for repeated syncs on same folder, added 2 server config properties to configure caching system

* 2010-11-30 - tse@microdoc.de

 - Bug #17603 - Improved logging of redirection URL

* 2010-11-19 - afe@microdoc.de

 - Bugfix #17592 - Consecutive EAS client creations could be accidentally detected as duplicate creations 

* 2010-11-16 - afe@microdoc.de

 - Bugfix #17534 - logout OX session if corresponding USM session is removed from memory

* 2010-11-16 - afe@microdoc.de

 - Bugfix #17355 - Added copies of old UpdateTasks in new UpdateTaskV2 format with correct dependencies, updated CreateUSMTablesService

* 2010-11-05 - afe@microdoc.de

 - Bugfix #17404 - Changed code to determine which occurrence to delete on client deletes

* 2010-11-03 - afe@microdoc.de

 - Bugfix #17217 - Adjusted PreferencesItemServices & USM, now uses "active" instead of "module" to check user access rights

* 2010-11-02 - afe@microdoc.de

 - Bugfix #16548 - recurrence_type: null value is treated as 0, 0 is default value
 
* 2010-11-02 - afe@microdoc.de

 - Bugfix #17401 - Added missing table "easUIDMapping" to background task implemented for enhancement #17127
 
* 2010-10-22 - afe@microdoc.de

 - Bugfix #17327 - Added workaround for special required handling of deletion of "alarm" value in appointments
 
* 2010-10-18 - afe@microdoc.de

 - Bugfix - Fix for bug #17150 introduced a possible NPE
 
* 2010-10-14 - afe@microdoc.de

 - Bugfix #17258 - Execute client deletes before creations, treat OX conflict reports on appointments no longer as temporary (reporting an error to the client instead of retrying the operation)
 
* 2010-10-14 - afe@microdoc.de

 - Bugfix #17243 - Ignore(automatically remove) RECENT-flag in flags field for emails
 
* 2010-10-13 - afe@microdoc.de

 - Updated modified UUID generation to only modify UUIDs for shared (type=shared) folders, leaving (common) original UUID intact for public folders
 
* 2010-10-12 - afe@microdoc.de

 - Bugfix #17131 - Use new method provided by OX CommonEvent to determine all affected folders of all users for events sent from OX 
 
* 2010-10-11 - afe@microdoc.de

 - Bugfix #17225 - Correctly store unmodified UUID for objects created in foreign folders
 
* 2010-10-07 - ldo@microdoc.de

 - Bugfix #17150 - use modified UUIDs (uuid xor ox user id) for objects in not own folders 
 
* 2010-10-01 - afe@microdoc.de

 - Enhancement #17127 - persistent session data is automatically removed after a configurable time (default: 60 days) of inactivity
 
* 2010-10-01 - ldo@microdoc.de

 - Bugfix #17047 - Confirmations for internal users should be made by using the confirm HTTP call
 
* 2010-09-29 - afe@microdoc.de

 - Bugfix #16839 - DB table structures used case-insensitive text columns, leading to problems with email folder IDs
 
* 2010-09-15 - ldo@microdoc.de

 - Bugfix #16864 - NPE in ContentSyncerSupport
 
* 2010-09-10 - ldo@microdoc.de

 - Bugfix #16842 - server response with error field and category 13 should not be treated as error
 
* 2010-09-06 - ldo@microdoc.de

 - Bugfix #16768 - duplicate attachment on creating change_exception from outlook
 
* 2010-08-26 - afe@microdoc.de

 - Disabled ContentTypeTransferHandler tests to avoid strange build problem in SLES10/IBM-JDK environment
 
* 2010-08-24 - afe@microdoc.de

 - Bugfix #16726 - Sorting enhancement used unsupported method in DataObjectSet
 
* 2010-08-24 - afe@microdoc.de

 - Adjustment due to bug #14948 - urldecode image url sent by OX server
 
* 2010-08-23 - ldo@microdoc.de

 - Added new USM-JSON call invalidateObjects
 
* 2010-08-23 - afe@microdoc.de

 - Added buddy class loading to USM session bundle to allow for deserialization of custom protocol classes

* 2010-08-23 - afe@microdoc.de

 - Added optional custom sorting of server changes (for use if not all changes should be reported at once)

* 2010-08-19 - afe@microdoc.de

 - Bugfix #15526 - Added buddy registration in UUIDMappingImpl for com.openexchange.caching

* 2010-08-19 - afe@microdoc.de

 - Workaround bug #16566 - Use different algorithm for determining request URL

* 2010-08-16 - afe@microdoc.de

 - Bugfix #16671 - Detect duplicate client creations based on provided client id

* 2010-08-13 - afe@microdoc.de

 - Added usm_syncml.properties file for configuration properties of the SyncML module

* 2010-08-12 - afe@microdoc.de

 - Test for Bug 16676 - Extended DataObjectFilter to also allow filtering of result, added filter for email sizes and no. of attachments on PIM objects

* 2010-08-12 - afe@microdoc.de

 - Bugfix - On reload of a bundle the old custom properties are from a different class loader and need to be reinitialized

* 2010-08-11 - afe@microdoc.de

 - Added new configuration parameter com.openexchange.usm.json.sync.max_limit for USM/JSON-protocol
 
* 2010-08-10 - afe@microdoc.de

 - Bugfix #14887 - Changed OX access code to follow redirects by hand instead of using now invalid HttpMethod option
 
* 2010-08-10 - afe@microdoc.de

 - Bugfix #16659 - Session in memory not invalidated after deleted in DB, leads to DB errors when writing to other tables
 
* 2010-07-27 - afe@microdoc.de

 - Bugfix #16551 - Client used UUID reserved for server generated UUIDs
 
* 2010-07-15 - ldo@microdoc.de

 - Bugfix #16489 - Interface must not send stack traces to any client.
 
* 2010-07-14 - ldo@microdoc.de

 - Bugfix #16487 - Appointment exceptions have new uuid on each change from outlook. Added methods for remapping ox id to new uuid.

* 2010-07-05 - afe@microdoc.de

 - Bugfix #16304 - Made old storeSyncState method available (deprecated) in case different bundle versions are in use

* 2010-07-02 - afe@microdoc.de

 - Bugfix #16304 - Enhanced storage mechanism to allow to make sure to keep last used sync state also for complex operations

* 2010-06-30 - ldo@microdoc.de

 - bugfix #16414 - "days" should not be set to default value 127 when not sent by server
 
* 2010-06-29 - afe@microdoc.de

 - Changed StringDataType so that null and "" are treated as equal (internally storing null for efficiency)

* 2010-06-28 - ldo@microdoc.de

 - Bugfix #16403 - error from server on creating attachments should be reported to client

* 2010-06-25 - afe@microdoc.de

 - Optimized matching of contacts, added more detailed weighting to fields
 
* 2010-06-24 - afe@microdoc.de

 - Added matching of contacts based on identical/similar fields for slow sync
 
* 2010-06-23 - ldo@microdoc.de

 - bugfix #16377 - upsynced Folder reported as "created" in Downsync

* 2010-06-22 - ldo@microdoc.de

 - when client creates appointment with existing uid, the creation should be transformed to modification, or the uid in the client object should be changed 
 
* 2010-06-21 - ldo@microdoc.de

 - Bugfix #16297 - when getting resources, return error to client when resource not reachable or the server returned error page
 
* 2010-06-21 - ldo@microdoc.de

 - Bugfix #13960 - get server default changes after client creation and report them as modification to the client

* 2010-06-17 - ldo@microdoc.de

 - Bugfix #16343 - HTML response from server should not be searched for json regex pattern.
 
* 2010-06-14 - afe@microdoc.de

 - Bugfix #16300 - Improve performance of syncs with many new objects
 
* 2010-06-10 - afe@microdoc.de

 - Optimized uuid cache further: instead of String a simplified UUID is used as a key (reducing the cache key data to 128 bit and avoiding String operations when generating the key)
 
* 2010-06-10 - afe@microdoc.de

 - Bugfix: error in deserialization prevented correct setting of UUID from cached data for old serialized states 
 
* 2010-06-08 - ldo@microdoc.de

 - 2 PimAttachments objects are equal if both have empty attachments list. 
 
* 2010-06-08 - ldo@microdoc.de

 - Bugfix #16274 - null should not be sent to the server for boolean data types
 
* 2010-06-02 - ldo@microdoc.de

 - Bugfix #16197 - attachments for client PIM Objects which still doesn't exist on server should not be read from server
 
* 2010-05-31 - ldo@microdoc.de

 - Bugfix #16225 - simple data type should use JSONObject.NULL instead of null 
 
* 2010-05-28 - afe@microdoc.de

 - Bugfix #16219 - birthdays are transferred as numbers
 
* 2010-05-28 - ldo@microdoc.de

 - Bugfix #13960 - get server defeult changes after client creation and report them as modification to the client
 
* 2010-05-27 - afe@microdoc.de

 - Reactivated folder access check before content is read 
 
* 2010-05-27 - afe@microdoc.de

 - Bug #16170 - Disabled added feature for bug #15965
 
* 2010-05-26 - ldo@microdoc.de

 - Bugfix #16195 - NPE on deleting PIM Attachments
 
* 2010-05-26 - ldo@microdoc.de

 - Bugfix #16192 - Users are read from the user interface instead of GAL
 
* 2010-05-25 - afe@microdoc.de

 - Disabled folder access check before content is read 
 
* 2010-05-25 - ldo@microdoc.de

 - Bugfix #16028 - When renaming/moving email folder the ids of its subfolders should also be changed 
 
* 2010-05-19 - afe@microdoc.de

 - Bugfix #16144 - ID field of "Groups" ContentType was not of data type String as expected by the USM
 - Bugfix #15965(10) - If properties of a folder are changed, the USM marks this folder as "needs to be synchronized" (which is normally done automatically since OX sends an event for that folder)
 - Bugfix #16131 - Use String instead of OXObjectID for cache keys to avoid deserialization problems for distributed caches

* 2010-05-18 - afe@microdoc.de

 - Bugfix #16142 - Folder read permissions are now checked before the folder content is read
 - Bugfix #16143 - If an exception is encapsulated in a JSONObject, that JSONObject is logged as a formatted String to provide a readable stacktrace
 - Added exception class name and exception message (if any) to errorDetails object
 
* 2010-05-18 - afe@microdoc.de

 - Bugfix - sorting of folders with null ids created NPE
 - Optimized sorting of folders
 
* 2010-05-12 - afe@microdoc.de

 - Bugfix - incomplete sync (more server updates available) caused folders to be marked as synchronized
 
* 2010-05-06 - afe@microdoc.de

 - Bugfix #15515 - EAS Client iPhone doesn't display iso-8859-1x encoded mail bodies correctly
 
* 2010-05-06 - ldo@microdoc.de

 - Bugfix #16052 - Exception on moving a mail folder - not able to update cache
 
* 2010-05-05 - afe@microdoc.de

 - Simplified configuration retrieval by adding convenience method to USM Session

* 2010-05-04 - afe@microdoc.de

 - Bugfix #16002 - faster discovery of changes in usm/eas access rights of an user

* 2010-05-03 - ldo@microdoc.de

 - Bugfix #15989 - Exception on reporting immediate server modification to a client creation

* 2010-04-27 - ldo@microdoc.de

 - Bugfix #15890 - created mail folders should have the same uuid on the same syncid and different http-sessionid
 
* 2010-04-22 - ldo@microdoc.de

 - Bugfix #15911 - "number_of_attachments" should not be sent to server because it is set automatically from server
 
* 2010-04-21 - ldo@microdoc.de

 - Distribution member list has display_name field instead of first_name and last_name

* 2010-04-13 - ldo@microdoc.de

 - Bugfix #15802 - parameter "force" used on saving emails in inbox
 
* 2010-03-25 - ldo@microdoc.de

 - Bugfix #15676 ConfirmindParticipant should overwrite equals
 
* 2010-03-24 - ldo@microdoc.de

 - Bugfix #15661 - On rename of email folders from Client the new ID of the folder should be saved in the DB  

* 2010-03-24 - ldo@microdoc.de

 - Bugfix #15560 mails marked as deleted as should be filtered out for the EAS protocol
 
* 2010-03-22 - ldo@microdoc.de

 - When the user has no read rights on a folder, the sync system should set this folder as empty
 
* 2010-03-19 - ldo@microdoc.de

 - Distribution List Member UUID from client should be mapped to OX-id 
 
* 2010-03-18 - ldo@microdoc.de

 - Distribution List Member should have a UUID 
 
* 2010-03-15 - ldo@microdoc.de

 - ContactDistributionMember doesn't always have user_id 
 
* 2010-03-02 - ldo@microdoc.de

 - UUIDs for Emails - do not send random UUIDs if the Email has already been synchronized  
 
* 2010-03-01 - ldo@microdoc.de

 - EAS Mail Attachments
 
* 2010-03-01 - afe@microdoc.de

 - Bugfix #15510: Fixed off-by-1 error in conversion of serialized data

* 2010-03-01 - ldo@microdoc.de

 - USM Preferences Item Service
 
* 2010-02-24 - ldo@microdoc.de

 - Index of Attachments field in Contacts should be calculated relatively to Image fields
 
* 2010-02-23 - ldo@microdoc.de

 - Added field "timezone" to Calendar
 
* 2010-02-23 - ldo@microdoc.de

 - Elements of Content Type Dummy Folders should not be removed from cache on syncUpdate on the Folder Hierarchy
 
* 2010-02-19 - ldo@microdoc.de

 - US4158: Use timezone=UTC parameter in all OX-Calls

* 2010-02-18 - ldo@microdoc.de

 - DataTypes for complex Objects should return a default value in case the JSON value is NULL

* 2010-02-17 - ldo@microdoc.de

 - For Unsupported Content Operations the error details should not contain a stacktrace
 
* 2010-02-17 - ldo@microdoc.de

 - Resources (read only) implementation

* 2010-02-17 - ldo@microdoc.de

 - allowed_modules parameter in all OX-folder-calls is created from the currently (in the current session) supported content types 

* 2010-02-15 - afe@microdoc.de

 - tree-parameter is no longer sent on OX-folder calls if the value is empty

* 2010-02-12 - afe@microdoc.de

 - Added new parameter allowed_modules to OX-folder-calls, disabled temporary OX-folder2-calls

* 2010-02-12 - ldo@microdoc.de

 - Groups and Resources (read only) implementation

* 2010-02-11 - ldo@microdoc.de

 - Added new fields to Appointments (uid, organizer, sequence, confirmations)
 
* 2010-02-10 - ldo@microdoc.de

 - Fixed problem in limiting the sync results which caused series to be sent without their exceptions and empty results when trying to send exceptions to unknown series
 
* 2010-02-10 - afe@microdoc.de

 - Fixed problem in TaskContentType compatibility code that prevented correct deserialization of all fields 
 
* 2010-02-09 - ldo@microdoc.de

 - PIM Attachments: removed the effect of false server modification on syncUpdate caused of wrong timestamp received on create and delete attachments 
 
* 2010-02-08 - ldo@microdoc.de

 - PIM Attachments: lastModifiedOfAttachments field available on server - made according changes
 
* 2010-02-04 - ldo@microdoc.de

 - Repeated folder creation calls with same syncId should be ignored
 
* 2010-02-02 - ldo@microdoc.de

 - PIMAttachments handling
 
* 2010-02-01 - afe@microdoc.de

 - Added check when reading which fields to synchronize from DB to avoid invalid fields due to changes in ContentTypes
 
* 2010-02-01 - afe@microdoc.de

 - Added parameters to OX login call to identify the USM, sub-protocol and session
 
* 2010-01-29 - afe@microdoc.de

 - Fixed problem in contact-image-generation
 
* 2010-01-29 - afe@microdoc.de

 - Removed invalid tasks field 'project_id', added code that allows deserialization of old SyncState data
 
* 2010-01-29 - ldo@microdoc.de

 - PIMAttachments handling
 
* 2010-01-28 - afe@microdoc.de

 - Made TransferHandlers more tolerable regarding numbers sent from OX: Now also Strings that can be parsed to doubles are allowed
 
* 2010-01-27 - afe@microdoc.de

 - Bugfix #15270: Fixed SQL constraint error that could occur if too many new session were created at once
 
* 2010-01-25 - ldo@microdoc.de

 - PIMAttachments handling
 
* 2010-01-19 - ldo@microdoc.de

 - Added methods for creating/retrieving/deleting PIM Attachments on the OX Server

* 2010-01-19 - afe@microdoc.de

 - Changed birthday field from date to number so that no conversion from/to user timezone for OX data is performed

* 2010-01-15 - afe@microdoc.de

 - Extended deserialization mechanism to allow migration from old serialized data to current format
 - Added objects for PIM attachment management and basic fields for future communication with OX server
 - Streamlined code for ContentTypes by implementing common abstract base classes for ContentTypes and their service wrappers
 
* 2010-01-15 - ldo@microdoc.de

 - ping properties renamed
 - JSONArray method usage removed because it is not available in the OX json implementation

* 2010-01-15 - ldo@microdoc.de

 - Unsupported folders should not be returned in the ping result as changed.
 
* 2010-01-14 - ldo@microdoc.de

 - Ping Command Implementation
 
* 2010-01-12 - ldo@microdoc.de

 - Bug #15142 - Previously created exception is reset when creating another exception on Nokia Devices

* 2009-12-18 - ldo@microdoc.de

 - Deleting contact images

* 2009-12-16 - afe@microdoc.de

 - Optimized some internal code

* 2009-12-15 - ldo@microdoc.de

 - Refactoring: changes as suggested from FindBugs

* 2010-01-11 - ldo@microdoc.de

 - Bug #15154 - New contacts are not synchronized to the server
 
* 2009-12-15 - afe@microdoc.de

 - Optimized internal class for NestedMail-property storage

* 2009-12-11 - ldo@microdoc.de

 - ConflictingChangeException should be thrown when OX returns error because of Edit Conflict
 
* 2009-12-10 - ldo@microdoc.de

 - Harddelete for Mails used in the USM_JSON
 - MoveItems should return Conflicting errors (as exception) in case of conflicts between client and server 
 
* 2009-12-09 - ldo@microdoc.de

 - Send all Appointment Exceptions (change and delete) always and in both directions (Client to Server and Server to Client)
 
* 2009-12-09 - afe@microdoc.de

 - Added new parameter ConflictResolution to sync-methods in Session API to optionally specify the ConflictResolution for a specific sync-call

* 2009-12-07 - ldo@microdoc.de

 - Move Items implementation

* 2009-12-04 - afe@microdoc.de

 - Modified OX-access code so that resource URLs with parameters will now be correctly handled (not URL-encoded again).

* 2009-12-04 - afe@microdoc.de

 - Extended DB access and JMX interface so that now operations can be performed on all OX contexts (if 0 is provided as context)

* 2009-12-04 - ldo@microdoc.de

 - Added new method to MailContentType to delete email permanently from Server

* 2009-12-02 - afe@microdoc.de

 - Extended Session API (getParentFolder(), new TimestampMismatchException), added constant for "no limit on reported server changes"
 - Changed behavior of Incremental- and SlowContentSyncer: An error during server updates no longer aborts the sync, but is stored and reported back in the SyncResult. The Sync is completed successfully even if errors during updates occurred

* 2009-12-01 - afe@microdoc.de

 - Added constant to Session API for no limit on SyncResult size
 - Added code to SlowContentSyncer and IncrementalContentSyncer to handle UUID matches and repeated creations from clients

* 2009-11-26 - ldo@microdoc.de

 - Retrieve the email as Structured JSON Object from server

* 2009-11-26 - ldo@microdoc.de

 - Configuration for the email fields which need to be synchronized 

* 2009-11-25 - afe@microdoc.de

 - Bugfix #14983: Added missing tables to CreateTableService
 
* 2009-11-25 - ldo@microdoc.de

 - Handling of Client mail creations as StructuredJSONMailObject
 
* 2009-11-25 - afe@microdoc.de

 - Added code to session management and SlowContentSyncer to detect uuid conflicts for slow syncs
 
* 2009-11-24 - afe@microdoc.de

 - UUID database storage activated
 
* 2009-11-24 - afe@microdoc.de

 - Add start_date only for full_time appointment series, never add delete_exceptions on updates
 
* 2009-11-23 - afe@microdoc.de

 - Added temporary workaround for Bug #14952 to avoid NPE in OX server code

* 2009-11-20 - ldo@microdoc.de

 - Comparator for Folder Hierarchy 
 
* 2009-11-20 - afe@microdoc.de

 - Removed unnecessary recurrence_id for appointment calls to the OX server 
 
* 2009-11-20 - ldo@microdoc.de

 - Exception from Series - creating, modifying and deleting from the JSON API 
 
* 2009-11-19 - afe@microdoc.de

 - Fixed problem in unnecessary field removal which caused too many fields to be removed for new exceptions
 
* 2009-11-18 - afe@microdoc.de

 - Added UpdateTask with version 93 that clears all cache tables
 
* 2009-11-18 - afe@microdoc.de

 - Removed unnecessary request body fields for updates on appointment series
 
* 2009-11-18 - afe@microdoc.de

 - Added new field 316 (standard_folder_type) to FolderContentType
 
* 2009-11-17 - afe@microdoc.de

 - Changed OXJSONAccessImpl: HTTP redirects for OX access (up to 10 levels) are followed, an INFO message is logged every 5 minutes as long as redirects are active
 
* 2009-11-17 - afe@microdoc.de

 - Removed package reference to com.openexchange.push in the EventListener
 
* 2009-11-16 - ibr@microdoc.de

 - Bugfix #14853: set explicitly the WBXML codepage (the namespace) in CategoriesOperationXmlType to avoid the exception by implicitly change of codepage with multiple possibilities
 
* 2009-11-16 - afe@microdoc.de

 - Changed Headers data type so that correct JSONArray of Strings is generated for headers with multiple values
 
* 2009-11-16 - afe@microdoc.de

 - Bugfix #14854: Modified OXEventListener so that delete events that do not use DataObjects do not cause ClassCastExceptions
 
* 2009-11-13 - afe@microdoc.de

 - Added getContextUUID() method to USM Session API
 
* 2009-11-13 - afe@microdoc.de

 - Added getContextUUID() method to USM Session API
 
* 2009-11-12 - ibr@microdoc.de

 - Change  NestedMail for filename field, from Map<ContentTypeField, Object> to Map<String, Object>
 
* 2009-11-12 - ibr@microdoc.de

 - Change the class Header for multiple headers from Map<String, String> to Map<String, String[]>, change tests
 
* 2009-11-12 - afe@microdoc.de

 - Modified deserialization error handling: Errors are caught at low level and bad sync states are reported as not available

* 2009-11-11 - ldo@microdoc.de

 - Bugfix #14644: Remove deprecated fields (links 591)

* 2009-11-10 - ibr@microdoc.de

 - Added field content_type to MailContentTypeImpl 

* 2009-11-10 - afe@microdoc.de

 - Added JMX interface for SessionManager that allows monitoring the active sessions and monitoring/changing configuration parameters and persistent session properties 

* 2009-11-10 - ldo@microdoc.de

 - Bugfix #14644: Remove deprecated fields (number_of_links  103; after_complete   304)

* 2009-11-10 - ldo@microdoc.de

 - Virtual folders - Folder.Tree persistent session field; tree parameter in all OX requests to the folder module
 
* 2009-11-05 - ldo@microdoc.de

 - Automated tests 

* 2009-11-05 - ldo@microdoc.de

 - Automated send email test

* 2009-11-05 - ldo@microdoc.de

 - Automated fetch test

* 2009-11-04 - ldo@microdoc.de

 - Automated delete test
 
* 2009-11-04 - afe@microdoc.de

 - Added projects for release-packages and automated test classes

* 2009-11-03 - ldo@microdoc.de

  - Delete objects from UUID mapping table on receiving delete event from the OX server

* 2009-11-03 - ibr@microdoc.de

  - Change by MailContentTypeTransferHandlerImpl: method getMailAttachment
  
* 2009-10-30 - ldo@microdoc.de

  - Added update task for the tables used in UUID management

* 2009-10-28 - afe@microdoc.de

 - Bugfix #14729: Modified USMOXDeleteListener so that no DeleteFailedException is thrown if USM tables do not exist

* 2009-10-23 - afe@microdoc.de

 - Added new Exception for deserialization errors to improve logged information in case DB inconsistency occurs

* 2009-10-19 - afe@microdoc.de

 - Added code to enable sync system to read in sync states from DB in old format (in case the UpdateTask was not executed) 

* 2009-10-16 - ldo@microdoc.de

 - Bugfix #14661: "days" should not be set for yearly appointment 

* 2009-10-13 - afe@microdoc.de

 - Added method to DataType to check for default value

* 2009-10-09 - afe@microdoc.de

 - Added UpdateTask that completely empties all USM cache tables (required for changed cache storage with UUIDs)

* 2009-10-08 - afe@microdoc.de

 - Modified UUID mapping and test to allow global UUIDs

* 2009-10-07 - afe@microdoc.de

 - Added methods to Session interface to allow UUID mapping, added simple test implementation for uuid mapping

* 2009-10-07 - afe@microdoc.de

 - Added new FolderNotFoundException that is thrown if a given folderid can not be mapped to an OX folder
 - Added findFolder method to Session
 - Changed limit to generate DB map entry for long folder ids to allow 20 character OX object IDs without extra mapping 

* 2009-10-06 - ldo@microdoc.de

 - Parameter view = "text" set when getting email as forward/reply

* 2009-10-05 - afe@microdoc.de

 - Split internal OX access API login method into login and getConfiguration 

* 2009-09-29 - afe@microdoc.de

 - Added Session API method that returns view of persistent fields

* 2009-09-28 - afe@microdoc.de

 - Bugfix #14598: Changed X-header USM version to match that of OX head

* 2009-09-28 - afe@microdoc.de

 - Bugfix #14589, #14575: Fixed hashCode()/equals() problem with ContentTypes on J9 JVMs

* 2009-09-25 - afe@microdoc.de

 - Bugfix #14573: Modified UpdateTask to correctly work with partially installed sequences

* 2009-09-23 - ibr@microdoc.de

 - USM JSON: folder hierarchy for test files 

* 2009-09-22 - ldo@microdoc.de

 - end synchronization on logout in USM JSON API - remove session from internal storage

* 2009-09-22 - ldo@microdoc.de

 - end synchronization on logout in USM JSON API

* 2009-09-22 - ibr@microdoc.de

 - USM JSON Test System Changes

* 2009-09-21 - ibr@microdoc.de

 - Test System  for USM-JSON API
  
* 2009-09-17 - ldo@microdoc.de

 - Error handling in the USM-JSON API

* 2009-09-18 - afe@microdoc.de

 - Enhancement: Added possibility to limit the number of mails in a folder for a sync
 - Bugfix: Fixed possible NPE for simultaneous client and server deletion

* 2009-09-16 - afe@microdoc.de

 - Bugfix #14522: Fixed typo in SQL query in USMDeleteListener, ensured correct usage of contextid

* 2009-09-10 - afe@microdoc.de

 - Added regularly updates of persistent data from DB in case an external change occurs

* 2009-09-08 - afe@microdoc.de

 - Merged USM- and EAS-ChangeLog into global ChangeLog

* 2009-09-07 - afe@microdoc.de

 - Bugfix #14459: minimized usage time of SQL connection by rearranging code, using read-only connections where possible

* 2009-09-02 - ldo@microdoc.de

 - "days" field should always be sent when updating series

* 2009-09-01 - afe@microdoc.de

 - Fixed typo in API method name

* 2009-08-28 - afe@microdoc.de

 - Added code to collect per-session statistics on how much time is spent in how many OX-calls

* 2009-08-28 - afe@microdoc.de

 - Modified the Session-API so that also empty custom SyncStates can be stored (but only syncStates for FolderContent)

* 2009-08-25 - ldo@microdoc.de

 - Bugfix #14371: Ending the series on iPhone when trying to make a change "for all future" occurrences

* 2009-08-25 - afe@microdoc.de

 - Changed access check code and default values to reflect new properties as discussed by mail

* 2009-08-20 - afe@microdoc.de

 - Added new Session API method to allow protocols to store custom sync states if synchronization can only be partially completed

* 2009-08-19 - ldo@microdoc.de

 - Bugfix #14275: Modification of series appointment structure is not synchronized - deletion of single appointments

* 2009-08-19 - afe@microdoc.de

 - Bugfix #14278: using all/list request combo for mail synchronization with timeframe instead of single large all request

* 2009-08-19 - ldo@microdoc.de

 - Bugfix #14275: Modification of series appointment structure is not synchronized

* 2009-08-18 - afe@microdoc.de

 - Moved configuration properties for EAS into a new properties file (eas.properties), added new file to build system
 - Changed stand-alone ConfigurationManager so that it reads in all files (*.properties) in the config folder,
   reporting warnings if a property is set multiple times

* 2009-08-18 - afe@microdoc.de

 - USM ChangeLog created
