Code Duplication    Length = 81-81 lines in 2 locations

src/Payment/LuckyMoney/LuckyMoney.php 1 location

@@ 28-108 (lines=81) @@
25
/**
26
 * Class LuckyMoney.
27
 */
28
class LuckyMoney
29
{
30
    /**
31
     * @var API
32
     */
33
    protected $api;
34
35
    /**
36
     * Merchant instance.
37
     *
38
     * @var \EasyWeChat\Payment\Merchant
39
     */
40
    protected $merchant;
41
42
    /**
43
     * Constructor.
44
     *
45
     * @param Merchant $merchant
46
     */
47
    public function __construct(Merchant $merchant)
48
    {
49
        $this->merchant = $merchant;
50
    }
51
52
    /**
53
     * Merchant setter.
54
     *
55
     * @param Merchant $merchant
56
     */
57
    public function setMerchant(Merchant $merchant)
58
    {
59
        $this->merchant = $merchant;
60
    }
61
62
    /**
63
     * Merchant getter.
64
     *
65
     * @return Merchant
66
     */
67
    public function getMerchant()
68
    {
69
        return $this->merchant;
70
    }
71
72
    /**
73
     * API setter.
74
     *
75
     * @param API $api
76
     */
77
    public function setAPI(API $api)
78
    {
79
        $this->api = $api;
80
    }
81
82
    /**
83
     * Return API instance.
84
     *
85
     * @return API
86
     */
87
    public function getAPI()
88
    {
89
        return $this->api ?: $this->api = new API($this->getMerchant());
90
    }
91
92
    /**
93
     * Magic call.
94
     *
95
     * @param string $method
96
     * @param array  $args
97
     *
98
     * @return mixed
99
     *
100
     * @codeCoverageIgnore
101
     */
102
    public function __call($method, $args)
103
    {
104
        if (is_callable([$this->getAPI(), $method])) {
105
            return call_user_func_array([$this->api, $method], $args);
106
        }
107
    }
108
}
109

src/Payment/MerchantPay/MerchantPay.php 1 location

@@ 28-108 (lines=81) @@
25
/**
26
 * Class MerchantPay.
27
 */
28
class MerchantPay
29
{
30
    /**
31
     * @var API
32
     */
33
    protected $api;
34
35
    /**
36
     * Merchant instance.
37
     *
38
     * @var \EasyWeChat\Payment\Merchant
39
     */
40
    protected $merchant;
41
42
    /**
43
     * Constructor.
44
     *
45
     * @param Merchant $merchant
46
     */
47
    public function __construct(Merchant $merchant)
48
    {
49
        $this->merchant = $merchant;
50
    }
51
52
    /**
53
     * Merchant setter.
54
     *
55
     * @param Merchant $merchant
56
     */
57
    public function setMerchant(Merchant $merchant)
58
    {
59
        $this->merchant = $merchant;
60
    }
61
62
    /**
63
     * Merchant getter.
64
     *
65
     * @return Merchant
66
     */
67
    public function getMerchant()
68
    {
69
        return $this->merchant;
70
    }
71
72
    /**
73
     * API setter.
74
     *
75
     * @param API $api
76
     */
77
    public function setAPI(API $api)
78
    {
79
        $this->api = $api;
80
    }
81
82
    /**
83
     * Return API instance.
84
     *
85
     * @return API
86
     */
87
    public function getAPI()
88
    {
89
        return $this->api ?: $this->api = new API($this->getMerchant());
90
    }
91
92
    /**
93
     * Magic call.
94
     *
95
     * @param string $method
96
     * @param array  $args
97
     *
98
     * @return mixed
99
     *
100
     * @codeCoverageIgnore
101
     */
102
    public function __call($method, $args)
103
    {
104
        if (is_callable([$this->getAPI(), $method])) {
105
            return call_user_func_array([$this->api, $method], $args);
106
        }
107
    }
108
}
109