Skip to content

Commit f90a41f

Browse files
authored
NIFI-15055 Add FLOW_REGISTRY_CLIENT to ExtensionType to NiFi API (#21)
Signed-off-by: David Handermann <[email protected]>
1 parent 89c05e9 commit f90a41f

File tree

3 files changed

+58
-1
lines changed

3 files changed

+58
-1
lines changed

src/main/java/org/apache/nifi/documentation/AbstractDocumentationWriter.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@
4747
import org.apache.nifi.controller.ControllerService;
4848
import org.apache.nifi.documentation.init.DocumentationControllerServiceInitializationContext;
4949
import org.apache.nifi.documentation.init.DocumentationFlowAnalysisRuleInitializationContext;
50+
import org.apache.nifi.documentation.init.DocumentationFlowRegistryClientInitializationContext;
5051
import org.apache.nifi.documentation.init.DocumentationParameterProviderInitializationContext;
5152
import org.apache.nifi.documentation.init.DocumentationProcessorInitializationContext;
5253
import org.apache.nifi.documentation.init.DocumentationReportingInitializationContext;
@@ -56,6 +57,7 @@
5657
import org.apache.nifi.processor.Relationship;
5758
import org.apache.nifi.reporting.InitializationException;
5859
import org.apache.nifi.reporting.ReportingTask;
60+
import org.apache.nifi.registry.flow.FlowRegistryClient;
5961

6062
import java.io.IOException;
6163
import java.util.ArrayList;
@@ -95,6 +97,8 @@ public void initialize(final ConfigurableComponent component) {
9597
initialize((FlowAnalysisRule) component);
9698
} else if (component instanceof ParameterProvider) {
9799
initialize((ParameterProvider) component);
100+
} else if (component instanceof FlowRegistryClient) {
101+
initialize((FlowRegistryClient) component);
98102
}
99103
} catch (final InitializationException ie) {
100104
throw new RuntimeException("Failed to initialize " + component, ie);
@@ -121,6 +125,10 @@ protected void initialize(final ParameterProvider parameterProvider) throws Init
121125
parameterProvider.initialize(new DocumentationParameterProviderInitializationContext());
122126
}
123127

128+
protected void initialize(final FlowRegistryClient flowRegistryClient) {
129+
flowRegistryClient.initialize(new DocumentationFlowRegistryClientInitializationContext());
130+
}
131+
124132
@Override
125133
public final void write(final ConfigurableComponent component) throws IOException {
126134
write(component, Collections.emptyList(), Collections.emptyMap());
@@ -296,6 +304,9 @@ protected ExtensionType getExtensionType(final ConfigurableComponent component)
296304
if (component instanceof ParameterProvider) {
297305
return ExtensionType.PARAMETER_PROVIDER;
298306
}
307+
if (component instanceof FlowRegistryClient) {
308+
return ExtensionType.FLOW_REGISTRY_CLIENT;
309+
}
299310
throw new AssertionError("Encountered unknown Configurable Component Type for " + component);
300311
}
301312

src/main/java/org/apache/nifi/documentation/ExtensionType.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,7 @@ public enum ExtensionType {
2525

2626
FLOW_ANALYSIS_RULE,
2727

28-
PARAMETER_PROVIDER;
28+
PARAMETER_PROVIDER,
29+
30+
FLOW_REGISTRY_CLIENT;
2931
}
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
/*
2+
* Licensed to the Apache Software Foundation (ASF) under one or more
3+
* contributor license agreements. See the NOTICE file distributed with
4+
* this work for additional information regarding copyright ownership.
5+
* The ASF licenses this file to You under the Apache License, Version 2.0
6+
* (the "License"); you may not use this file except in compliance with
7+
* the License. You may obtain a copy of the License at
8+
*
9+
* http://www.apache.org/licenses/LICENSE-2.0
10+
*
11+
* Unless required by applicable law or agreed to in writing, software
12+
* distributed under the License is distributed on an "AS IS" BASIS,
13+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
* See the License for the specific language governing permissions and
15+
* limitations under the License.
16+
*/
17+
package org.apache.nifi.documentation.init;
18+
19+
import org.apache.nifi.logging.ComponentLog;
20+
import org.apache.nifi.registry.flow.FlowRegistryClientInitializationContext;
21+
22+
import javax.net.ssl.SSLContext;
23+
import java.util.Optional;
24+
import java.util.UUID;
25+
26+
public class DocumentationFlowRegistryClientInitializationContext implements FlowRegistryClientInitializationContext {
27+
private final String identifier = UUID.randomUUID().toString();
28+
private final ComponentLog componentLog = new NopComponentLog();
29+
30+
@Override
31+
public String getIdentifier() {
32+
return identifier;
33+
}
34+
35+
@Override
36+
public ComponentLog getLogger() {
37+
return componentLog;
38+
}
39+
40+
@Override
41+
public Optional<SSLContext> getSystemSslContext() {
42+
return Optional.empty();
43+
}
44+
}

0 commit comments

Comments
 (0)