@Override
  public CloudBlobCryptoAgent getCloudBlobCryptoAgent() {
    try {
      return new CloudBlobCryptoAgentImpl(cryptoServiceFactory.getCryptoService(),
          keyManagementServiceFactory.getKeyManagementService(), context);
    } catch (GeneralSecurityException e) {
      throw new IllegalStateException(e);
    }
  }
Factory for constructing {@link CloudBlobCryptoAgentImpl} instances.
ambry-cloud/src/main/java/com/github/ambry/cloud/CloudBlobCryptoAgentFactoryImpl.java