protected static function serializeDocument(SerializableInterface $document, $embedded = false)
{
$array = $document->recordSerialize();
$segments = [];
foreach ($array['oData'] as $key => $value) {
$segments[] = $key . ':' . self::serialize($value, true);
}
$assembled = implode(',', $segments);
if (isset($array['oClass'])) {
$assembled = $array['oClass'] . '@' . $assembled;
}
if ($embedded) {
return '(' . $assembled . ')';
} else {
return $assembled;
}
}