Skip to content

Commit f0ff770

Browse files
committed
NIFI-15536: Change Connector API to use DescribedValue vs AllowableValue
1 parent c46e290 commit f0ff770

File tree

14 files changed

+44
-42
lines changed

14 files changed

+44
-42
lines changed

nifi-connectors/nifi-kafka-to-s3-bundle/nifi-kafka-to-s3-connector/src/main/java/org/apache/nifi/connectors/kafkas3/KafkaToS3.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import org.apache.nifi.components.AllowableValue;
2323
import org.apache.nifi.components.ConfigVerificationResult;
2424
import org.apache.nifi.components.ConfigVerificationResult.Outcome;
25+
import org.apache.nifi.components.DescribedValue;
2526
import org.apache.nifi.components.connector.AbstractConnector;
2627
import org.apache.nifi.components.connector.ConfigurationStep;
2728
import org.apache.nifi.components.connector.ConnectorConfigurationContext;
@@ -236,7 +237,7 @@ private VersionedExternalFlow buildFlow(final ConnectorConfigurationContext conf
236237
}
237238

238239
@Override
239-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext flowContext) {
240+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext flowContext) {
240241
if (stepName.equals(KafkaTopicsStep.STEP_NAME) && propertyName.equals(KafkaTopicsStep.TOPIC_NAMES.getName())) {
241242
return createAllowableValues(getAvailableTopics(flowContext));
242243
} else if (stepName.equals(S3Step.S3_STEP_NAME) && propertyName.equals(S3Step.S3_REGION.getName())) {
@@ -246,11 +247,11 @@ public List<AllowableValue> fetchAllowableValues(final String stepName, final St
246247
return super.fetchAllowableValues(stepName, propertyName, flowContext);
247248
}
248249

249-
private List<AllowableValue> createAllowableValues(final List<String> values) {
250+
private List<DescribedValue> createAllowableValues(final List<String> values) {
250251
return values.stream().map(this::createAllowableValue).collect(Collectors.toList());
251252
}
252253

253-
private AllowableValue createAllowableValue(final String value) {
254+
private DescribedValue createAllowableValue(final String value) {
254255
return new AllowableValue(value, value, value);
255256
}
256257

nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/components/connector/ConnectorNode.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919

2020
import org.apache.nifi.authorization.resource.ComponentAuthorizable;
2121
import org.apache.nifi.bundle.BundleCoordinate;
22-
import org.apache.nifi.components.AllowableValue;
2322
import org.apache.nifi.components.ConfigVerificationResult;
23+
import org.apache.nifi.components.DescribedValue;
2424
import org.apache.nifi.components.ValidationResult;
2525
import org.apache.nifi.components.VersionedComponent;
2626
import org.apache.nifi.components.validation.ValidationState;
@@ -72,9 +72,9 @@ public interface ConnectorNode extends ComponentAuthorizable, VersionedComponent
7272
*/
7373
boolean isExtensionMissing();
7474

75-
List<AllowableValue> fetchAllowableValues(String stepName, String propertyName);
75+
List<DescribedValue> fetchAllowableValues(String stepName, String propertyName);
7676

77-
List<AllowableValue> fetchAllowableValues(String stepName, String propertyName, String filter);
77+
List<DescribedValue> fetchAllowableValues(String stepName, String propertyName, String filter);
7878

7979
void initializeConnector(FrameworkConnectorInitializationContext initializationContext);
8080

nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/components/connector/GhostConnector.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@
1717

1818
package org.apache.nifi.components.connector;
1919

20-
import org.apache.nifi.components.AllowableValue;
2120
import org.apache.nifi.components.ConfigVerificationResult;
2221
import org.apache.nifi.components.ConfigVerificationResult.Outcome;
22+
import org.apache.nifi.components.DescribedValue;
2323
import org.apache.nifi.components.ValidationResult;
2424
import org.apache.nifi.components.connector.components.FlowContext;
2525
import org.apache.nifi.flow.VersionedExternalFlow;
@@ -111,12 +111,12 @@ public List<ConfigVerificationResult> verify(final FlowContext flowContext) {
111111
}
112112

113113
@Override
114-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext, final String filter) {
114+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext, final String filter) {
115115
return List.of();
116116
}
117117

118118
@Override
119-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext) {
119+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext) {
120120
return List.of();
121121
}
122122

nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/components/connector/StandardConnectorNode.java

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
import org.apache.nifi.authorization.resource.ResourceFactory;
2424
import org.apache.nifi.authorization.resource.ResourceType;
2525
import org.apache.nifi.bundle.BundleCoordinate;
26-
import org.apache.nifi.components.AllowableValue;
2726
import org.apache.nifi.components.ConfigVerificationResult;
2827
import org.apache.nifi.components.ConfigVerificationResult.Outcome;
2928
import org.apache.nifi.components.DescribedValue;
@@ -617,7 +616,7 @@ public boolean isExtensionMissing() {
617616
}
618617

619618
@Override
620-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName) {
619+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName) {
621620
if (workingFlowContext == null) {
622621
throw new IllegalStateException("Cannot fetch Allowable Values for %s.%s because %s is not being updated.".formatted(
623622
stepName, propertyName, this));
@@ -629,7 +628,7 @@ public List<AllowableValue> fetchAllowableValues(final String stepName, final St
629628
}
630629

631630
@Override
632-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final String filter) {
631+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final String filter) {
633632
if (workingFlowContext == null) {
634633
throw new IllegalStateException("Cannot fetch Allowable Values for %s.%s because %s is not being updated.".formatted(
635634
stepName, propertyName, this));
@@ -1385,7 +1384,7 @@ private ConnectorValidationContext createValidationContext(final FrameworkFlowCo
13851384
}
13861385

13871386
private List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext context) {
1388-
final List<AllowableValue> allowableValues;
1387+
final List<DescribedValue> allowableValues;
13891388
try (NarCloseable ignored = NarCloseable.withComponentNarLoader(extensionManager, getConnector().getClass(), getIdentifier())) {
13901389
allowableValues = getConnector().fetchAllowableValues(stepName, propertyName, activeFlowContext);
13911390
}
@@ -1394,9 +1393,7 @@ private List<DescribedValue> fetchAllowableValues(final String stepName, final S
13941393
return Collections.emptyList();
13951394
}
13961395

1397-
return allowableValues.stream()
1398-
.map(av -> (DescribedValue) av)
1399-
.toList();
1396+
return allowableValues;
14001397
}
14011398

14021399
@Override

nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/components/connector/BlockingConnector.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717

1818
package org.apache.nifi.components.connector;
1919

20-
import org.apache.nifi.components.AllowableValue;
2120
import org.apache.nifi.components.ConfigVerificationResult;
21+
import org.apache.nifi.components.DescribedValue;
2222
import org.apache.nifi.components.ValidationResult;
2323
import org.apache.nifi.components.connector.components.FlowContext;
2424
import org.apache.nifi.flow.VersionedExternalFlow;
@@ -116,12 +116,12 @@ public List<ConfigVerificationResult> verify(final FlowContext flowContext) {
116116
}
117117

118118
@Override
119-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext, final String filter) {
119+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext, final String filter) {
120120
return List.of();
121121
}
122122

123123
@Override
124-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext) {
124+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext) {
125125
return List.of();
126126
}
127127

nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/components/connector/DynamicAllowableValuesConnector.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
import org.apache.nifi.components.AllowableValue;
2121
import org.apache.nifi.components.ConfigVerificationResult;
22+
import org.apache.nifi.components.DescribedValue;
2223
import org.apache.nifi.components.ValidationContext;
2324
import org.apache.nifi.components.ValidationResult;
2425
import org.apache.nifi.components.Validator;
@@ -103,7 +104,7 @@ public List<ConfigVerificationResult> verifyConfigurationStep(final String stepN
103104
}
104105

105106
@Override
106-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext flowContext) {
107+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext flowContext) {
107108
if ("Colors".equals(stepName) && "First Primary Color".equals(propertyName)) {
108109
final Set<ProcessorFacade> processorFacades = flowContext.getRootGroup().getProcessors();
109110
if (!processorFacades.isEmpty()) {
@@ -115,6 +116,7 @@ public List<AllowableValue> fetchAllowableValues(final String stepName, final St
115116

116117
return fileValues.stream()
117118
.map(AllowableValue::new)
119+
.map(DescribedValue.class::cast)
118120
.toList();
119121
} catch (final InvocationFailedException e) {
120122
throw new RuntimeException("Failed to fetch allowable values from connector.", e);

nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/components/connector/SleepingConnector.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717

1818
package org.apache.nifi.components.connector;
1919

20-
import org.apache.nifi.components.AllowableValue;
2120
import org.apache.nifi.components.ConfigVerificationResult;
21+
import org.apache.nifi.components.DescribedValue;
2222
import org.apache.nifi.components.ValidationResult;
2323
import org.apache.nifi.components.connector.components.FlowContext;
2424
import org.apache.nifi.flow.VersionedExternalFlow;
@@ -110,12 +110,12 @@ public List<ConfigVerificationResult> verify(final FlowContext flowContext) {
110110
}
111111

112112
@Override
113-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext, final String filter) {
113+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext, final String filter) {
114114
return List.of();
115115
}
116116

117117
@Override
118-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext) {
118+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext) {
119119
return List.of();
120120
}
121121

nifi-framework-bundle/nifi-framework/nifi-framework-core/src/test/java/org/apache/nifi/controller/flow/NopConnector.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717

1818
package org.apache.nifi.controller.flow;
1919

20-
import org.apache.nifi.components.AllowableValue;
2120
import org.apache.nifi.components.ConfigVerificationResult;
21+
import org.apache.nifi.components.DescribedValue;
2222
import org.apache.nifi.components.ValidationResult;
2323
import org.apache.nifi.components.connector.ConfigurationStep;
2424
import org.apache.nifi.components.connector.Connector;
@@ -151,12 +151,12 @@ public ConnectorInitializationContext getContext() {
151151
}
152152

153153
@Override
154-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext, final String filter) {
154+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext, final String filter) {
155155
return List.of();
156156
}
157157

158158
@Override
159-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext) {
159+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext workingContext) {
160160
return List.of();
161161
}
162162

