Skip to content

Commit 47e9d18

Browse files
committed
Merge branch 'master' of https://github.com/apache/nifi into aws-web-api
2 parents ad50a62 + 6bf6a92 commit 47e9d18

2 files changed

Lines changed: 44 additions & 4 deletions

File tree

nifi-nar-bundles/nifi-aws-bundle/nifi-aws-abstract-processors/src/main/java/org/apache/nifi/processors/aws/AbstractAWSProcessor.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -189,17 +189,20 @@ protected Collection<ValidationResult> customValidate(final ValidationContext va
189189
}
190190

191191
final boolean proxyHostSet = validationContext.getProperty(PROXY_HOST).isSet();
192-
final boolean proxyHostPortSet = validationContext.getProperty(PROXY_HOST_PORT).isSet();
192+
final boolean proxyPortSet = validationContext.getProperty(PROXY_HOST_PORT).isSet();
193+
194+
if ((proxyHostSet && !proxyPortSet) || (!proxyHostSet && proxyPortSet)) {
195+
problems.add(new ValidationResult.Builder().subject("Proxy Host and Port").valid(false).explanation("If Proxy Host or Proxy Port is set, both must be set").build());
196+
}
193197

194198
final boolean proxyUserSet = validationContext.getProperty(PROXY_USERNAME).isSet();
195199
final boolean proxyPwdSet = validationContext.getProperty(PROXY_PASSWORD).isSet();
196200

197201
if ((proxyUserSet && !proxyPwdSet) || (!proxyUserSet && proxyPwdSet)) {
198202
problems.add(new ValidationResult.Builder().subject("Proxy User and Password").valid(false).explanation("If Proxy Username or Proxy Password is set, both must be set").build());
199203
}
200-
201-
if ( ((!proxyHostSet) && proxyHostPortSet) || (proxyHostSet && (!proxyHostPortSet)) ) {
202-
problems.add(new ValidationResult.Builder().input("Proxy Host Port").valid(false).explanation("Both proxy host and port must be set").build());
204+
if (proxyUserSet && !proxyHostSet) {
205+
problems.add(new ValidationResult.Builder().subject("Proxy").valid(false).explanation("If Proxy username is set, proxy host must be set").build());
203206
}
204207

205208
ProxyConfiguration.validateProxySpec(validationContext, problems, PROXY_SPECS);

nifi-nar-bundles/nifi-aws-bundle/nifi-aws-processors/src/test/java/org/apache/nifi/processors/aws/credentials/provider/service/AWSProcessorProxyTest.java

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,4 +67,41 @@ public void testProxyHostAndPortValid() throws Throwable {
6767
runner.setProperty(AbstractAWSProcessor.PROXY_HOST, "proxyHost");
6868
runner.assertValid();
6969
}
70+
71+
@SuppressWarnings("deprecation")
72+
@Test
73+
public void testProxyUserNoPasswordInValid() throws Throwable {
74+
runner.setProperty(AbstractAWSProcessor.PROXY_USERNAME, "foo");
75+
runner.assertNotValid();
76+
}
77+
78+
@SuppressWarnings("deprecation")
79+
@Test
80+
public void testProxyNoUserPasswordInValid() throws Throwable {
81+
runner.setProperty(AbstractAWSProcessor.PROXY_PASSWORD, "foo");
82+
runner.assertNotValid();
83+
}
84+
85+
@SuppressWarnings("deprecation")
86+
@Test
87+
public void testProxyUserPasswordNoHostInValid() throws Throwable {
88+
runner.setProperty(AbstractAWSProcessor.PROXY_USERNAME, "foo");
89+
runner.setProperty(AbstractAWSProcessor.PROXY_PASSWORD, "foo");
90+
runner.assertNotValid();
91+
}
92+
93+
@SuppressWarnings("deprecation")
94+
@Test
95+
public void testProxyUserPasswordHostValid() throws Throwable {
96+
runner.setProperty(AbstractAWSProcessor.PROXY_HOST_PORT, "1");
97+
runner.setProperty(AbstractAWSProcessor.PROXY_HOST, "proxyHost");
98+
runner.setProperty(AbstractAWSProcessor.PROXY_USERNAME, "foo");
99+
runner.setProperty(AbstractAWSProcessor.PROXY_PASSWORD, "foo");
100+
runner.assertValid();
101+
}
102+
103+
104+
105+
106+
70107
}

0 commit comments

Comments
 (0)