Skip to content

NIFI-15258 Add API for Connectors#70

Merged
exceptionfactory merged 3 commits intoapache:mainfrom
markap14:NIFI-15258
Mar 3, 2026
Merged

NIFI-15258 Add API for Connectors#70
exceptionfactory merged 3 commits intoapache:mainfrom
markap14:NIFI-15258

Conversation

@markap14
Copy link
Contributor

@markap14 markap14 commented Feb 19, 2026

Summary

NIFI-15258

Tracking

Please complete the following tracking steps prior to pull request creation.

Issue Tracking

Pull Request Tracking

  • Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
  • Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000

Pull Request Formatting

  • Pull Request based on current revision of the main branch
  • Pull Request refers to a feature branch with one commit containing changes

Copy link
Contributor

@exceptionfactory exceptionfactory left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @markap14 and all who contributed to the new Connector API! The new interfaces and classes look like a solid foundation for introducing this new capability. I raised a couple minor questions at a few points, but overall it looks ready to be merged soon.

@exceptionfactory exceptionfactory changed the title NIFI-15258: API for Connectors NIFI-15258 Add API for Connectors Feb 28, 2026
@markap14
Copy link
Contributor Author

markap14 commented Mar 2, 2026

Thanks for the review @exceptionfactory . Updated to address all review feedback and also rebased against main

markap14 and others added 3 commits March 2, 2026 20:57
NIFI-15259: Adding web context interface for custom Connector UIs.
NIFI-15322: Require all property descriptors within a PropertyGroup / ConfigurationStep are unique (apache#27)
* Huge refactoring of Connectors to require that <Step Name, Property Name> tuple is unique. Requiring that is simple, but now that we enforce that, we can greatly simplify much of the code.
* Added StepConfiguration to simplify API rather than using Map<String, ConnectorValueReference> in some places
* Now that we enforce unique property names per step, introduced StepConfigurationContext to further reduce API complexity
NIFI-15326: Adding support for connector configuration step documentation. (apache#28)
NIFI-15312: Moved SecretsProvider / SecretsManager to framework instead of api; added description to Secret and updated ParameterProvider to allow more specific fetching of parameters; cleaned up Connector validation logic (apache#29)
NIFI-15343: Adding providerId to Secret. (apache#30)
NIFI-15258: Enable Custom UI to retrieve connector with flow contexts (apache#33)
NIFI-15352: Added getFullyQualifiedName to secret, to encapsulate the combination of group and name (apache#35)
NIFI-15352: Added getFullyQualifiedName to SecretReference
NIFI-15315 Add support for assets in Connectors (apache#31)
- Add ownerIdentifier in Asset and deprecate parameterContextIdentifier
- Add ASSET and ASSET_LIST types for Connector properties and update validation
- Support multiple asset references
NIFI-15361: Removing documentation from ConfigurationStep. (apache#38)
NIFI-15369: Allow ConfigurationStep to depend on another (ConfigurationStep,Property) tuple (apache#39)
NIFI-15356: Introducing the ConnectorWebMethod. (apache#37)
NIFI-15353: Adding documentation writers for connectors. (apache#40)
NIFI-15428: If non-existent property value is set, connector should be invalid. (apache#43)
NIFI-15427: Added drainFlowFiles(FlowContext) method to Connector (apache#42)
NIFI-15440: Implementation of ConnectorActions (apache#47)
NIFI-15446: Updated JavaDocs to clarify how invocations of Connector Methods work (apache#45)
NIFI-15461: Fixed bug that caused system tests to fail (apache#48)
NIFI-15451: Provide ability for Connectors to lookup Bundles available for a given component type (apache#46)
NIFI-15485: Include provider name when providing fqn for secrets (apache#52)
NIFI-15467: Allow Connectors to specify bundle compatability when upd… (apache#54)
NIFI-15536: Change Connector API to use DescribedValue vs AllowableValue (apache#60)
NIFI-15514: Bug fix - ensure that when AbstractConnector is started, it includes all components, not just processors and controller services; code cleanup (apache#57)
NIFI-15538: When starting/stopping components allow specifying whether or not the action should be recursive; code cleanup and simplification to use a Virtual Thread to execute code sequentially instead of chaining CompletableFutures. (apache#61)
NIFI-15480: Added DropFlowFileSummary, ability to drop FlowFiles from a ConnectionFacade / ProcessGroupFacade (apache#62)
NIFI-15557: Allow Connectors to enable a Controller Service using overridden property values (apache#63)
NIFI-15565: Code cleanup (apache#64)
NIFI-15621: Allow Configuration to Validate with ValidationContext (apache#69)

Co-authored-by: Mark Payne <markap14@hotmail.com>
Co-authored-by: Matt Gilman <matt.c.gilman@gmail.com>
Co-authored-by: Bryan Bende <bbende@apache.org>
Co-authored-by: Bob Paulin <bob@bobpaulin.com>
@markap14
Copy link
Contributor Author

markap14 commented Mar 3, 2026

Force pushed again because the rebase dropped my signatures; needed to re-sign the latest 3 commits.

Copy link
Contributor

@exceptionfactory exceptionfactory left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for making the adjustments @markap14! As with any large scale set of changes, I'm sure there be adjustments going forward, but this is a solid foundation for the new Connector capability! +1 merging

@exceptionfactory exceptionfactory merged commit 5cf3ba8 into apache:main Mar 3, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants