Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
1<?php
2/**
3 * Interface for encoding and decoding sync objects.
4 *
5 * @package automattic/jetpack-sync
6 */
7
8namespace Automattic\Jetpack\Sync;
9
10/**
11 * Very simple interface for encoding and decoding input.
12 * This is used to provide compression and serialization to messages.
13 **/
14interface Codec_Interface {
15    /**
16     * Retrieve the name of the codec.
17     * We send this with the payload so we can select the appropriate decoder at the other end.
18     *
19     * @access public
20     *
21     * @return string Name of the codec.
22     */
23    public function name();
24
25    /**
26     * Encode a sync object.
27     *
28     * @access public
29     *
30     * @param mixed $object Sync object to encode.
31     * @return string Encoded sync object.
32     */
33    public function encode( $object );
34
35    /**
36     * Encode a sync object.
37     *
38     * @access public
39     *
40     * @param string $input Encoded sync object to decode.
41     * @return mixed Decoded sync object.
42     */
43    public function decode( $input );
44}