phpDocumentor

CustomerJsonSerializer extends AbstractJsonSerializer
in package

Class CustomerJsonSerializer

This class will serialize and deserialize a customer entity. It can be used into many places where PHP interacts with external requests such as AJAX or API communication.

Tags
category

System

subpackage

Serializers

Table of Contents

$languageProvider  : LanguageProviderInterface
Used for the resources that require multiple languages.
__construct()  : mixed
AbstractJsonSerializer Constructor
deserialize()  : CustomerInterface
Deserialize customer JSON string.
jsonEncode()  : string
JSON Encode Wrapper
serialize()  : string|array<string|int, mixed>
Serialize customer object to json string.
_deserializeAddonValues()  : array<string|int, mixed>
Deserialize Addon Values
_deserializeLanguageSpecificProperty()  : mixed
Deserialize Language Specific Property
_serializeAddonValues()  : array<string|int, mixed>
Serialize Addon Values
_serializeLanguageSpecificProperty()  : array<string|int, mixed>
Serialize Language Specific Property

Properties

Methods

__construct()

AbstractJsonSerializer Constructor

public __construct() : mixed

If you override this constructor do not forget to call it from the child class.

Return values
mixed

deserialize()

Deserialize customer JSON string.

public deserialize(string $string[, object $baseObject = null ]) : CustomerInterface
Parameters
$string : string

JSON string that contains the data of the customer.

$baseObject : object = null

(optional) If provided, this will be the base object to be updated and no new instance will be created.

Tags
throws
InvalidArgumentException

If the argument is not a string or is empty.

Return values
CustomerInterface

Returns the deserialized Customer object.

jsonEncode()

JSON Encode Wrapper

public jsonEncode(array<string|int, mixed> $data) : string

This function provides PHP v5.3 compatibility and it should be used when serialized objects need to be encoded directly from the serializer instance.

Parameters
$data : array<string|int, mixed>

Contains the data to be JSON encoded.

Return values
string

Returns the encoded JSON string that represents the data.

serialize()

Serialize customer object to json string.

public serialize(CustomerInterface $object[, bool $encode = true ]) : string|array<string|int, mixed>

Important: Password value will not be included in the serialized object.

Parameters
$object : CustomerInterface

Contains the customer data.

$encode : bool = true

(optional) Whether to json_encode the result of the method (default true). Sometimes it might be required to encode an array of multiple customer records together and not one by one.

Tags
throws
InvalidArgumentException

If the provided object type is invalid.

Return values
string|array<string|int, mixed>

Returns the json encoded customer (string) or an array that can be easily encoded into a JSON string.

_deserializeAddonValues()

Deserialize Addon Values

protected _deserializeAddonValues( $json) : array<string|int, mixed>

Common method for deserializing addon values in various resource serializer classes.

Parameters
$json :
Return values
array<string|int, mixed>

_deserializeLanguageSpecificProperty()

Deserialize Language Specific Property

protected _deserializeLanguageSpecificProperty(mixed $object, stdobject $json, string $property[, mixed $type = 'StringType' ]) : mixed

This method will deserialize the value of a JSON property and set the value to the object by using the corresponding setter method.

Parameters
$object : mixed

The object being deserialized.

$json : stdobject

The JSON object containing the property value.

$property : string

The property name to be deserialized.

$type : mixed = 'StringType'
Tags
throws
RuntimeException

If the setter method does not exist.

Return values
mixed

_serializeAddonValues()

Serialize Addon Values

protected _serializeAddonValues(KeyValueCollection $addonValues) : array<string|int, mixed>

Common method for serializing addon values in various resource serializer classes.

Parameters
$addonValues : KeyValueCollection
Return values
array<string|int, mixed>

_serializeLanguageSpecificProperty()

Serialize Language Specific Property

protected _serializeLanguageSpecificProperty(mixed $object, string $property) : array<string|int, mixed>

In order for this method to work there has to be a proper getter method in the object instance. Otherwise a RuntimeException will be thrown.

Parameters
$object : mixed

The object instance containing the property.

$property : string

The property name to be serialized.

Tags
throws
RuntimeException

If there is no getter for the provided property.

Return values
array<string|int, mixed>

Search results