Skip to content

Commit

Permalink
NIFI-13290: (apache#8871)
Browse files Browse the repository at this point in the history
- Manually closing dialogs with proper result in Navigation lifecycle to ensure back/forward browser button works correctly. This change also handles any scenario when a user routes away from a dialog via a link or go to action so we were able to remove the dialog close action form those places.

NIFI-13305 Upgraded HBase from 2.5.8 to 2.6.0
This closes 8886

- Removed unnecessary transitive dependency overrides

Signed-off-by: Joseph Witt <joewitt@apache.org>

NIFI-12967: Introducing Back action (apache#8859)

* NIFI-12967:
- Adding support for navigating back to the users previous location in certain circumstances like going to a Controller Service, managing access policies, going to parameters, viewing documentation, opening advanced UIs, and viewing data provenance.
- Cleaning unnecessary instances of postUpdateNavigation.

* NIFI-12967:
- Updating the implementation to leverage router events and router state to simplify needed changes.

* NIFI-12967:
- Conditionally resetting or popping back navigation history because on routing context.

* NIFI-12967:
- Adding support for navigating back from queue listing and provenance.

* NIFI-12967:
- Conditionally applying the back navigation following a component update.

* NIFI-12967:
- Adding back from CS service listing.

* NIFI-12967:
- Adding back from Go To CS.
- Restoring some space in the context menu.

* NIFI-12967:
- Prevent duplicate entries in the back navigation stack.

* NIFI-12967:
- Not executing pop through navigation extras because it can result in multiple pops if the user uses their back/forward browser buttons. Instead, always popping until we encounter a back navigation that is still within a route boundary.

NIFI-13285: If there is no transform to restore for the current viewport, executing a zoom fit (apache#8874)

* NIFI-13285:
- If there is no transform to restore for the current viewport, executing a zoom fit.

* NIFI-13285:
- Adjusting the canvas position styles and zoom fit calculations.

This closes apache#8874

Set sensitive as true in USM Users JSON content property

Trigger CI pipeline

[NIFI-13303] - Remove text indicating property verification is disabled. (apache#8884)

This closes apache#8884

[NIFI-13269] - Order parameter reference list alphabetically (apache#8885)

* [NIFI-13269] - Order parameter reference list alphabetically

* ran prettier:format to address minor code style issue

* update nfpr and nfel to sort combo entries the same as the combo entries in the property table (case insensitive)

This closes apache#8885

NIFI-13284: (apache#8891)

- Only saving canvas routes that are not edit or history.

This closes apache#8891

NIFI-12343 Added Max JSON Field String Length for Elasticsearch

This closes apache#8881

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13308 Upgraded Spring Framework from 6.1.7 to 6.1.8

- Upgraded Spring Boot from 3.2.5 to 3.2.6
- Upgraded Slack bolt-socket-mode from 1.39.2 to 1.39.3
- Upgraded maven-artifact from 3.9.6 to 3.9.7
- Upgraded mariadb-java-client from 3.3.3 to 3.4.0
- Upgraded software.amazon.awssdk from 2.25.55 to 2.25.60
- Upgraded com.amazonaws from 1.12.725 to 1.12.730
- Upgraded Jersey from 3.1.6 to 3.1.7
- Upgraded Netty from 4.1.109.Final to 4.1.110.Final
- Upgraded box-java-sdk from 4.9.0 to 4.9.1

This closes apache#8887

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13299: (apache#8894)

- Adding min validators where appropriate.

This closes apache#8894

NIFI-13289 add tooltips to NewCanvasItem (apache#8870)

This closes apache#8870

NIFI-13315 Fixed ListAzureBlobStorage_v12 fails when Record Writer is used

This closes apache#8897

Signed-off-by: Mark Bathori <mbathori@apache.org>

[NIFI-13312] - Restructure as an Nx monorepo (apache#8893)

* [NIFI-13312] - Restructure as an Nx monorepo

* restored lint:fix functionality, updated package-lock

This closes apache#8893

[NIFI-13234] update unauthorized canvas component colors (apache#8902)

* [NIFI-13234] update unautorized canvas component colors

* restore web font loader to ensure positions of canvas text is calculate correctly

This closes apache#8902

[NIFI-13246] move actions from details columns into menu (apache#8900)

* [NIFI-13246] move actions from details columns into menu

* move View Documentation menu option lower

This closes apache#8900

NIFI-13321: (apache#8901)

- Fixing the mocking of child components in unit tests.
- Removing any provided dependency that is no longer needed.

This closes apache#8901

NIFI-13265 Removed instantiation of Object arrays for log arguments

This closes apache#8896

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13309 Lookup compatible bundles even if previous flow was empty

Signed-off-by: Ferenc Kis <briansolo1985@gmail.com>

This closes apache#8888.

NIFI-13320 Upgraded Spring Boot from 3.2.6 to 3.3.0

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes apache#8899.

NIFI-13267 - Bump NiFi NAR Maven plugin version (apache#8860)

* NIFI-13267 - Bump NiFi NAR Maven plugin version
* Review - adding Parameter Providers and Flow Analaysis Rules in c2-protocol-component-api ComponentManifest
* Review - fix build() of ComponentManifest

NIFI-13307 Replaced KeyStoreUtils with nifi-security-ssl Builders (apache#8895)

- Removed unused test classes from nifi-web-api

NIFI-13336 updating various deps for aws google azure and more

- com.amazonaws	* 1.12.730 1.12.733
- com.azure azure-sdk-bom 1.2.23 1.2.24
- com.google.cloud libraries-bom 26.39.0 26.40.0
- commons-cli 1.7.0 1.8.0
- commons-net 3.10.0 3.11.0
- io.fabric8 * 6.12.1 6.13.0
- org.apache.commons commons-compress 1.26.1 1.26.2
- software.amazon.awssdk 2.25.60 2.25.63
- com.google.apis	google-api-services-drive v3-rev20240327-2.0.0	 v3-rev20240521-2.0.0
- org.neo4j.driver	neo4j-java-driver 5.20.0 5.21.0
- org.springframework.integration	spring-integration-mail 6.2.4 6.2.5

Signed-off-by: Joseph Witt <joewitt@apache.org>
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes apache#8907.

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

[NIFI-13325] update dark mode theme density to match light mode (apache#8904)

* [NIFI-13325] update dark mode theme density to match light mode

* remove density from nifi themes as only colors are used from this theme

This closes apache#8904

NIFI-12801 Add local file upload option in PutHDFS processor

This closes apache#8415.

Signed-off-by: Peter Turcsanyi <turcsanyi@apache.org>

NIFI-13329 - Updating the standard content viewer to render an error message when there is an error formatting.

Co-authored-by: Pierre Villard <pierre.villard.fr@gmail.com>
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes apache#8905.

NIFI-13342 restored sts dependency in aws service api

Signed-off-by: Matt Burgess <mattyb149@apache.org>

This closes apache#8910

NIFI-11078: Adds Component UUID to Flow Configuration History Table (apache#8909)

This closes apache#8909

Update BinFiles not to write attributes to FlowFiles for auto-terminated ORIGINAL relationship

Signed-off-by: Matt Burgess <mattyb149@apache.org>

This closes apache#8911

NIFI-13350: (apache#8912)

- Allowing parameters to be edited in New Parameter Context dialog.
- Ensuring the proper tab is selected in the Parameter Context dialog based on the current usage.

This closes apache#8912

NIFI-13138 Add Bundle extensions name and description in NiFi Registry

This closes apache#8740

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13352 Adjusted Shutdown handling in ListenOTLP and Test Class
This closes apache#8913

- Added quick duration for shutdown quiet period in ListenOTLP HttpServerFactory
- Added TestRunner.stop() to ListenOTLPTest to close listening sockets
- Increased Connect Timeout from 5 to 10 seconds in ListenOTLPTest

Signed-off-by: Joseph Witt <joewitt@apache.org>

NIFI-13337: (apache#8915)

- Adjust column widths of the queue listing table.

NIFI-13310 merged RAT declarations

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes apache#8916.

NIFI-13231 Added App Private Key Auth to GitHub FlowRegistryClient

This closes apache#8890

Signed-off-by: David Handermann <exceptionfactory@apache.org>
Co-authored-by: David Handermann <exceptionfactory@apache.org>

[NIFI-13355] move view cluster details and view flow configuration details into action kebab menus (apache#8921)

This closes apache#8921

NIFI-13288 Improved SplitXml and SplitAvro to call session.putAttributes()

This closes apache#8917

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13351 Improved QueryDatabaseTable Processors to call session.putAttributes()

This closes apache#8919

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13339 Set sensitive as true in USM Users JSON content on ListenTrapSNMP

This closes apache#8908

Signed-off-by: David Handermann <exceptionfactory@apache.org>

[NIFI-13353] improve anchor tag hover state styles in dark mode (apache#8920)

This closes apache#8920

NIFI-13357 Removed APP_INSTALLATION_TOKEN from GitHubFlowRegistryClient (apache#8923)

Signed-off-by: David Handermann <exceptionfactory@apache.org>

[NIFI-13349] align angular material and tailwind typography (apache#8918)

* [NIFI-13349] align angular material and tailwind typography

* override default tailwind fontSize configurations to match up with angular material typography configuration

* cleanup duplicate style

* add text-3xl tailwind configuration

* update primary-node-only to use text-sm

* replace .refresh-container with text-sm

* add comments for $subtitle-2 material typography config

* adjust $subtitle-2 font size and line height

This closes apache#8918

[NIFI-13331] set default table density to -4 for all listings in nifi (apache#8925)

This closes apache#8925

[NIFI-13361] determine extension description height base on $body-2 line-height configuration (apache#8927)

This closes apache#8927

[NIFI-13360] rename nifi theme to supplemental theme (apache#8926)

* [NIFI-13360] rename nifi theme to supplemental theme

* Update nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/src/main/nifi/apps/nifi/src/assets/styles/_app.scss

Co-authored-by: Rob Fellows <rob.fellows@gmail.com>

* Update nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/src/main/nifi/apps/nifi/src/assets/styles/_app.scss

Co-authored-by: Rob Fellows <rob.fellows@gmail.com>

---------

Co-authored-by: Rob Fellows <rob.fellows@gmail.com>

This closes apache#8926

NIFI-13030 Adding endpoint for comparing versions of registered flows

This closes apache#8670

Signed-off-by: Peter Gyori <pgyori@apache.org>

NIFI-13313: Remove old UI (apache#8906)

* NIFI-13313:
- Use nifi-web-frontend as the default UI hosted at /nifi no longer deploying nifi-web-ui.

* NIFI-13313:
- Adding logout complete page.
- Updating backend to redirect to new logout complete page.

* NIFI-13313:
- Remove nifi-web-ui module.

* NIFI-13313:
- Updating LICENSE and NOTICE files for dependencies that are no longer included.

* NIFI-13313:
- Updating README.
- Updating proxy config to mirror actual context path.

* NIFI-13313:
- Establishing rewrite rules for redirecting logout complete.
- Setting the default handler for when a request isn't handled to redirect the user to /nifi.

* NIFI-13313:
- Removing nifi-web-error module.

* NIFI-13313:
- Restoring /nifi/logout-complete path.

* NIFI-13313:
- Adding an error handler for the ui which handles redirects to a 404 page.

This closes apache#8906

NIFI-13365 - Fix unit tests running in kubernetes pod

NIFI-13364 Removed autorefresh and banner UI properties

This closes apache#8932

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13367: (apache#8933)

- Updating the page title to align with the root Process Group.

This closes apache#8933

NIFI-13368: (apache#8931)

- Allowing tooltip mouse listeners to be destroyed when necessary.
- Ensuring connection source/destination run status and validation errors are updated when deleted.

This closes apache#8931

Trigger CI pipeline

[NIFI-13303] - Remove text indicating property verification is disabled. (apache#8884)

This closes apache#8884

[NIFI-13269] - Order parameter reference list alphabetically (apache#8885)

* [NIFI-13269] - Order parameter reference list alphabetically

* ran prettier:format to address minor code style issue

* update nfpr and nfel to sort combo entries the same as the combo entries in the property table (case insensitive)

This closes apache#8885

NIFI-13284: (apache#8891)

- Only saving canvas routes that are not edit or history.

This closes apache#8891

NIFI-12343 Added Max JSON Field String Length for Elasticsearch

This closes apache#8881

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13308 Upgraded Spring Framework from 6.1.7 to 6.1.8

- Upgraded Spring Boot from 3.2.5 to 3.2.6
- Upgraded Slack bolt-socket-mode from 1.39.2 to 1.39.3
- Upgraded maven-artifact from 3.9.6 to 3.9.7
- Upgraded mariadb-java-client from 3.3.3 to 3.4.0
- Upgraded software.amazon.awssdk from 2.25.55 to 2.25.60
- Upgraded com.amazonaws from 1.12.725 to 1.12.730
- Upgraded Jersey from 3.1.6 to 3.1.7
- Upgraded Netty from 4.1.109.Final to 4.1.110.Final
- Upgraded box-java-sdk from 4.9.0 to 4.9.1

This closes apache#8887

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13299: (apache#8894)

- Adding min validators where appropriate.

This closes apache#8894

NIFI-13289 add tooltips to NewCanvasItem (apache#8870)

This closes apache#8870

NIFI-13315 Fixed ListAzureBlobStorage_v12 fails when Record Writer is used

This closes apache#8897

Signed-off-by: Mark Bathori <mbathori@apache.org>

[NIFI-13312] - Restructure as an Nx monorepo (apache#8893)

* [NIFI-13312] - Restructure as an Nx monorepo

* restored lint:fix functionality, updated package-lock

This closes apache#8893

[NIFI-13234] update unauthorized canvas component colors (apache#8902)

* [NIFI-13234] update unautorized canvas component colors

* restore web font loader to ensure positions of canvas text is calculate correctly

This closes apache#8902

[NIFI-13246] move actions from details columns into menu (apache#8900)

* [NIFI-13246] move actions from details columns into menu

* move View Documentation menu option lower

This closes apache#8900

NIFI-13321: (apache#8901)

- Fixing the mocking of child components in unit tests.
- Removing any provided dependency that is no longer needed.

This closes apache#8901

NIFI-13265 Removed instantiation of Object arrays for log arguments

This closes apache#8896

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13309 Lookup compatible bundles even if previous flow was empty

Signed-off-by: Ferenc Kis <briansolo1985@gmail.com>

This closes apache#8888.

NIFI-13320 Upgraded Spring Boot from 3.2.6 to 3.3.0

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes apache#8899.

NIFI-13267 - Bump NiFi NAR Maven plugin version (apache#8860)

* NIFI-13267 - Bump NiFi NAR Maven plugin version
* Review - adding Parameter Providers and Flow Analaysis Rules in c2-protocol-component-api ComponentManifest
* Review - fix build() of ComponentManifest

NIFI-13307 Replaced KeyStoreUtils with nifi-security-ssl Builders (apache#8895)

- Removed unused test classes from nifi-web-api

NIFI-13336 updating various deps for aws google azure and more

- com.amazonaws	* 1.12.730 1.12.733
- com.azure azure-sdk-bom 1.2.23 1.2.24
- com.google.cloud libraries-bom 26.39.0 26.40.0
- commons-cli 1.7.0 1.8.0
- commons-net 3.10.0 3.11.0
- io.fabric8 * 6.12.1 6.13.0
- org.apache.commons commons-compress 1.26.1 1.26.2
- software.amazon.awssdk 2.25.60 2.25.63
- com.google.apis	google-api-services-drive v3-rev20240327-2.0.0	 v3-rev20240521-2.0.0
- org.neo4j.driver	neo4j-java-driver 5.20.0 5.21.0
- org.springframework.integration	spring-integration-mail 6.2.4 6.2.5

Signed-off-by: Joseph Witt <joewitt@apache.org>
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes apache#8907.

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

[NIFI-13325] update dark mode theme density to match light mode (apache#8904)

* [NIFI-13325] update dark mode theme density to match light mode

* remove density from nifi themes as only colors are used from this theme

This closes apache#8904

NIFI-12801 Add local file upload option in PutHDFS processor

This closes apache#8415.

Signed-off-by: Peter Turcsanyi <turcsanyi@apache.org>

NIFI-13329 - Updating the standard content viewer to render an error message when there is an error formatting.

Co-authored-by: Pierre Villard <pierre.villard.fr@gmail.com>
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes apache#8905.

NIFI-13342 restored sts dependency in aws service api

Signed-off-by: Matt Burgess <mattyb149@apache.org>

This closes apache#8910

NIFI-11078: Adds Component UUID to Flow Configuration History Table (apache#8909)

This closes apache#8909

Update BinFiles not to write attributes to FlowFiles for auto-terminated ORIGINAL relationship

Signed-off-by: Matt Burgess <mattyb149@apache.org>

This closes apache#8911

NIFI-13350: (apache#8912)

- Allowing parameters to be edited in New Parameter Context dialog.
- Ensuring the proper tab is selected in the Parameter Context dialog based on the current usage.

This closes apache#8912

NIFI-13138 Add Bundle extensions name and description in NiFi Registry

This closes apache#8740

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13352 Adjusted Shutdown handling in ListenOTLP and Test Class
This closes apache#8913

- Added quick duration for shutdown quiet period in ListenOTLP HttpServerFactory
- Added TestRunner.stop() to ListenOTLPTest to close listening sockets
- Increased Connect Timeout from 5 to 10 seconds in ListenOTLPTest

Signed-off-by: Joseph Witt <joewitt@apache.org>

NIFI-13337: (apache#8915)

- Adjust column widths of the queue listing table.

NIFI-13310 merged RAT declarations

Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes apache#8916.

NIFI-13231 Added App Private Key Auth to GitHub FlowRegistryClient

This closes apache#8890

Signed-off-by: David Handermann <exceptionfactory@apache.org>
Co-authored-by: David Handermann <exceptionfactory@apache.org>

[NIFI-13355] move view cluster details and view flow configuration details into action kebab menus (apache#8921)

This closes apache#8921

NIFI-13288 Improved SplitXml and SplitAvro to call session.putAttributes()

This closes apache#8917

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13351 Improved QueryDatabaseTable Processors to call session.putAttributes()

This closes apache#8919

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13339 Set sensitive as true in USM Users JSON content on ListenTrapSNMP

This closes apache#8908

Signed-off-by: David Handermann <exceptionfactory@apache.org>

[NIFI-13353] improve anchor tag hover state styles in dark mode (apache#8920)

This closes apache#8920

NIFI-13357 Removed APP_INSTALLATION_TOKEN from GitHubFlowRegistryClient (apache#8923)

Signed-off-by: David Handermann <exceptionfactory@apache.org>

[NIFI-13349] align angular material and tailwind typography (apache#8918)

* [NIFI-13349] align angular material and tailwind typography

* override default tailwind fontSize configurations to match up with angular material typography configuration

* cleanup duplicate style

* add text-3xl tailwind configuration

* update primary-node-only to use text-sm

* replace .refresh-container with text-sm

* add comments for $subtitle-2 material typography config

* adjust $subtitle-2 font size and line height

This closes apache#8918

[NIFI-13331] set default table density to -4 for all listings in nifi (apache#8925)

This closes apache#8925

[NIFI-13361] determine extension description height base on $body-2 line-height configuration (apache#8927)

This closes apache#8927

[NIFI-13360] rename nifi theme to supplemental theme (apache#8926)

* [NIFI-13360] rename nifi theme to supplemental theme

* Update nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/src/main/nifi/apps/nifi/src/assets/styles/_app.scss

Co-authored-by: Rob Fellows <rob.fellows@gmail.com>

* Update nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/src/main/nifi/apps/nifi/src/assets/styles/_app.scss

Co-authored-by: Rob Fellows <rob.fellows@gmail.com>

---------

Co-authored-by: Rob Fellows <rob.fellows@gmail.com>

This closes apache#8926

NIFI-13030 Adding endpoint for comparing versions of registered flows

This closes apache#8670

Signed-off-by: Peter Gyori <pgyori@apache.org>

NIFI-13313: Remove old UI (apache#8906)

* NIFI-13313:
- Use nifi-web-frontend as the default UI hosted at /nifi no longer deploying nifi-web-ui.

* NIFI-13313:
- Adding logout complete page.
- Updating backend to redirect to new logout complete page.

* NIFI-13313:
- Remove nifi-web-ui module.

* NIFI-13313:
- Updating LICENSE and NOTICE files for dependencies that are no longer included.

* NIFI-13313:
- Updating README.
- Updating proxy config to mirror actual context path.

* NIFI-13313:
- Establishing rewrite rules for redirecting logout complete.
- Setting the default handler for when a request isn't handled to redirect the user to /nifi.

* NIFI-13313:
- Removing nifi-web-error module.

* NIFI-13313:
- Restoring /nifi/logout-complete path.

* NIFI-13313:
- Adding an error handler for the ui which handles redirects to a 404 page.

This closes apache#8906

NIFI-13365 - Fix unit tests running in kubernetes pod

NIFI-13364 Removed autorefresh and banner UI properties

This closes apache#8932

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13367: (apache#8933)

- Updating the page title to align with the root Process Group.

This closes apache#8933

NIFI-13368: (apache#8931)

- Allowing tooltip mouse listeners to be destroyed when necessary.
- Ensuring connection source/destination run status and validation errors are updated when deleted.

This closes apache#8931

Add dynamic topic change capability

[NIFI-13370] - dark-mode support for browser inputs (apache#8935)

This closes apache#8935

NIFI-13354: (apache#8936)

- Moving NiFi front end source into a top level maven module. This prepares for the introduction of other UIs that NiFi offers (like Custom UIs, Data Viewers, etc) to be colocated and share common components, styles, and dependencies.
- The nifi-web-frontend module which produces the war that is included in the server nar now no longer contains any source. It simply depends on the new nifi-frontend artifact that bundles all built UIs and unpacks its contents into the resulting war.
- Renaming nifi-web-frontend to nifi-ui. Now nifi-frontend at the top level will hold all frontend apps. In this commit the nifi app in nifi-frontend is bundled into a war called nifi-ui.

This closes apache#8936

NIFI-12983 Qdrant vector store support

Co-authored-by: Pierre Villard <pierre.villard.fr@gmail.com>
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes apache#8590.

NIFI-13375 Added missing logging parameter in SplitRecord

Signed-off-by: Mike Moser <mosermw@apache.org>

This closes apache#8941

NIFI-13378: Adds Version State as filterable option in Process Groups tab in Summary (apache#8945)

* NIFI-13378: Adds Version State as filterable option in Process Groups tab in Summary

* updated value of selections to enum values

This closes apache#8945

[NIFI-13371] update canvas context menu (apache#8949)

This closes apache#8949

NIFI-13373: Adding support for banner text (apache#8947)

* NIFI-13373:
- Adding support for banner text.

* NIFI-13373:
- Prettier.

* NIFI-13373:
- Removing unused property.

* NIFI-13373:
- Defining reponse payload when loading banner text.
- Removing banner text from login, logout, and error pages.

* NIFI-13373:
- Only loading the banner text when necessary.

This closes apache#8947

NIFI-13385: (apache#8953)

- Disabling nx daemon during builds.

This closes apache#8953

NIFI-13359 Tune ExecuteSQL/Record to create fewer transient flow files

Signed-off-by: Matt Burgess <mattyb149@apache.org>

This closes apache#8928

NIFI-13383 Changed info log level to debug in XXEValidator (apache#8952)

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13266 Removed String concatenation in logging messages (apache#8940)

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13242 MiNiFi Sync Resource C2 command

Signed-off-by: Ferenc Erdei <erdei.ferenc90@gmail.com>
This closes apache#8898.

NIFI-13391: (apache#8960)

- Setting up different environment files to configure ngrx store.

NIFI-13379 Replaced use of deprecated com.nimbusds.oauth2.sdk.http.HTTPResponse method getContentAsJSONObject with API suggested replacement getBodyAsJSONObject.

This closes apache#8944

Signed-off-by: Mike Thomsen <mthomsen@apache.org>

Improving Junit test to better cover the feature

Remove unnecessary code

Fix bootstrap server

NIFI-13382: (apache#8957)

- Showing a full page error when the front end can no longer communicate with the back end.

This closes apache#8957

NIFI-13388 Add NiFi CLI support for Flow Analysis Rules

This closes apache#8954.

Signed-off-by: Peter Turcsanyi <turcsanyi@apache.org>

NIFI-13401 Upgraded Spring to 6.1.9 and Jetty to 12.0.10 and others

- Upgraded com.amazonaws from 1.12.733 to 1.12.742
- Upgraded software.amazon.awssdk from 2.25.63 to 2.26.1
- Upgraded com.box SDK from 4.9.1 to 4.10.0
- Upgraded commons-net from 3.11.0 to 3.11.1
- Upgraded io.dropwizard.metrics from 4.2.25 to 4.2.26
- Upgraded Netty from 4.1.110.Final to 4.1.111.Final
- Upgraded Commons Configuration2 from 2.10.1 to 2.11.0
- Upgraded Lucene from 9.10.0 to 9.11.0
- Upgraded org.checkerframework from 3.43.0 to 3.44.0
- Upgraded org.eclipse.jdt ecj from 3.37.0 to 3.38.0
- Upgraded Jetty from 12.0.9 to 12.0.10
- Upgraded Elasticsearch Client from 8.13.4 to 8.14.1
- Upgraded Spring Framework from 6.1.8 to 6.1.9
- Upgraded com.slack.api from 1.39.3 to 1.40.0
- Upgraded io.projectreactor from 3.6.6 to 3.6.7
- Upgraded JGit from 6.9.0.202403050737-r to 6.10.0.202406032230-r
- Upgraded Flyway from 10.13.0 to 10.15.0
- Upgraded Spring Integration from 6.2.5 to 6.3.0

This closes apache#8966

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13405 Upgraded MSAL4J from 1.15.0 to 1.15.1

This closes apache#8956

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13324 Set FlowFile attributes for Python Processors on failure

In case a Python Processor routes a FlowFile to failure and returns attributes, add those attributes to the 'original' FlowFile before routing to 'failure'

This closes apache#8943

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13381 Use AllowableValue for PutSFTP/PutFTP Conflict Resolution

This closes apache#8950

Signed-off-by: David Handermann <exceptionfactory@apache.org>

NIFI-13380: When determining if Record Type A is 'wider' than Record Type B, and both have a RECORD with the same name but different schemas, instead of determining that A is not wider than B, perform a recursive comparison to check if the RECORD within A's schema is wider than the RECORD within B's schema.

Signed-off-by: Matt Burgess <mattyb149@apache.org>

This closes apache#8948
  • Loading branch information
mcgilman authored and andrealves23 committed Jun 17, 2024
1 parent a1a7c3c commit d0482c1
Show file tree
Hide file tree
Showing 3,855 changed files with 220,594 additions and 188,825 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
4 changes: 0 additions & 4 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,6 @@ Please indicate the verification steps performed prior to pull request creation.
- [ ] Build completed using `mvn clean install -P contrib-check`
- [ ] JDK 21

### UI Contributions

- [ ] NiFi is modernizing its UI. Any contributions that update the [current UI](https://github.com/apache/nifi/tree/main/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui) also need to be implemented in the [new UI](https://github.com/apache/nifi/tree/main/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/src/main/nifi).

### Licensing

- [ ] New dependencies are compatible with the [Apache License 2.0](https://apache.org/licenses/LICENSE-2.0) according to the [License Policy](https://www.apache.org/legal/resolved.html)
Expand Down
8 changes: 5 additions & 3 deletions .github/workflows/ci-workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,8 @@ env:
-pl -:nifi-nar-provider-assembly
-pl -:nifi-py4j-integration-tests
-pl -:nifi-python-extensions-bundle
-pl -:nifi-server-nar
-pl -:nifi-ui
MAVEN_VERIFY_COMMAND: >-
verify
--show-version
Expand Down Expand Up @@ -163,7 +165,7 @@ jobs:
with:
filters: |
frontend:
- 'nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/**'
- 'nifi-frontend/**'
- name: Maven Compile
env:
MAVEN_OPTS: >-
Expand Down Expand Up @@ -236,7 +238,7 @@ jobs:
with:
filters: |
frontend:
- 'nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/**'
- 'nifi-frontend/**'
- name: Maven Compile
env:
MAVEN_OPTS: >-
Expand Down Expand Up @@ -311,7 +313,7 @@ jobs:
with:
filters: |
frontend:
- 'nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-frontend/**'
- 'nifi-frontend/**'
- name: Maven Compile
env:
MAVEN_OPTS: >-
Expand Down
22 changes: 0 additions & 22 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -253,28 +253,6 @@ This product bundles 'CodeMirror' which is available under an MIT style license.
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

This product bundles 'jquery.base64.js' which is available under an MIT style license.

Copyright (c) 2013 Yannick Albert (http://yckart.com/)

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

This product bundles HexViewJS available under an MIT License

Copyright (c) 2010 Nick McVeity <nmcveity@gmail.com>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,10 @@

package org.apache.nifi.c2.client.api;

import java.io.InputStream;
import java.nio.file.Path;
import java.util.Optional;
import java.util.function.Function;
import org.apache.nifi.c2.protocol.api.C2Heartbeat;
import org.apache.nifi.c2.protocol.api.C2HeartbeatResponse;
import org.apache.nifi.c2.protocol.api.C2OperationAck;
Expand Down Expand Up @@ -58,6 +61,16 @@ public interface C2Client {
*/
Optional<byte[]> retrieveUpdateAssetContent(String callbackUrl);

/**
* Retrieves a resource from the C2 server. The resource is not materialized into a byte[],
* instead a consumer is provided to stream the data to a specified location
*
* @param callbackUrl url where the resource should be downloaded from
* @param resourceConsumer consumer to handle the incoming data as a stream
* @return the path of the downloaded resource. Will be empty if no content can be downloaded or an error occurred
*/
Optional<Path> retrieveResourceItem(String callbackUrl, Function<InputStream, Optional<Path>> resourceConsumer);

/**
* Uploads a binary bundle to C2 server
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,19 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package org.apache.nifi.c2.serializer;

import static java.util.Optional.empty;
import static java.util.Optional.ofNullable;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.util.Optional;

import com.fasterxml.jackson.databind.module.SimpleModule;
import java.util.Optional;
import org.apache.nifi.c2.protocol.api.OperandType;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Expand All @@ -48,7 +52,7 @@ public C2JacksonSerializer() {
public <T> Optional<String> serialize(T object) {
if (object == null) {
logger.trace("C2 Object was null. Nothing to serialize. Returning empty.");
return Optional.empty();
return empty();
}

String contentString = null;
Expand All @@ -58,14 +62,14 @@ public <T> Optional<String> serialize(T object) {
logger.error("Object serialization to JSON failed", e);
}

return Optional.ofNullable(contentString);
return ofNullable(contentString);
}

@Override
public <T> Optional<T> deserialize(String content, Class<T> valueType) {
if (content == null) {
logger.trace("Content for deserialization was null. Returning empty.");
return Optional.empty();
logger.trace("Content for deserialization was null. Returning empty");
return empty();
}

T responseObject = null;
Expand All @@ -75,6 +79,21 @@ public <T> Optional<T> deserialize(String content, Class<T> valueType) {
logger.error("Object deserialization from JSON failed", e);
}

return Optional.ofNullable(responseObject);
return ofNullable(responseObject);
}

@Override
public <T> Optional<T> convert(Object content, TypeReference<T> valueType) {
if (content == null) {
logger.trace("Content for conversion was null. Returning empty");
return empty();
}

try {
return ofNullable(objectMapper.convertValue(content, valueType));
} catch (IllegalArgumentException e) {
logger.error("Object conversion failed", e);
return empty();
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package org.apache.nifi.c2.serializer;

import com.fasterxml.jackson.core.type.TypeReference;
import java.util.Optional;

/**
Expand All @@ -27,18 +29,28 @@ public interface C2Serializer {
* Helper to serialise object
*
* @param content object to be serialised
* @param <T> the type of the object
* @param <T> the type of the object
* @return the serialised string representation of the parameter object if it was successful empty otherwise
*/
<T> Optional<String> serialize(T content);

/**
* Helper to deserialise an object
* Helper to deserialize an object
*
* @param content the string representation of the object to be deserialsed
* @param content the string representation of the object to be deserialized
* @param valueType the class of the target object
* @param <T> the type of the target object
* @param <T> the type of the target object
* @return the deserialised object if successful empty otherwise
*/
<T> Optional<T> deserialize(String content, Class<T> valueType);

/**
* Helper to convert a JSON object into a specific type
*
* @param content the string representation of the object to be deserialized
* @param valueType the class of the target object
* @param <T> the type of the target object
* @return the converted object if the conversion was successful empty otherwise
*/
<T> Optional<T> convert(Object content, TypeReference<T> valueType);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
<<<<<<<< HEAD:nifi-commons/nifi-security-ssl/src/main/java/org/apache/nifi/security/ssl/KeyManagerFactoryBuilder.java
package org.apache.nifi.security.ssl;

import javax.net.ssl.KeyManagerFactory;

/**
* Builder interface for instances of java.security.ssl.KeyManagerFactory
*/
public interface KeyManagerFactoryBuilder {
/**
* Build Key Manager Factory using configured properties
*
* @return Key Manager Factory
*/
KeyManagerFactory build();
========

package org.apache.nifi.c2.util;

public abstract class Preconditions {

private Preconditions() {
}

public static void requires(boolean criterion, String exceptionMessage) {
if (!criterion) {
throw new IllegalArgumentException(exceptionMessage);
}
}
>>>>>>>> b6d3a4987a (Trigger CI pipeline):c2/c2-client-bundle/c2-client-base/src/main/java/org/apache/nifi/c2/util/Preconditions.java
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,18 @@

package org.apache.nifi.c2.client.http;

import static java.lang.String.format;
import static java.util.Optional.empty;
import static java.util.Optional.ofNullable;
import static okhttp3.MultipartBody.FORM;

import java.io.IOException;
import java.io.InputStream;
import java.nio.file.Path;
import java.util.Map;
import java.util.Optional;
import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Function;
import okhttp3.Headers;
import okhttp3.MediaType;
import okhttp3.MultipartBody;
Expand Down Expand Up @@ -95,6 +101,27 @@ public Optional<byte[]> retrieveUpdateAssetContent(String callbackUrl) {
return retrieveContent(callbackUrl, Map.of());
}

@Override
public Optional<Path> retrieveResourceItem(String callbackUrl, Function<InputStream, Optional<Path>> resourceConsumer) {
Request request = new Request.Builder()
.get()
.url(callbackUrl)
.build();

try (Response response = httpClientReference.get().newCall(request).execute()) {
if (!response.isSuccessful()) {
throw new C2ServerException("Resource content retrieval failed with HTTP return code " + response.code());
}
return ofNullable(response.body())
.map(ResponseBody::byteStream)
.map(resourceConsumer::apply)
.orElseThrow(() -> new C2ServerException("Resource content retrieval failed with empty body"));
} catch (Exception e) {
logger.warn("Resource item retrieval failed", e);
return empty();
}
}

@Override
public Optional<String> uploadBundle(String callbackUrl, byte[] bundle) {
Request request = new Request.Builder()
Expand All @@ -115,7 +142,7 @@ public Optional<String> uploadBundle(String callbackUrl, byte[] bundle) {
logger.error("Could not upload bundle to C2 server {}", callbackUrl, e);
return Optional.of("Could not upload bundle to C2 server");
}
return Optional.empty();
return empty();
}

@Override
Expand All @@ -124,7 +151,7 @@ public Optional<String> getCallbackUrl(String absoluteUrl, String relativeUrl) {
}

private Optional<C2HeartbeatResponse> sendHeartbeat(String heartbeat) {
Optional<C2HeartbeatResponse> c2HeartbeatResponse = Optional.empty();
Optional<C2HeartbeatResponse> c2HeartbeatResponse = empty();
Request request = new Request.Builder()
.post(RequestBody.create(heartbeat, MEDIA_TYPE_APPLICATION_JSON))
.url(c2UrlProvider.getHeartbeatUrl())
Expand All @@ -151,7 +178,7 @@ private Optional<String> getResponseBody(Response response) {
logger.error("HTTP Request failed", e);
}

return Optional.ofNullable(responseBody);
return ofNullable(responseBody);
}

private void sendAck(Request request) {
Expand All @@ -165,7 +192,7 @@ private void sendAck(Request request) {
}

private Optional<byte[]> retrieveContent(String callbackUrl, Map<String, String> httpHeaders) {
Optional<byte[]> content = Optional.empty();
Optional<byte[]> content = empty();

Request.Builder requestBuilder = new Request.Builder()
.get()
Expand All @@ -174,10 +201,10 @@ private Optional<byte[]> retrieveContent(String callbackUrl, Map<String, String>
Request request = requestBuilder.build();

try (Response response = httpClientReference.get().newCall(request).execute()) {
Optional<ResponseBody> body = Optional.ofNullable(response.body());
Optional<ResponseBody> body = ofNullable(response.body());

if (!response.isSuccessful()) {
StringBuilder messageBuilder = new StringBuilder(String.format("Update content retrieval failed: HTTP %d", response.code()));
StringBuilder messageBuilder = new StringBuilder(format("Update content retrieval failed: HTTP %d", response.code()));
body.map(Object::toString).ifPresent(messageBuilder::append);
throw new C2ServerException(messageBuilder.toString());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ private Optional<String> toAbsoluteUrl(String path) {
try {
return Optional.of(c2RestPathBase.resolve(stripStart(path, SLASH)).toString()); // leading slash needs to be removed for proper URL creation
} catch (Exception e) {
LOG.error("Unable to convert restBase=" + c2RestPathBase + " and restPath=" + path + " to absolute url", e);
LOG.error("Unable to convert restBase={} and restPath={} to absolute url", c2RestPathBase, path, e);
return Optional.empty();
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ void testPublishHeartbeatSuccess() throws InterruptedException {
mockWebServer.enqueue(new MockResponse().setBody("responseBody"));

when(serializer.serialize(any(C2Heartbeat.class))).thenReturn(Optional.of("Heartbeat"));
when(serializer.deserialize(any(), any())).thenReturn(Optional.of(hbResponse));
when(serializer.deserialize(any(), any(Class.class))).thenReturn(Optional.of(hbResponse));

C2HttpClient c2HttpClient = C2HttpClient.create(c2ClientConfig, serializer);
Optional<C2HeartbeatResponse> response = c2HttpClient.publishHeartbeat(new C2Heartbeat());
Expand Down
Loading

0 comments on commit d0482c1

Please sign in to comment.