Code Duplication    Length = 18-18 lines in 2 locations

src/PhpJsonRpc/Server/RequestParser.php 2 locations

@@ 80-97 (lines=18) @@
77
     * @param array $payload
78
     * @return bool
79
     */
80
    private function isValidCall($payload): bool
81
    {
82
        if (!is_array($payload)) {
83
            return false;
84
        }
85
86
        $headerValid = array_key_exists('jsonrpc', $payload) && $payload['jsonrpc'] === '2.0';
87
        $methodValid = array_key_exists('method', $payload)  && is_string($payload['method']);
88
        $idValid     = array_key_exists('id', $payload);
89
90
        // This member MAY be omitted
91
        $paramsValid = true;
92
        if (array_key_exists('params', $payload) && !is_array($payload['params'])) {
93
            $paramsValid = false;
94
        }
95
96
        return $headerValid && $methodValid && $paramsValid && $idValid;
97
    }
98
99
    /**
100
     * @param array $payload
@@ 103-120 (lines=18) @@
100
     * @param array $payload
101
     * @return bool
102
     */
103
    private function isValidNotification($payload): bool
104
    {
105
        if (!is_array($payload)) {
106
            return false;
107
        }
108
109
        $headerValid = array_key_exists('jsonrpc', $payload) && $payload['jsonrpc'] === '2.0';
110
        $methodValid = array_key_exists('method', $payload)  && is_string($payload['method']);
111
        $idValid     = !array_key_exists('id', $payload);
112
113
        // This member MAY be omitted
114
        $paramsValid = true;
115
        if (array_key_exists('params', $payload) && !is_array($payload['params'])) {
116
            $paramsValid = false;
117
        }
118
119
        return $headerValid && $methodValid && $paramsValid && $idValid;
120
    }
121
}
122