nifi-framework-bundle/nifi-framework/nifi-framework-nar-utils/src/test/java/org/apache/nifi/nar/DummyConnector.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
package org.apache.nifi.nar;
1818

1919
import org.apache.nifi.annotation.documentation.Tags;
20-
import org.apache.nifi.components.AllowableValue;
2120
import org.apache.nifi.components.ConfigVerificationResult;
21+
import org.apache.nifi.components.DescribedValue;
2222
import org.apache.nifi.components.ValidationResult;
2323
import org.apache.nifi.components.connector.ConfigurationStep;
2424
import org.apache.nifi.components.connector.Connector;
@@ -104,12 +104,12 @@ public List<ValidationResult> validateConfigurationStep(final ConfigurationStep
104104
}
105105

106106
@Override
107-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext flowContext) {
107+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext flowContext) {
108108
return List.of();
109109
}
110110

111111
@Override
112-
public List<AllowableValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext flowContext, final String filter) {
112+
public List<DescribedValue> fetchAllowableValues(final String stepName, final String propertyName, final FlowContext flowContext, final String filter) {
113113
return List.of();
114114
}
115115

nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/StandardNiFiServiceFacade.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,9 @@
7272
import org.apache.nifi.cluster.manager.exception.IllegalNodeDeletionException;
7373
import org.apache.nifi.cluster.manager.exception.UnknownNodeException;
7474
import org.apache.nifi.cluster.protocol.NodeIdentifier;
75-
import org.apache.nifi.components.AllowableValue;
7675
import org.apache.nifi.components.ConfigVerificationResult;
7776
import org.apache.nifi.components.ConfigurableComponent;
77+
import org.apache.nifi.components.DescribedValue;
7878
import org.apache.nifi.components.PropertyDescriptor;
7979
import org.apache.nifi.components.RequiredPermission;
8080
import org.apache.nifi.components.ValidationResult;
@@ -3827,7 +3827,7 @@ public SearchResultsDTO searchConnector(final String connectorId, final String q
38273827
public ConnectorPropertyAllowableValuesEntity getConnectorPropertyAllowableValues(final String connectorId,
38283828
final String stepName, final String groupName, final String propertyName, final String filter) {
38293829
// groupName is retained for REST API backward compatibility but is no longer used by the underlying API
3830-
final List<AllowableValue> allowableValues = connectorDAO.fetchAllowableValues(connectorId, stepName, propertyName, filter);
3830+
final List<DescribedValue> allowableValues = connectorDAO.fetchAllowableValues(connectorId, stepName, propertyName, filter);
38313831

38323832
final List<AllowableValueEntity> allowableValueEntities = allowableValues.stream()
38333833
.map(av -> entityFactory.createAllowableValueEntity(dtoFactory.createAllowableValueDto(av), true))

0 commit comments

Comments
 (0)