Github user zenfenan commented on a diff in the pull request:
https://github.com/apache/nifi/pull/2968#discussion_r213901647
--- Diff:
nifi-nar-bundles/nifi-aws-bundle/nifi-aws-abstract-processors/src/main/java/org/apache/nifi/processors/aws/AbstractAWSProcessor.java
---
@@ -286,7 +286,7 @@ protected void
initializeRegionAndEndpoint(ProcessContext context) {
final String urlstr =
StringUtils.trimToEmpty(context.getProperty(ENDPOINT_OVERRIDE).evaluateAttributeExpressions().getValue());
if (!urlstr.isEmpty()) {
getLogger().info("Overriding endpoint with {}", new
Object[]{urlstr});
- this.client.setEndpoint(urlstr);
+ this.client.setEndpoint(urlstr,
this.client.getServiceName(), this.region.getName());
--- End diff --
Yep. They will be present always. We have made `Region` a `required`
parameter so it will be there. The service name is provided by the AWSClient
implementation in the AWS SDK. Gone through their implementation and verified
that, it takes care of undefined and null service names i.e, it computes the
service name again and returns, if it turns out to be null.
---