class KeyDataUtil {

    public static Class<? extends ConfigKeyPair> getKeyPairTypeFor(KeyData keyData) {
        if (isDirect(keyData)) {
            return DirectKeyPair.class;
        }

        if (isInline(keyData)) {
            return InlineKeypair.class;
        }

        if (isAzure(keyData)) {
            return AzureVaultKeyPair.class;
        }

        if (isHashicorp(keyData)) {
            return HashicorpVaultKeyPair.class;
        }

        if (isAws(keyData)) {
            return AWSKeyPair.class;
        }

        if (isFileSystem(keyData)) {
            return FilesystemKeyPair.class;
        }

        return UnsupportedKeyPair.class;
    }

    private  KeyDataUtil();

}