class AMKeyProvider implements KeyProvider {

    @Override
    public SecretKey getSecretKey(String certAlias) {
        try {
            Key key = ks.getKey(certAlias, privateKeyPass.toCharArray());

            if (key instanceof SecretKey) {
                return (SecretKey) key;
            }

            logger.error("Expected a key of type javax.crypto.SecretKey but got " + key.getClass().getName());
        } catch (KeyStoreException | NoSuchAlgorithmException | UnrecoverableKeyException e) {
            logger.error("Unable to get the secret key for certificate alias " + certAlias, e);
        }

        return null;
    }

    public  AMKeyProvider();
    public  AMKeyProvider(
            String keyStoreFilePropName, String keyStorePassFilePropName,
            String keyStoreTypePropName, String privateKeyPassFilePropName);
    public  AMKeyProvider(boolean alreadyResolved,
            String keyStoreFile, String keyStorePass,
            String keyStoreType, String privateKeyPass);

}