phpDocumentor

CountryJsonSerializer extends AbstractJsonSerializer
in package

Class CountryJsonSerializer

This class will serialize and deserialize a country 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()  : CustomerCountryInterface
Deserialize country JSON string.
jsonEncode()  : string
JSON Encode Wrapper
serialize()  : string|array<string|int, mixed>
Serialize country 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 country JSON string.

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

NOTICE #1: The CountryService does not support the addition of new countries so the CustomerCountry object does not have any setters, rather only getters. So the $baseObject parameter is not used at all.OrderStatus

NOTICE #2: The provided JSON string must contain all the properties of the country otherwise the object will not be deserialized.

Parameters
$string : string

JSON string that contains the data of the country.

$baseObject : object = null

(optional) It is not used within the countries context.

Tags
throws
InvalidArgumentException

If the argument is not a string or is empty.

Return values
CustomerCountryInterface

Returns the deserialized CustomerCountry 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 country object to json string.

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

Contains the country 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 country 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 country (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