Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 4
CRAP
0.00% covered (danger)
0.00%
0 / 1
Data_Sync_Option
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 4
30
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 get
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
6
 set
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 delete
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace Automattic\Jetpack\WP_JS_Data_Sync;
4
5use Automattic\Jetpack\WP_JS_Data_Sync\Contracts\Entry_Can_Delete;
6use Automattic\Jetpack\WP_JS_Data_Sync\Contracts\Entry_Can_Get;
7use Automattic\Jetpack\WP_JS_Data_Sync\Contracts\Entry_Can_Set;
8
9final class Data_Sync_Option implements Entry_Can_Get, Entry_Can_Set, Entry_Can_Delete {
10
11    private $option_key;
12
13    public function __construct( $option_key ) {
14        $this->option_key = $option_key;
15    }
16
17    public function get( $fallback_value = false ) {
18        // WordPress looks at argument count to figure out if a fallback value was used.
19        // Only provide the fallback value if it's not the default ( false ).
20        if ( $fallback_value !== false ) {
21            return get_option( $this->option_key, $fallback_value );
22        }
23        return get_option( $this->option_key );
24    }
25
26    public function set( $value ) {
27        update_option( $this->option_key, $value, false );
28    }
29
30    public function delete() {
31        delete_option( $this->option_key );
32    }
33}