public static function create($query, $signature, $requestTimestamp, $body)
    {
        if (is_string($query)) {
            $queryParameters = array();
            parse_str($query, $queryParameters);
        } else {
            $queryParameters = $query;
        }

        $signedRequest = new SignedRequest();
        $signedRequest->loadFromArray(compact('body', 'queryParameters', 'requestTimestamp', 'signature'));

        return $signedRequest;
    }