* @copyright 2012 Microsoft Corporation * @license http://www.apache.org/licenses/LICENSE-2.0 Apache License 2.0 * @link https://github.com/windowsazure/azure-sdk-for-php */ namespace WindowsAzure\Common\Internal\Serialization; /** * The serialization interface. * * @category Microsoft * @package WindowsAzure\Common\Internal\Serialization * @author Azure PHP SDK * @copyright 2012 Microsoft Corporation * @license http://www.apache.org/licenses/LICENSE-2.0 Apache License 2.0 * @version Release: 0.4.1_2015-03 * @link https://github.com/windowsazure/azure-sdk-for-php */ interface ISerializer { /** * Serialize an object into a XML. * * @param Object $targetObject The target object to be serialized. * @param string $rootName The name of the root. * * @return string */ public static function objectSerialize($targetObject, $rootName); /** * Serializes given array. The array indices must be string to use them as * as element name. * * @param array $array The object to serialize represented in array. * @param array $properties The used properties in the serialization process. * * @return string */ public function serialize($array, $properties = null); /** * Unserializes given serialized string. * * @param string $serialized The serialized object in string representation. * * @return array */ public function unserialize($serialized); }