src/Signature/SignatureProvider.php
public static function resolve(callable $provider, $version, $service, $region)
    {
        $result = $provider($version, $service, $region);
        if ($result instanceof SignatureInterface) {
            return $result;
        }

        throw new UnresolvedSignatureException(
            "Unable to resolve a signature for $version/$service/$region.\n"
            . "Valid signature versions include v4 and anonymous."
        );
    }
public static function resolve(callable $provider, $version, $service, $region)
    {
        $result = $provider($version, $service, $region);
        if ($result instanceof SignatureInterface) {
            return $result;
        }

        throw new UnresolvedSignatureException(
            "Unable to resolve a signature for $version/$service/$region.\n"
            . "Valid signature versions include v4 and anonymous."
        );
    }
public static function resolve ( callable $ provider , $ version , $ service , $ region ) { $ result = $ provider ( $ version , $ service , $ region ) ; if ( $ result instanceof SignatureInterface ) { return $ result ; } throw new UnresolvedSignatureException ( "Unable to resolve a signature for $version/$service/$region.\n" . "Valid signature versions include v4 and anonymous." ) ; }
Resolves and signature provider and ensures a non-null return value.

@param callable $provider Provider function to invoke.
@param string   $version  Signature version.
@param string   $service  Service name.
@param string   $region   Region name.

@return SignatureInterface
@throws UnresolvedSignatureException
Resolves and signature provider and ensures a non - null return value .