- Upgraded Spring Framework from 5.3.31 to 6.0.15
- Upgraded Spring Security from 5.8.7 to 6.2.0
- Upgraded Spring Vault from 2.3.4 to 3.1.0
- Upgraded Jetty from 10.0.18 to 12.0.5 with EE 10
- Upgraded Jersey from 2.41 to 3.1.4
- Upgraded JAXB from 2.3.9 to 4.0.4
- Upgraded AspectJ from 1.9.20.1 to 1.9.21
- Upgraded JMS API from 2.0.1 to 3.1.0
- Upgraded ActiveMQ Broker from 5.18.2 to 6.0.1 for JMS 3
- Upgraded JJWT from 0.9.1 to 0.12.3
- Replaced jackson-module-jaxb-annotations with jackson-module-jakarta-xmlbind-annotations
- Replaced maven-jaxb2-plugin with hisrc-higherjaxb40-maven-plugin 2.1.1
- Replaced kongchen swagger-maven-plugin with swagger-codegen-maven-plugin from Swagger 3
- Replaced com.nickwongdev AspectJ Plugin with Codehaus 1.14.0 for newer Java versions
- Removed unused cglib-nodep
- Removed references to javax.validation
- Removed custom Jetty ALPN Processor not required for Java 21
- Removed several tests depending on older Jetty and Jakarta libraries
- Removed unnecessary webdefault.xml configurations
- Replaced unsupported cross-context servlet forwarding with HTTP forwarding
- Replaced javax.servlet references with jakarta.servlet
- Replaced javax.xml.bind references with jakarta.xml.bind
- Replaced javax.ws references with jakarata.ws
- Updated Spring Security CSRF implementation for Spring Security 6
- Updated web.xml versions to 6.0
- Updated REST API templates using new swagger-codegen variables
- Removed VALIDATE_DATA property from ParseCEF based on library compatibility issue with javax.validation
- Added application URL logging to NiFi JettyServer
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>
This closes#8197.
- Updated OidcBearerTokenRefreshFilter to maintain current Identity Provider Groups when generating refreshed application Bearer Tokens
- Refactored LoginAuthenticationToken to remove unnecessary optional constructors and use java.time.Instant for expiration
- Added Issuer Provider with implementation for Bearer Token Issuer based on host and port properties
The headers in the map that come back when replicating a request used to be in the case given; however they can be lowercased in the OkHttp Headers object when using HTTP/2 instead of HTTP/1.1. As a result, we need to ensure that we always use lower-case header names or check the map case-insensitive.
This closes#8163
Signed-off-by: David Handermann <exceptionfactory@apache.org>
* NIFI-12486:
- Registry Clients.
- General authorization guard.
- Additional authorization checks in the existing Settings tabs.
* NIFI-12486:
- Adding authorization guard to /counters.
* NIFI-12486:
- Enabling some debug build out to attempt to track down a sporadic build failure.
* NIFI-12486:
- Addressing review feedback.
* NIFI-12486:
- Fixing unit test and running prettier.
This closes#8142
* NIFI-12425:
- Controller Service Listing.
- Adding lazy loading to the Canvas with the introduction of the Controller Service listing.
- Reorganizing existing components in the Flow Designer.
- Allowing the current Process Group to be configured.
- Inline Service creation.
* NIFI-12425:
- Removing unused imports.
This closes#8091
* NIFI-11481:
- Initial project creation.
* NIFI-11481:
- Install material.
- Rename project from nifi-web-frontend to nifi.
* NIFI-11481:
- Install roboto through package.json.
* NIFI-11481:
- Add Tailwind.
* NIFI-11481:
- Basic layout.
* NIFI-11481:
- Introducing ngrx for storing flow.
* NIFI-11481:
- Introducing d3.
- Adding svg.
- Adding defs.
- Funnel Manager.
* NIFI-11481:
- Introducing d3.
- Adding svg.
- Adding defs.
- Funnel Manager.
- Adding draggable.
- Adding editable.
- Adding selectable.
- Adding flowfont.
- Adding Canvas View.
- Adding Transform in Store.
- Adding selected in Store.
- Adding transition in Store.
- Funnel Manager directly subscribes to store.
* NIFI-11481:
- Adding backend calls.
- Refactoring update positions to be for a single component.
* NIFI-11481:
- Process Group Manager.
- Adding font-awesome.
- Updating canvas/graph component visibility.
- Adding prettier/eslint.
* NIFI-11481:
- Adding support to enter a process group.
* NIFI-11481:
- Formatting source.
* NIFI-11481:
- Label Manager.
- Added generic update component.
* NIFI-11481:
- Processor Manager.
* NIFI-11481:
- Port Manager.
* NIFI-11481:
- Remote Process Group Manager.
* NIFI-11481:
- Adding draggable icons to the toolbar.
* NIFI-11481:
- Formatting.
* NIFI-11481:
- Draggable Toolbar.
- Create Label, Funnel.
* NIFI-11481:
- Connection Manager.
- Connectable Behavior.
* NIFI-11481:
- Draggable behavior with back end call for both components and connections.
* NIFI-11481:
- Selection box.
* NIFI-11481:
- Port creation.
- Port configuration.
- Quick Select.
* NIFI-11481:
- Canvas Tooltips.
* NIFI-11481:
- Context menu.
* NIFI-11481:
- Router State.
- Reorganization.
- Deep linking.
* NIFI-11481:
- Adding support for Delete.
* NIFI-11481:
- Flow status bar.
* NIFI-11481:
- Adding Current User State.
- Current user polling.
- Fixing Flow Status layout bug.
* NIFI-11481:
- Process Group Polling.
* NIFI-11481:
- Process Group Breadcrumbs.
* NIFI-11481:
- Global Menu.
* NIFI-11481:
- Search.
* NIFI-11481:
- Add support for centering components on the canvas.
* NIFI-11481:
- Add support for persisting and restoring the users view of the current PG.
* NIFI-11481:
- Fixing centering behavior.
- Fixing user view restoration.
- Bulk selection auto fit.
* NIFI-11481:
- Incorporating the new UI into the NiFi build with a build profile that is not active by default.
- The new UI is deployed to a different context path than the current UI and works side by side.
* NIFI-11481:
- Center component from context menu.
- Enter process group from context menu.
* NIFI-11481:
- Adding support to log in.
- LoginFilter, LogoutFilter.
- Moved the handling of 'include-new-ui' profile to make building with and within more straight forward.
- Splash screen while guard executing.
- Http request interceptor to show loading on the canvas.
- Http request interceptor to handle 401 responses.
* NIFI-11481:
- Extension Creation Component.
- Filter, Usage Restrictions, and selected type.
* NIFI-11481:
- Stopping polling when unable to connect to server.
* NIFI-11481:
- Settings - General.
* NIFI-11481:
- Settings - Management Controller Services.
* NIFI-11481:
- NiFi Tooltip directive.
- Usage Restriction Tip.
- Comments Tip.
- Validation Errors Tip.
- Bulletins Tip.
* NIFI-11481:
- Settings - Reporting Tasks.
* NIFI-11481:
- Avoiding unnecessary web requests in route guards.
* NIFI-11481:
- Edit Controller Service Dialog.
- View Property Table.
- Update component density.
* NIFI-11481:
- Supports Controller Service API tooltip and dialog content.
* NIFI-11481:
- Property table - NF Editor.
- Property table - Combo Editor.
* NIFI-11481:
- Making property table a control value accessor.
- Wiring up saving Controller Services from Edit Dialog.
- Handling Delete Property.
- Handling New Property.
- Updating how form submission is triggered throughout to address issue with incidental form submit events.
* NIFI-11481:
- Moving Settings into pages.
* NIFI-11481:
- Moving Canvas into pages.
* NIFI-11481:
- Moving Login into pages.
* NIFI-11481:
- Adding routing to the Controller Service listing and Reporting Task listing.
- Updating Canvas routing to follow similar pattern.
* NIFI-11481:
- Controller Service references.
* NIFI-11481:
- Create inline Controller Service.
- Edit Controller Service route.
- Go To Controller Service from Property Table.
- Switching to Event Emitter in New Property dialog.
* NIFI-11481:
- Saving spinner - Create Processor, Create Port, and Edit Port.
* NIFI-11481:
- Saving spinner - Create Controller Service, Edit Controller Service, and Create Reporting Task.
* NIFI-11481:
- Parameter Context Listing.
- Add new Parameter Context.
- Edit Parameter Context.
* NIFI-11481:
- New Paramter.
- Edit Parameter.
- Parameter table.
* NIFI-11481:
- Parameter references.
- Parameter Context update steps.
- Bound Process Group references.
* NIFI-11481:
- Parameter Context Inheritance.
* NIFI-11481:
- Processor configuration.
- Ensuring new Property names are unique.
- Trapping focus in nf and combo editors.
- Reloading component connections after updating a Processor.
* NIFI-11481:
- Navigation Control.
- Birdseye.
- Operation Control.
* NIFI-11481:
- Create Process Group.
- Upload Process Group.
* NIFI-11481:
- Implementing current Process Group context in operation palette.
* NIFI-11481:
- Connection creation.
* NIFI-11481:
- Connection configuration.
* NIFI-11481:
- Standardizing selection option model.
- Connection load balancing tooltip.
- Clean up.
* NIFI-11481:
- Move components in to/out of groups.
- Group components.
* NIFI-11481:
- Render connections for component action.
* NIFI-11481:
- CodeMirror for Parameter and EL configuration.
* NIFI-11481:
- Resizable.
- Moving tooltip directive.
* NIFI-11481:
- Ensuring all specs are bootstrapped and create successfully.
* NIFI-11481:
- Updating some interface names to avoid conflicting with various components in an attempt to better establish a naming convention.
* NIFI-11481:
- Show Source/Destination.
- Defaulting current Parameter Context in Create PG and Group dialogs.
- Handling disabled state in a few ControlValueAccessors.
- Ensuring Parameter Contest uri is set.
- Unit tests.
* NIFI-11481:
- Fixing checkstyle issue.
* NIFI-11481:
- LICENSE/NOTICE.
* NIFI-11481:
- RAT Plugin config.
* NIFI-12401:
- Addressing review feedback.
* NIFI-11481:
- Ensuring the option is disabled when there is no description.
* NIFI-11481:
- Only including parameters in the payload when they have been modified.
- Showing appropriate message after applying based on whether parameters were included or not.
* NIFI-11481:
- Fixing parameter deletion.
- Enforcing parameter name uniqueness.
- Preventing changing parameter sensitive.
* NIFI-11481:
- Only loading the service link once when considering updated property value.
- Ensuring existing parameter are set in all instances of opening the new Property dialog.
* NIFI-11481:
- Fixing tests that regressed.
* NIFI-11481:
- Adding default karma config which was needed in order to debug tests in IDE.
* NIFI-11481:
- Updating karma config to not watch for now. Can introduce new options for running in various contexts in the future.
This closes#8053
- Removed support for Year field in Cron Expressions
- Changed numeric Day of Week field from starting with 1 to starting with 0
- Removed Quartz and C3P0 from Notice files
This closes#7951
Signed-off-by: Mike Moser <mosermw@apache.org>
- Added nar-packaging and war-packaging profiles to root Maven configuration
- Removed individual properties from NAR module configurations
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>
This closes#7947.
NIFI-12245: Removed null check that is no longer necessary
NIFI-12245: Fixed checkstyle violation
Signed-off-by: Bence Simon <bsimon@apache.org>
This closes#7899
Fixed bug where parameter context descriptions were not loaded on NiFi startup and overwritten as empty
This closes: #7787
Signed-off-by: David Handermann <exceptionfactory@apache.org>
* NIFI-12206 Refactored Flow History using JetBrains Xodus
- Replaced H2 Database Engine with JetBrains Xodus for persistent storage of FlowConfigurationHistory
- Added EntityStoreAuditService implementation using Xodus PersistentEntityStore
- Removed nifi.h2.url.append from properties
- Ensure that after restoring nars in the lib/ directory we restart NiFi so that they take effect. This is important if this test is not the last one to run
This closes#7837
Signed-off-by: David Handermann <exceptionfactory@apache.org>
- Created NIFI-12203 to evaluate issues with flow comparison surfaced in JoinClusterWithDifferentFlow
This closes#7661
Signed-off-by: David Handermann <exceptionfactory@apache.org>
Revamped RuleViolationsManager and FlowAnalyzer handling to make sure no issue occurs when these are not set. Fix ResourceNotFoundException: When determining the subject permissions for a rule violation the type of the subject is now known, so we try to lookup all possible types. Non-matching tpyes throw a ResourceNotFoundException exception though. Going to ignore those.
This closes#7809
Signed-off-by: David Handermann <exceptionfactory@apache.org>
Fixed issue in logic of LocalComponentLifecycle, which was waiting for all PGs to reach desired stateless run schedule, even when the group itself was not stateless
Fixed JavaScript to specify correct value for recursivity when updating process group parameter context
- Added new extensible Component Type: FlowAnalysisRule
- Added DisallowComponentType Rule implementation
- Flow Analysis Rules can be managed from the UI under Controller Settings -> Flow Analysis Rules
- Flow Analysis Rules can be set up with an enforcement policy of WARN or ENFORCE
- Flow Analysis Rules can evaluate an individual Component or a Process Group
This closes#7191
Signed-off-by: David Handermann <exceptionfactory@apache.org>
- Updated Jetty WebSocket components using Jetty 10 components
- Upgraded Solr components from 8.11.2 to 9.2.1 to align with Jetty 10 dependencies
Signed-off-by: Matt Burgess <mattyb149@apache.org>
This closes#7622
When shutting down FlowController, wait up to gracefulShutdownSeconds seconds for the components to stop before shutting down thread pools. This allows for asynchronous operations such as disableControllerServicesAsync to complete during shutdown. Updated StandardStatelessFlow so that on shutdown it catches more general Exception to ensure that shutdown succeeds
Ensure that Max Concurrent Tasks cannot be set less than 1 for stateless group; fixed typo in ProcessGroupDTO's docs; on shutdown, we may need to disable controller services asynchronously. At that point, the thread pool used to do so may already be shutdown. If so, catch this and create a new single-thread pool, disable the service, and immediately shutdown the pool. Also, if we fail to disable services on shutdown of a stateless flow, instead of throwing an Exception, just log it and move on - it doesn't make much sense for shutdown() to throw an Exception in that case.
Updated system tests so that when emptying a queue, we check the result and if the queue still has data (because a Processor hasn't acknowledged the data, for example) then continue issuing request until the queue fully becomes empty.
When shutting down input/output ports for stateless group, ensure that we wait for the ports' active threads to complete before returning
When stopping StatelessGroupNode, ensure that all the Processors, Controller Services (even those not executed by the Stateless Engine) are stopped/disabled before considering the Stateless Group to be fully STOPPED.
This closes#7253
Signed-off-by: David Handermann <exceptionfactory@apache.org>
When waiting for all controller services to reach the desired status in the ClusterReplicationComponentLifecycle component, return immediately if there are no services to wait for. Otherwise, request that referencing components not be included in the return value of the Controller Services
This closes#7493
Signed-off-by: David Handermann <exceptionfactory@apache.org>
- Removed hamcrest-all from default dependencies
- Added groovy-test to selected modules with Groovy test classes
- Added junit-vintage-engine to selected modules with JUnit 4 test classes
- Corrected references to JUnit 4 assertions in JUnit 5 test classes
- Removed several unnecessary test classes from nifi-socket-utils
- Removed duplicative Registry toolkit test classes
- Removed Kudu integration tests
NIFI-11532 Corrected scope for junit-vintage-engine for Elasticsearch
Signed-off-by: Matt Burgess <mattyb149@apache.org>
This closes#7233