Changeset View
Changeset View
Standalone View
Standalone View
lib/kolab_sync_backend_state.php
Show First 20 Lines • Show All 66 Lines • ▼ Show 20 Lines | class kolab_sync_backend_state extends kolab_sync_backend_common implements Syncroton_Backend_ISyncState | ||||
/** | /** | ||||
* @see kolab_sync_backend_common::object_to_array() | * @see kolab_sync_backend_common::object_to_array() | ||||
*/ | */ | ||||
protected function object_to_array($object) | protected function object_to_array($object) | ||||
{ | { | ||||
$data = parent::object_to_array($object); | $data = parent::object_to_array($object); | ||||
if (is_array($object->pendingdata)) { | if (is_array($object->pendingdata)) { | ||||
$data['pendingdata'] = json_encode($object->pendingdata); | $data['pendingdata'] = gzdeflate(json_encode($object->pendingdata)); | ||||
} | } | ||||
return $data; | return $data; | ||||
} | } | ||||
/** | /** | ||||
* @see kolab_sync_backend_common::get_object() | * @see kolab_sync_backend_common::get_object() | ||||
*/ | */ | ||||
protected function get_object($data) | protected function get_object($data) | ||||
{ | { | ||||
$object = parent::get_object($data); | $object = parent::get_object($data); | ||||
if ($object->pendingdata) { | if ($object->pendingdata) { | ||||
$object->pendingdata = json_decode($object->pendingdata, true); | $inflated = gzinflate($object->pendingdata); | ||||
// Inflation may fail for backward compatiblity | |||||
$data = $inflated ? $inflated : $object->pendingdata; | |||||
$object->pendingdata = json_decode($data, true); | |||||
} | } | ||||
return $object; | return $object; | ||||
} | } | ||||
/** | /** | ||||
* Returns the latest sync state | * Returns the latest sync state | ||||
* | * | ||||
▲ Show 20 Lines • Show All 107 Lines • Show Last 20 Lines |