Z-Push 2 branch

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@410 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- initial copy from trunk

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@411 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- initial copy from trunk

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@412 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- initial copy from trunk

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@413 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- initial copy from trunk

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@415 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- initial copy from trunk

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@519 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- initial refactoring of Zarafa backend v.2

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@522 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- implemented advanced debugging (levels, logfiles per user possible) (Mantis #162)

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@523 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
Heavy refactoring:
- basic php5 definitions
- reviewed spread includes
- reviewed "start" log entry
- reviewed debug operations
- implemented IBackend, IImportChanges and IExportChanges interfaces
- implemented generic backend
- implemented __toString for StreamerSyncObjects
- restructured provisioning class (still TODOs)
- unified ImportHierarchyChanges and ImportContentChanges into ImportChanges
- unified ImportChangesMem which implements IImportChanges
- unified ImportContentsChangesStream which implements IImportChanges
- unified ImportFolderChange() footprints
- fixed log issue when error happens calling the php wrapper
- refactored getTruncSize() into utils
- refactored getCutOffDate() into utils

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@532 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- fixed: suppress messages at imap_open()

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@535 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- added: recurring tasks support (Mantis #125)

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@539 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- changed: task recurrence handling

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@544 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
-fixed: use new ImportChangesMem in HandleGetItemEstimate()

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@545 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
-fixed: added default $parent value to the ImportFolderDeletion function of IImportChanges interface and classes which implement it

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@546 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- merged trunk into z-push-2 -c 549 (moving messages in CombinedBackend)
- changed: access type of some functions in CombinedBackend (from private to public)

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@550 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
Epic commit:
- implemented: static ZPush class with basic checks and functionalities
- implemented: IStateMachine and ISearchProvider interfaces
- implemented: HierarchyChache and ChangesMemoryWrapper (ex MemImporter)
- implemented: ASDevice and DeviceManager classes
- implemented: make use of SUPPORTED fields
- added: SendMail "save to SentFolder" support
- added: Utils class (refactored some static methods to it)
- added: introduced Exceptions
- added: ZLog class for debugging, refactored debugging
- added: linking of states to the device and automatic removel of expired states
- added: hierarchy streaming to StreamImporter
- added: SyncObject class between Streamer and Sync* with equals and emptySupported fields
- changed: refactored Index
- changed: refactored Request
- changed: refactored statemachine into FileStateMachine
- changed: IExporter Config() splitted
- changed: file location of main files now /lib
- changed: moved IcalTimezoneFix into Utils
- removed: compat.php (Z-Push depends on PHP 5.1)
- removed: Provisioning and ZProvisioning - functionality is in ASDevice and DeviceManager

Note: CombinedBackend is currently not functional

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@555 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- fixed: filestatemachine could throw StateInvalidException

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@556 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- fix: only show user in logging if the user is set

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@557 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- fixed: only initialize ASDevice and load its data if a DeviceID is available

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@558 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
- added missing namespaces and code pages

git-svn-id: http://svn.berlios.de/svnroot/repos/z-push/trunk/src@559 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5