[jira] [Updated] (NIFI-12517) Expression Language isJson and AttributesToJSON processor do not consider an attribute with leading and trailing spaces to be JSON

2023-12-29 Thread David Handermann (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12517?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Handermann updated NIFI-12517:

Fix Version/s: 1.25.0
   2.0.0
   Resolution: Fixed
   Status: Resolved  (was: Patch Available)

> Expression Language isJson and AttributesToJSON processor do not consider an 
> attribute with leading and trailing spaces to be JSON
> --
>
> Key: NIFI-12517
> URL: https://issues.apache.org/jira/browse/NIFI-12517
> Project: Apache NiFi
>  Issue Type: Bug
>Reporter: Daniel Stieglitz
>Assignee: Daniel Stieglitz
>Priority: Minor
>  Labels: backport-needed
> Fix For: 1.25.0, 2.0.0
>
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> If there is an attribute which has embedded JSON but it has leading and and 
> trailing spaces e.g.
> {code:java}
> "\n{\"name\":\"John\", \"age\":30, \"car\":null}\n"{code}
> the NIFI Expression Language isJson method does not consider it JSON and the 
> AttributesToJSON processor when the JsonHandlingStrategy is NESTED does not 
> consider it JSON. This is contrary to Jackson's ObjectMapper behavior which 
> will parse the above example as a map.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (NIFI-12517) Expression Language isJson and AttributesToJSON processor do not consider an attribute with leading and trailing spaces to be JSON

2023-12-29 Thread David Handermann (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12517?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Handermann updated NIFI-12517:

Summary: Expression Language isJson and AttributesToJSON processor do not 
consider an attribute with leading and trailing spaces to be JSON  (was: Nifi 
Expression Language isJson and the AttributesToJSON processor does not consider 
an attribute with leading and trailing spaces to be JSON)

> Expression Language isJson and AttributesToJSON processor do not consider an 
> attribute with leading and trailing spaces to be JSON
> --
>
> Key: NIFI-12517
> URL: https://issues.apache.org/jira/browse/NIFI-12517
> Project: Apache NiFi
>  Issue Type: Bug
>Reporter: Daniel Stieglitz
>Assignee: Daniel Stieglitz
>Priority: Minor
>  Labels: backport-needed
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> If there is an attribute which has embedded JSON but it has leading and and 
> trailing spaces e.g.
> {code:java}
> "\n{\"name\":\"John\", \"age\":30, \"car\":null}\n"{code}
> the NIFI Expression Language isJson method does not consider it JSON and the 
> AttributesToJSON processor when the JsonHandlingStrategy is NESTED does not 
> consider it JSON. This is contrary to Jackson's ObjectMapper behavior which 
> will parse the above example as a map.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (NIFI-12517) Nifi Expression Language isJson and the AttributesToJSON processor does not consider an attribute with leading and trailing spaces to be JSON

2023-12-29 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-12517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17801292#comment-17801292
 ] 

ASF subversion and git services commented on NIFI-12517:


Commit 6e38beaccf6e83ba92181b43cf9c939d9b4b8b67 in nifi's branch 
refs/heads/support/nifi-1.x from dan-s1
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=6e38beaccf ]

NIFI-12517 Updated isJson function to improve space handling

- The isJson Expression Language function returns true regardless of leading or 
trailing spaces

This closes #8165

Signed-off-by: David Handermann 
(cherry picked from commit 3e62e1e7f20d1c57a5c23ab92b5558ef62f687e9)


> Nifi Expression Language isJson and the AttributesToJSON processor does not 
> consider an attribute with leading and trailing spaces to be JSON
> -
>
> Key: NIFI-12517
> URL: https://issues.apache.org/jira/browse/NIFI-12517
> Project: Apache NiFi
>  Issue Type: Bug
>Reporter: Daniel Stieglitz
>Assignee: Daniel Stieglitz
>Priority: Minor
>  Labels: backport-needed
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> If there is an attribute which has embedded JSON but it has leading and and 
> trailing spaces e.g.
> {code:java}
> "\n{\"name\":\"John\", \"age\":30, \"car\":null}\n"{code}
> the NIFI Expression Language isJson method does not consider it JSON and the 
> AttributesToJSON processor when the JsonHandlingStrategy is NESTED does not 
> consider it JSON. This is contrary to Jackson's ObjectMapper behavior which 
> will parse the above example as a map.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (NIFI-12517) Nifi Expression Language isJson and the AttributesToJSON processor does not consider an attribute with leading and trailing spaces to be JSON

2023-12-29 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-12517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17801290#comment-17801290
 ] 

ASF subversion and git services commented on NIFI-12517:


Commit 3e62e1e7f20d1c57a5c23ab92b5558ef62f687e9 in nifi's branch 
refs/heads/main from dan-s1
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=3e62e1e7f2 ]

NIFI-12517 Updated isJson function to improve space handling

- The isJson Expression Language function returns true regardless of leading or 
trailing spaces

This closes #8165

Signed-off-by: David Handermann 


> Nifi Expression Language isJson and the AttributesToJSON processor does not 
> consider an attribute with leading and trailing spaces to be JSON
> -
>
> Key: NIFI-12517
> URL: https://issues.apache.org/jira/browse/NIFI-12517
> Project: Apache NiFi
>  Issue Type: Bug
>Reporter: Daniel Stieglitz
>Assignee: Daniel Stieglitz
>Priority: Minor
>  Labels: backport-needed
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> If there is an attribute which has embedded JSON but it has leading and and 
> trailing spaces e.g.
> {code:java}
> "\n{\"name\":\"John\", \"age\":30, \"car\":null}\n"{code}
> the NIFI Expression Language isJson method does not consider it JSON and the 
> AttributesToJSON processor when the JsonHandlingStrategy is NESTED does not 
> consider it JSON. This is contrary to Jackson's ObjectMapper behavior which 
> will parse the above example as a map.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [PR] NIFI-12517 Enabled an attribute to be considered JSON even if it has leading and trailing spaces. [nifi]

2023-12-29 Thread via GitHub


exceptionfactory closed pull request #8165: NIFI-12517 Enabled an attribute to 
be considered JSON even if it has leading and trailing spaces.
URL: https://github.com/apache/nifi/pull/8165


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



Re: [PR] NIFI-11858 Configurable Column Name Normalization in PutDatabaseRecord and UpdateDatabaseTable [nifi]

2023-12-29 Thread via GitHub


ravinarayansingh commented on code in PR #7544:
URL: https://github.com/apache/nifi/pull/7544#discussion_r1438454454


##
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/db/ColumnNameNormalizerUtilityTest.java:
##
@@ -0,0 +1,77 @@
+/*
+ * 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.
+ */
+
+package org.apache.nifi.processors.standard.db;
+
+import org.junit.jupiter.api.Test;
+
+import java.util.regex.Pattern;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+
+public class ColumnNameNormalizerUtilityTest {
+
+
+
+@Test
+void testNormalizingColumnName_RemoveUnderscore() {
+String inputColumnName = "example_column_name";
+String expectedNormalized = "EXAMPLECOLUMNNAME";
+String normalized = 
ColumnNameNormalizerUtility.getNormalizedName(inputColumnName,true, 
TranslationStrategy.REMOVE_UNDERSCORE, null);
+
+assertEquals(expectedNormalized, normalized);
+}
+
+@Test
+void testNormalizingColumnName_RemoveSpace() {
+String inputColumnName = "Column Name With Spaces";
+String expectedNormalized = "COLUMNNAMEWITHSPACES";
+String normalized = 
ColumnNameNormalizerUtility.getNormalizedName(inputColumnName,true, 
TranslationStrategy.REMOVE_SPACE, null);
+
+assertEquals(expectedNormalized, normalized);
+}
+
+@Test
+void testNormalizingColumnName_RemoveAllSpecialCharacters() {
+String inputColumnName = "Special!Characters@Here$";
+String expectedNormalized = "SPECIALCHARACTERSHERE";
+String normalized = 
ColumnNameNormalizerUtility.getNormalizedName(inputColumnName,true, 
TranslationStrategy.REMOVE_ALL_SPECIAL_CHAR, null);
+
+assertEquals(expectedNormalized, normalized);
+}
+
+@Test
+void testNormalizingColumnName_Regex() {
+String inputColumnName = "Your @Input -String Here";
+Pattern translationPattern = Pattern.compile("[@-]");
+String expectedNormalized = 
translationPattern.matcher(inputColumnName.toUpperCase()).replaceAll( "");

Review Comment:
   hi @dan-s1 
   I have made the changes please have a look 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[jira] [Comment Edited] (NIFI-12554) Refactor JoltTransformJSON and JoltTransformRecord processors in order to reduce duplicate code

2023-12-29 Thread Daniel Stieglitz (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-12554?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17801255#comment-17801255
 ] 

Daniel Stieglitz edited comment on NIFI-12554 at 12/29/23 8:11 PM:
---

[~exceptionfactory] I created this ticket based on the conversation with 
[~Chris S] on PR [7890|https://github.com/apache/nifi/pull/7890]. I so far 
tried following what you had advised me in PR 
[8805|https://github.com/apache/nifi/pull/8005] by creating a component 
interface with the common properties between JoltTransformJSON and 
JoltTransformRecord. I placed this in a module under nifi-commons called 
nifi-jolt-shared. What I would like to do next though is to create an 
AbstractJoltTransform processor similar to what Chris had done with 
AbstractPutElasticsearch but I am not sure where that should live as 
JoltTransformJSON is in

{code:java}
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors
{code}
and JoltTransformRecord is in 

{code:java}
nifi-nar-bundles/nifi-jolt-record-bundle/nifi-jolt-record-processors
{code}

Is this the right approach and if so where can I place the module where this 
abstract class would reside so it would be extended by JoltTransformJSON and 
JoltTransformRecord?


was (Author: JIRAUSER294662):
[~exceptionfactory] I created this ticket based on the conversation with 
[~Chris S] on PR [7890|https://github.com/apache/nifi/pull/7890]. I so far 
tried following what you had advised me in PR 
[8805|https://github.com/apache/nifi/pull/8005] by creating a component 
interface with the common properties between JoltTransformJSON and 
JoltTransformRecord. I placed this in a module under nifi-commons called 
nifi-jolt-shared. What I would like to do next though is to create an 
AbstractJoltTransform processor similar to what Chris had done with 
AbstractPutElasticsearch but I am not sure where that should live as 
JoltTransformJSON is in

{code:java}
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors
{code}
and JoltTransformRecord is in 

{code:java}
nifi-nar-bundles/nifi-jolt-record-bundle/nifi-jolt-record-processors
{code}

Is this the right approach and if so where can I place the module where this 
abstract class could live so it would be extended by JoltTransformJSON and 
JoltTransformRecord?

> Refactor JoltTransformJSON and JoltTransformRecord processors in order to 
> reduce duplicate code
> ---
>
> Key: NIFI-12554
> URL: https://issues.apache.org/jira/browse/NIFI-12554
> Project: Apache NiFi
>  Issue Type: Improvement
>Reporter: Daniel Stieglitz
>Assignee: Daniel Stieglitz
>Priority: Major
>
> There is a lot of duplicate code between the JoltTransformJSON and 
> JoltTransformRecord processors. As a result each time there is a bug 
> discovered in the duplicate code there has to be a fix applied in both places 
> (e.g. NIFI-11959 and NIFI-12165).  This ticket aims to pull up the common 
> code between JoltTransformJSON and JoltTransformRecord similar to what has 
> been done for PutElastisearchJSON and PutElastisearchRecord processors with 
> the creation of AbstractPutElasticsearch.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (NIFI-12554) Refactor JoltTransformJSON and JoltTransformRecord processors in order to reduce duplicate code

2023-12-29 Thread Daniel Stieglitz (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-12554?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17801255#comment-17801255
 ] 

Daniel Stieglitz edited comment on NIFI-12554 at 12/29/23 8:10 PM:
---

[~exceptionfactory] I created this ticket based on the conversation with 
[~Chris S] on PR [7890|https://github.com/apache/nifi/pull/7890]. I so far 
tried following what you had advised me in PR 
[8805|https://github.com/apache/nifi/pull/8005] by creating a component 
interface with the common properties between JoltTransformJSON and 
JoltTransformRecord. I placed this in a module under nifi-commons called 
nifi-jolt-shared. What I would like to do next though is to create an 
AbstractJoltTransform processor similar to what Chris had done with 
AbstractPutElasticsearch but I am not sure where that should live as 
JoltTransformJSON is in

{code:java}
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors
{code}
and JoltTransformRecord is in 

{code:java}
nifi-nar-bundles/nifi-jolt-record-bundle/nifi-jolt-record-processors
{code}

Is this the right approach and if so where can I place the module where this 
abstract class could live so it would be extended by JoltTransformJSON and 
JoltTransformRecord?


was (Author: JIRAUSER294662):
[~exceptionfactory] I created this ticket based on the conversation with 
[~Chris S] on PR [7890|https://github.com/apache/nifi/pull/7890]. I so far 
tried following what you had advised me in PR 
[8805|https://github.com/apache/nifi/pull/8005] by creating a component 
interface with the common properties between JoltTransformJSON and 
JoltTransformRecord. I placed this in a module under nifi-commons called 
nifi-jolt-shared. What I would like to do next though is to create an 
AbstractJoltTransforom processor similar to what Chris had done with 
AbstractPutElasticsearch but I am not sure where that should live as 
JoltTransformJSON is in

{code:java}
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors
{code}
and JoltTransformRecord is in 

{code:java}
nifi-nar-bundles/nifi-jolt-record-bundle/nifi-jolt-record-processors
{code}

Is this the right approach and if so where can I place the module where this 
abstract class could live so it would be extended by JoltTransformJSON and 
JoltTransformRecord?

> Refactor JoltTransformJSON and JoltTransformRecord processors in order to 
> reduce duplicate code
> ---
>
> Key: NIFI-12554
> URL: https://issues.apache.org/jira/browse/NIFI-12554
> Project: Apache NiFi
>  Issue Type: Improvement
>Reporter: Daniel Stieglitz
>Assignee: Daniel Stieglitz
>Priority: Major
>
> There is a lot of duplicate code between the JoltTransformJSON and 
> JoltTransformRecord processors. As a result each time there is a bug 
> discovered in the duplicate code there has to be a fix applied in both places 
> (e.g. NIFI-11959 and NIFI-12165).  This ticket aims to pull up the common 
> code between JoltTransformJSON and JoltTransformRecord similar to what has 
> been done for PutElastisearchJSON and PutElastisearchRecord processors with 
> the creation of AbstractPutElasticsearch.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (NIFI-12554) Refactor JoltTransformJSON and JoltTransformRecord processors in order to reduce duplicate code

2023-12-29 Thread Daniel Stieglitz (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-12554?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17801255#comment-17801255
 ] 

Daniel Stieglitz edited comment on NIFI-12554 at 12/29/23 8:07 PM:
---

[~exceptionfactory] I created this ticket based on the conversation with 
[~Chris S] on PR [7890|https://github.com/apache/nifi/pull/7890]. I so far 
tried following what you had advised me in PR 
[8805|https://github.com/apache/nifi/pull/8005] by creating a component 
interface with the common properties between JoltTransformJSON and 
JoltTransformRecord. I placed this in a module under nifi-commons called 
nifi-jolt-shared. What I would like to do next though is to create an 
AbstractJoltTransforom processor similar to what Chris had done with 
AbstractPutElasticsearch but I am not sure where that should live as 
JoltTransformJSON is in

{code:java}
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors
{code}
and JoltTransformRecord is in 

{code:java}
nifi-nar-bundles/nifi-jolt-record-bundle/nifi-jolt-record-processors
{code}

Is this the right approach and if so where can I place the module where this 
abstract class could live so it would be extended by JoltTransformJSON and 
JoltTransformRecord?


was (Author: JIRAUSER294662):
[~exceptionfactory] I created this ticket based on the conversation with 
[~Chris S] on PR [7890|https://github.com/apache/nifi/pull/7890]. I so far 
tried following what you had advised me in PR 
[8805|https://github.com/apache/nifi/pull/8005] by creating a component 
interface with the common properties between JoltTransformJSON and 
JoltTransformRecord. I placed this in a module under nifi-commons called 
nifi-jolt-shared. What I would like to do next though is to create an 
AbstractJoltProcessor similar to what Chris had done with 
AbstractPutElasticsearch but I am not sure where that should live as 
JoltTransformJSON is in

{code:java}
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors
{code}
and JoltTransformRecord is in 

{code:java}
nifi-nar-bundles/nifi-jolt-record-bundle/nifi-jolt-record-processors
{code}

Is this the right approach and if so where can I place the module where this 
abstract class could live so it would be extended by JoltTransformJSON and 
JoltTransformRecord?

> Refactor JoltTransformJSON and JoltTransformRecord processors in order to 
> reduce duplicate code
> ---
>
> Key: NIFI-12554
> URL: https://issues.apache.org/jira/browse/NIFI-12554
> Project: Apache NiFi
>  Issue Type: Improvement
>Reporter: Daniel Stieglitz
>Assignee: Daniel Stieglitz
>Priority: Major
>
> There is a lot of duplicate code between the JoltTransformJSON and 
> JoltTransformRecord processors. As a result each time there is a bug 
> discovered in the duplicate code there has to be a fix applied in both places 
> (e.g. NIFI-11959 and NIFI-12165).  This ticket aims to pull up the common 
> code between JoltTransformJSON and JoltTransformRecord similar to what has 
> been done for PutElastisearchJSON and PutElastisearchRecord processors with 
> the creation of AbstractPutElasticsearch.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (NIFI-12554) Refactor JoltTransformJSON and JoltTransformRecord processors in order to reduce duplicate code

2023-12-29 Thread Daniel Stieglitz (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-12554?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17801255#comment-17801255
 ] 

Daniel Stieglitz edited comment on NIFI-12554 at 12/29/23 8:05 PM:
---

[~exceptionfactory] I created this ticket based on the conversation with 
[~Chris S] on PR [7890|https://github.com/apache/nifi/pull/7890]. I so far 
tried following what you had advised me in PR 
[8805|https://github.com/apache/nifi/pull/8005] by creating a component 
interface with the common properties between JoltTransformJSON and 
JoltTransformRecord. I placed this in a module under nifi-commons called 
nifi-jolt-shared. What I would like to do next though is to create an 
AbstractJoltProcessor similar to what Chris had done with 
AbstractPutElasticsearch but I am not sure where that should live as 
JoltTransformJSON is in

{code:java}
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors
{code}
and JoltTransformRecord is in 

{code:java}
nifi-nar-bundles/nifi-jolt-record-bundle/nifi-jolt-record-processors
{code}

Is this the right approach and if so where can I place the module where this 
abstract class could live so it would be extended by JoltTransformJSON and 
JoltTransformRecord?


was (Author: JIRAUSER294662):
[~exceptionfactory] I created this ticket based on the conversation with 
[~Chris S] on PR [7890|https://github.com/apache/nifi/pull/7890]. I so far 
tried following what you had advised me in PR 
[8805|https://github.com/apache/nifi/pull/8005] by creating a component 
interface with the common properties there are between JoltTransformJSON and 
JoltTransformRecord. I placed this in a module under nifi-commons called 
nifi-jolt-shared. What I would like to do next though is to create an 
AbstractJoltProcessor similar to what Chris had done with 
AbstractPutElasticsearch but I am not sure where that should live as 
JoltTransformJSON is in

{code:java}
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors
{code}
and JoltTransformRecord is in 

{code:java}
nifi-nar-bundles/nifi-jolt-record-bundle/nifi-jolt-record-processors
{code}

Is this the right approach and if so where can I place the module where this 
abstract class could live so it would be extended by JoltTransformJSON and 
JoltTransformRecord?

> Refactor JoltTransformJSON and JoltTransformRecord processors in order to 
> reduce duplicate code
> ---
>
> Key: NIFI-12554
> URL: https://issues.apache.org/jira/browse/NIFI-12554
> Project: Apache NiFi
>  Issue Type: Improvement
>Reporter: Daniel Stieglitz
>Assignee: Daniel Stieglitz
>Priority: Major
>
> There is a lot of duplicate code between the JoltTransformJSON and 
> JoltTransformRecord processors. As a result each time there is a bug 
> discovered in the duplicate code there has to be a fix applied in both places 
> (e.g. NIFI-11959 and NIFI-12165).  This ticket aims to pull up the common 
> code between JoltTransformJSON and JoltTransformRecord similar to what has 
> been done for PutElastisearchJSON and PutElastisearchRecord processors with 
> the creation of AbstractPutElasticsearch.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (NIFI-12554) Refactor JoltTransformJSON and JoltTransformRecord processors in order to reduce duplicate code

2023-12-29 Thread Daniel Stieglitz (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-12554?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17801255#comment-17801255
 ] 

Daniel Stieglitz commented on NIFI-12554:
-

[~exceptionfactory] I created this ticket based on the conversation with 
[~Chris S] on PR [7890|https://github.com/apache/nifi/pull/7890]. I so far 
tried following what you had advised me in PR 
[8805|https://github.com/apache/nifi/pull/8005] by creating a component 
interface with the common properties there are between JoltTransformJSON and 
JoltTransformRecord. I placed this in a module under nifi-commons called 
nifi-jolt-shared. What I would like to do next though is to create an 
AbstractJoltProcessor similar to what Chris had done with 
AbstractPutElasticsearch but I am not sure where that should live as 
JoltTransformJSON is in

{code:java}
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors
{code}
and JoltTransformRecord is in 

{code:java}
nifi-nar-bundles/nifi-jolt-record-bundle/nifi-jolt-record-processors
{code}

Is this the right approach and if so where can I place the module where this 
abstract class could live so it would be extended by JoltTransformJSON and 
JoltTransformRecord?

> Refactor JoltTransformJSON and JoltTransformRecord processors in order to 
> reduce duplicate code
> ---
>
> Key: NIFI-12554
> URL: https://issues.apache.org/jira/browse/NIFI-12554
> Project: Apache NiFi
>  Issue Type: Improvement
>Reporter: Daniel Stieglitz
>Assignee: Daniel Stieglitz
>Priority: Major
>
> There is a lot of duplicate code between the JoltTransformJSON and 
> JoltTransformRecord processors. As a result each time there is a bug 
> discovered in the duplicate code there has to be a fix applied in both places 
> (e.g. NIFI-11959 and NIFI-12165).  This ticket aims to pull up the common 
> code between JoltTransformJSON and JoltTransformRecord similar to what has 
> been done for PutElastisearchJSON and PutElastisearchRecord processors with 
> the creation of AbstractPutElasticsearch.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (NIFI-12555) UI - Property with .dependsOn() incorrectly being displayed

2023-12-29 Thread Mark Bean (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12555?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mark Bean updated NIFI-12555:
-
Description: 
Consider PROPERTY_1 with:
`
.dependsOn(PROPERTY_2, "foo")

`

In the UI, when Property 2 is set to a value of "bar", Property 1 should not be 
displayed. However, when the configuration is first opened, Property 1 is 
displayed. The UI correctly updates only after re-selecting "bar" for Property 
2 - or even just opening its value and choosing "Cancel". In other words, after 
taking any action to change any property, then Property 1 is correctly removed 
from the UI.

This appears to be a problem only for the initial display of component 
properties, and not when they are refreshed and/or dependency rules are 
evaluated.

-It is possible this is related to changes introduced in NIFI-11593. Note that 
the above behavior occurs even when PROPERTY_2 has specific allowed values.-
The same behavior is seen in 1.21.0, and NIFI-11593 has a fix version of 1.22.0.

  was:
Consider PROPERTY_1 with:
`
.dependsOn(PROPERTY_2, "foo")

`

In the UI, when Property 2 is set to a value of "bar", Property 1 should not be 
displayed. However, when the configuration is first opened, Property 1 is 
displayed. The UI correctly updates only after re-selecting "bar" for Property 
2 - or even just opening its value and choosing "Cancel". In other words, after 
taking any action to change any property, then Property 1 is correctly removed 
from the UI.

This appears to be a problem only for the initial display of component 
properties, and not when they are refreshed and/or dependency rules are 
evaluated.

It is possible this is related to changes introduced in 
[NIFI-11593|https://issues.apache.org/jira/browse/NIFI-11593]. Note that the 
above behavior occurs even when PROPERTY_2 has specific allowed values.


> UI - Property with .dependsOn() incorrectly being displayed
> ---
>
> Key: NIFI-12555
> URL: https://issues.apache.org/jira/browse/NIFI-12555
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Core UI
>Affects Versions: 1.24.0
>Reporter: Mark Bean
>Priority: Major
>
> Consider PROPERTY_1 with:
> `
> .dependsOn(PROPERTY_2, "foo")
> `
> In the UI, when Property 2 is set to a value of "bar", Property 1 should not 
> be displayed. However, when the configuration is first opened, Property 1 is 
> displayed. The UI correctly updates only after re-selecting "bar" for 
> Property 2 - or even just opening its value and choosing "Cancel". In other 
> words, after taking any action to change any property, then Property 1 is 
> correctly removed from the UI.
> This appears to be a problem only for the initial display of component 
> properties, and not when they are refreshed and/or dependency rules are 
> evaluated.
> -It is possible this is related to changes introduced in NIFI-11593. Note 
> that the above behavior occurs even when PROPERTY_2 has specific allowed 
> values.-
> The same behavior is seen in 1.21.0, and NIFI-11593 has a fix version of 
> 1.22.0.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (NIFI-12555) UI - Property with .dependsOn() incorrectly being displayed

2023-12-29 Thread Mark Bean (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12555?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mark Bean updated NIFI-12555:
-
Component/s: Core UI

> UI - Property with .dependsOn() incorrectly being displayed
> ---
>
> Key: NIFI-12555
> URL: https://issues.apache.org/jira/browse/NIFI-12555
> Project: Apache NiFi
>  Issue Type: Bug
>  Components: Core UI
>Affects Versions: 1.24.0
>Reporter: Mark Bean
>Priority: Major
>
> Consider PROPERTY_1 with:
> `
> .dependsOn(PROPERTY_2, "foo")
> `
> In the UI, when Property 2 is set to a value of "bar", Property 1 should not 
> be displayed. However, when the configuration is first opened, Property 1 is 
> displayed. The UI correctly updates only after re-selecting "bar" for 
> Property 2 - or even just opening its value and choosing "Cancel". In other 
> words, after taking any action to change any property, then Property 1 is 
> correctly removed from the UI.
> This appears to be a problem only for the initial display of component 
> properties, and not when they are refreshed and/or dependency rules are 
> evaluated.
> It is possible this is related to changes introduced in 
> [NIFI-11593|https://issues.apache.org/jira/browse/NIFI-11593]. Note that the 
> above behavior occurs even when PROPERTY_2 has specific allowed values.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (NIFI-12555) UI - Property with .dependsOn() incorrectly being displayed

2023-12-29 Thread Mark Bean (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12555?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mark Bean updated NIFI-12555:
-
Affects Version/s: 1.24.0

> UI - Property with .dependsOn() incorrectly being displayed
> ---
>
> Key: NIFI-12555
> URL: https://issues.apache.org/jira/browse/NIFI-12555
> Project: Apache NiFi
>  Issue Type: Bug
>Affects Versions: 1.24.0
>Reporter: Mark Bean
>Priority: Major
>
> Consider PROPERTY_1 with:
> `
> .dependsOn(PROPERTY_2, "foo")
> `
> In the UI, when Property 2 is set to a value of "bar", Property 1 should not 
> be displayed. However, when the configuration is first opened, Property 1 is 
> displayed. The UI correctly updates only after re-selecting "bar" for 
> Property 2 - or even just opening its value and choosing "Cancel". In other 
> words, after taking any action to change any property, then Property 1 is 
> correctly removed from the UI.
> This appears to be a problem only for the initial display of component 
> properties, and not when they are refreshed and/or dependency rules are 
> evaluated.
> It is possible this is related to changes introduced in 
> [NIFI-11593|https://issues.apache.org/jira/browse/NIFI-11593]. Note that the 
> above behavior occurs even when PROPERTY_2 has specific allowed values.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[PR] NIFI-11389 Fixed controller services's link to referencing controller services of lesser scope - 1.x branch [nifi]

2023-12-29 Thread via GitHub


NissimShiman opened a new pull request, #8194:
URL: https://github.com/apache/nifi/pull/8194

   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   # Summary
   
   [NIFI-11389](https://issues.apache.org/jira/browse/NIFI-11389)
   This PR is for the 1.x branch.
   
   # Tracking
   
   Please complete the following tracking steps prior to pull request creation.
   
   ### Issue Tracking
   
   - [ ] [Apache NiFi Jira](https://issues.apache.org/jira/browse/NIFI) issue 
created
   
   ### Pull Request Tracking
   
   - [ ] Pull Request title starts with Apache NiFi Jira issue number, such as 
`NIFI-0`
   - [ ] Pull Request commit message starts with Apache NiFi Jira issue number, 
as such `NIFI-0`
   
   ### 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
   
   # Verification
   
   Please indicate the verification steps performed prior to pull request 
creation.
   
   ### Build
   
   - [ ] Build completed using `mvn clean install -P contrib-check`
 - [ ] JDK 21
   
   ### 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)
   - [ ] New dependencies are documented in applicable `LICENSE` and `NOTICE` 
files
   
   ### Documentation
   
   - [ ] Documentation formatting appears as expected in rendered files
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[jira] [Updated] (NIFI-12400) Remaining items to migrate UI to currently supported/active framework

2023-12-29 Thread Rob Fellows (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12400?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rob Fellows updated NIFI-12400:
---
Description: 
The purpose of this Jira is to track all remaining items following the initial 
commit [1] for NIFI-11481. The description will be kept up to date with 
remaining features, tasks, and improvements. As each items is worked, a new sub 
task Jira will be created and referenced in this description.
 * Support Parameters in Properties with Allowable Values (NIFI-12401)
 * Summary (NIFI-12437)
 ** Remaining work not addressed in initial Jira:
 *** input ports (NIFI-12504)
 *** output ports (NIFI-12504)
 *** remote process groups (NIFI-12504)
 *** process groups (NIFI-12504)
 *** connections (NIFI-12504)
 *** System Diagnostics (NIFI-12505)
 *** support for cluster-specific ui elements (NIFI-12537)
 *** Add pagination (NIFI-12552)
 * Counters (NIFI-12415)
 * Bulletin Board
 * Provenance (NIFI-12445)
 ** Event Listing (NIFI-12445)
 ** Search (NIFI-12445)
 ** Event Dialog (NIFI-12445)
 ** Lineage (NIFI-12485)
 ** Replay from context menu (NIFI-12445)

 * Flow Analysis Rules
 * Registry Clients (NIFI-12486)
 * Import from Registry
 * Parameter Providers
 * Cluster
 * Flow Configuration History
 * Node Status History (NIFI-12553)
 * Status history for components from canvas context menu (NIFI-12553)
 * Users (NIFI-12543)
 * Policies (NIFI-12548)
 * Help
 * About
 * Show Upstream/Downstream
 * Align
 * List Queue
 * Empty [all] Queue
 * View Content
 * View State
 * Change Version
 * PG Version
 ** Start
 ** Commit
 ** Force Commit
 ** Show changes
 ** Revert changes
 ** Change Flow version
 ** Stop

 * Configure PG (NIFI-12417)
 * Process Group Services (NIFI-12425)
 ** Listing (NIFI-12425)
 ** Create (NIFI-12425)
 ** Configure (NIFI-12425)
 ** Delete (NIFI-12425)
 ** Enable (NIFI-12529)
 ** Disable (NIFI-12529)
 ** Improve layout and breadcrumbs
 * Configure Processor
 ** Service Link (NIFI-12425)
 ** Create inline Service (NIFI-12425)
 ** Parameter Link (NIFI-12502)
 ** Convert to Parameter (NIFI-12502)
 ** Fix issue with Property Editor width (NIFI-12547)

 * Download Flow
 * Create RPG
 * Configure RPG
 * RPG Remote Ports
 * RPG Go To
 * Color
 * Move to Front
 * Copy/Paste
 * Run unit tests are part of standard build
 * Update all API calls to consider disconnect node confirmation
 * Update API calls to use uiOnly flag
 * Routing error handling
 * Prevent navigate to Service when configuration form is dirty
 * Introduce header in new pages to unify with canvas and offer better 
navigation.
 * Prompt user to save Parameter Context when Edit form is dirty

[1] [https://github.com/apache/nifi/pull/8053]

  was:
The purpose of this Jira is to track all remaining items following the initial 
commit [1] for NIFI-11481. The description will be kept up to date with 
remaining features, tasks, and improvements. As each items is worked, a new sub 
task Jira will be created and referenced in this description.
 * Support Parameters in Properties with Allowable Values (NIFI-12401)
 * Summary (NIFI-12437)
 ** Remaining work not addressed in initial Jira:
 *** input ports (NIFI-12504)
 *** output ports (NIFI-12504)
 *** remote process groups (NIFI-12504)
 *** process groups (NIFI-12504)
 *** connections (NIFI-12504)
 *** System Diagnostics (NIFI-12505)
 *** support for cluster-specific ui elements (NIFI-12537)
 *** Add pagination (NIFI-12552)
 * Counters (NIFI-12415)
 * Bulletin Board
 * Provenance (NIFI-12445)
 ** Event Listing (NIFI-12445)
 ** Search (NIFI-12445)
 ** Event Dialog (NIFI-12445)
 ** Lineage (NIFI-12485)
 ** Replay from context menu (NIFI-12445)

 * Flow Analysis Rules
 * Registry Clients (NIFI-12486)
 * Import from Registry
 * Parameter Providers
 * Cluster
 * Flow Configuration History
 * Node Status History
 * Status history for components from canvas context menu (NIFI-12553)
 * Users (NIFI-12543)
 * Policies (NIFI-12548)
 * Help
 * About
 * Show Upstream/Downstream
 * Align
 * List Queue
 * Empty [all] Queue
 * View Content
 * View State
 * Change Version
 * PG Version
 ** Start
 ** Commit
 ** Force Commit
 ** Show changes
 ** Revert changes
 ** Change Flow version
 ** Stop

 * Configure PG (NIFI-12417)
 * Process Group Services (NIFI-12425)
 ** Listing (NIFI-12425)
 ** Create (NIFI-12425)
 ** Configure (NIFI-12425)
 ** Delete (NIFI-12425)
 ** Enable (NIFI-12529)
 ** Disable (NIFI-12529)
 ** Improve layout and breadcrumbs
 * Configure Processor
 ** Service Link (NIFI-12425)
 ** Create inline Service (NIFI-12425)
 ** Parameter Link (NIFI-12502)
 ** Convert to Parameter (NIFI-12502)
 ** Fix issue with Property Editor width (NIFI-12547)

 * Download Flow
 * Create RPG
 * Configure RPG
 * RPG Remote Ports
 * RPG Go To
 * Color
 * Move to Front
 * Copy/Paste
 * Run unit tests are part of standard build
 * Update all API calls to consider disconnect node confirmation
 * Update API calls to use uiOnly flag

[jira] [Updated] (NIFI-12553) Status History from canvas context menu for components

2023-12-29 Thread Rob Fellows (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12553?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rob Fellows updated NIFI-12553:
---
Status: Patch Available  (was: In Progress)

> Status History from canvas context menu for components
> --
>
> Key: NIFI-12553
> URL: https://issues.apache.org/jira/browse/NIFI-12553
> Project: Apache NiFi
>  Issue Type: Sub-task
>Reporter: Rob Fellows
>Assignee: Rob Fellows
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[PR] [NIFI-12553] - Context menu option for View Status History [nifi]

2023-12-29 Thread via GitHub


rfellows opened a new pull request, #8193:
URL: https://github.com/apache/nifi/pull/8193

   # Summary
   
   [NIFI-12553](https://issues.apache.org/jira/browse/NIFI-12553)
   
   * Added View Status History to the canvas context menu for applicable 
component types
   * Added support for Node Status History from the flow menu
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



[jira] [Commented] (NIFI-12553) Status History from canvas context menu for components

2023-12-29 Thread Rob Fellows (Jira)


[ 
https://issues.apache.org/jira/browse/NIFI-12553?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17801244#comment-17801244
 ] 

Rob Fellows commented on NIFI-12553:


Also support Node Status History from the main flow menu

> Status History from canvas context menu for components
> --
>
> Key: NIFI-12553
> URL: https://issues.apache.org/jira/browse/NIFI-12553
> Project: Apache NiFi
>  Issue Type: Sub-task
>Reporter: Rob Fellows
>Assignee: Rob Fellows
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (NIFI-12555) UI - Property with .dependsOn() incorrectly being displayed

2023-12-29 Thread Mark Bean (Jira)
Mark Bean created NIFI-12555:


 Summary: UI - Property with .dependsOn() incorrectly being 
displayed
 Key: NIFI-12555
 URL: https://issues.apache.org/jira/browse/NIFI-12555
 Project: Apache NiFi
  Issue Type: Bug
Reporter: Mark Bean


Consider PROPERTY_1 with:
`
.dependsOn(PROPERTY_2, "foo")

`

In the UI, when Property 2 is set to a value of "bar", Property 1 should not be 
displayed. However, when the configuration is first opened, Property 1 is 
displayed. The UI correctly updates only after re-selecting "bar" for Property 
2 - or even just opening its value and choosing "Cancel". In other words, after 
taking any action to change any property, then Property 1 is correctly removed 
from the UI.

This appears to be a problem only for the initial display of component 
properties, and not when they are refreshed and/or dependency rules are 
evaluated.

It is possible this is related to changes introduced in 
[NIFI-11593|https://issues.apache.org/jira/browse/NIFI-11593]. Note that the 
above behavior occurs even when PROPERTY_2 has specific allowed values.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (NIFI-12387) Flow Configuration History can record a Comments change for Controller Service when no changes have been made

2023-12-29 Thread Nissim Shiman (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12387?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nissim Shiman reassigned NIFI-12387:


Assignee: Nissim Shiman

> Flow Configuration History can record a Comments change for Controller 
> Service when no changes have been made
> -
>
> Key: NIFI-12387
> URL: https://issues.apache.org/jira/browse/NIFI-12387
> Project: Apache NiFi
>  Issue Type: Bug
>Affects Versions: 1.16.3, 1.23.2
>Reporter: Nissim Shiman
>Assignee: Nissim Shiman
>Priority: Major
>
> To recreate, create a new controller service then open configuration gui for 
> it and click Apply button (without having made any changes to default 
> settings).
> Flow Configuration History will note that a Configure operation has occurred 
> and the Comments have been changed from _No value set_ to an {_}Empty string 
> se{_}t.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (NIFI-12554) Refactor JoltTransformJSON and JoltTransformRecord processors in order to reduce duplicate code

2023-12-29 Thread Daniel Stieglitz (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12554?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniel Stieglitz updated NIFI-12554:

Summary: Refactor JoltTransformJSON and JoltTransformRecord processors in 
order to reduce duplicate code  (was: Refactor JoltTransformJSON and 
JoltTransformRecord processors In order to reduce duplicate code)

> Refactor JoltTransformJSON and JoltTransformRecord processors in order to 
> reduce duplicate code
> ---
>
> Key: NIFI-12554
> URL: https://issues.apache.org/jira/browse/NIFI-12554
> Project: Apache NiFi
>  Issue Type: Improvement
>Reporter: Daniel Stieglitz
>Assignee: Daniel Stieglitz
>Priority: Major
>
> There is a lot of duplicate code between the JoltTransformJSON and 
> JoltTransformRecord processors. As a result each time there is a bug 
> discovered in the duplicate code there has to be a fix applied in both places 
> (e.g. NIFI-11959 and NIFI-12165).  This ticket aims to pull up the common 
> code between JoltTransformJSON and JoltTransformRecord similar to what has 
> been done for PutElastisearchJSON and PutElastisearchRecord processors with 
> the creation of AbstractPutElasticsearch.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (NIFI-12554) Refactor JoltTransformJSON and JoltTransformRecord processors In order to reduce duplicate code

2023-12-29 Thread Daniel Stieglitz (Jira)
Daniel Stieglitz created NIFI-12554:
---

 Summary: Refactor JoltTransformJSON and JoltTransformRecord 
processors In order to reduce duplicate code
 Key: NIFI-12554
 URL: https://issues.apache.org/jira/browse/NIFI-12554
 Project: Apache NiFi
  Issue Type: Improvement
Reporter: Daniel Stieglitz
Assignee: Daniel Stieglitz


There is a lot of duplicate code between the JoltTransformJSON and 
JoltTransformRecord processors. As a result each time there is a bug discovered 
in the duplicate code there has to be a fix applied in both places (e.g. 
NIFI-11959 and NIFI-12165).  This ticket aims to pull up the common code 
between JoltTransformJSON and JoltTransformRecord similar to what has been done 
for PutElastisearchJSON and PutElastisearchRecord processors with the creation 
of AbstractPutElasticsearch.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [PR] NIFI-11858 Configurable Column Name Normalization in PutDatabaseRecord and UpdateDatabaseTable [nifi]

2023-12-29 Thread via GitHub


dan-s1 commented on code in PR #7544:
URL: https://github.com/apache/nifi/pull/7544#discussion_r1438276400


##
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/db/ColumnNameNormalizerUtilityTest.java:
##
@@ -0,0 +1,77 @@
+/*
+ * 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.
+ */
+
+package org.apache.nifi.processors.standard.db;
+
+import org.junit.jupiter.api.Test;
+
+import java.util.regex.Pattern;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+
+public class ColumnNameNormalizerUtilityTest {
+
+
+
+@Test
+void testNormalizingColumnName_RemoveUnderscore() {
+String inputColumnName = "example_column_name";
+String expectedNormalized = "EXAMPLECOLUMNNAME";
+String normalized = 
ColumnNameNormalizerUtility.getNormalizedName(inputColumnName,true, 
TranslationStrategy.REMOVE_UNDERSCORE, null);
+
+assertEquals(expectedNormalized, normalized);
+}
+
+@Test
+void testNormalizingColumnName_RemoveSpace() {
+String inputColumnName = "Column Name With Spaces";
+String expectedNormalized = "COLUMNNAMEWITHSPACES";
+String normalized = 
ColumnNameNormalizerUtility.getNormalizedName(inputColumnName,true, 
TranslationStrategy.REMOVE_SPACE, null);
+
+assertEquals(expectedNormalized, normalized);
+}
+
+@Test
+void testNormalizingColumnName_RemoveAllSpecialCharacters() {
+String inputColumnName = "Special!Characters@Here$";
+String expectedNormalized = "SPECIALCHARACTERSHERE";
+String normalized = 
ColumnNameNormalizerUtility.getNormalizedName(inputColumnName,true, 
TranslationStrategy.REMOVE_ALL_SPECIAL_CHAR, null);
+
+assertEquals(expectedNormalized, normalized);
+}
+
+@Test
+void testNormalizingColumnName_Regex() {
+String inputColumnName = "Your @Input -String Here";
+Pattern translationPattern = Pattern.compile("[@-]");
+String expectedNormalized = 
translationPattern.matcher(inputColumnName.toUpperCase()).replaceAll( "");

Review Comment:
   Be consistent in this unit test as  you did with the other unit tests by 
just  specifying the actual value of the expected string (w/o it be being 
calculated).
   ```suggestion
   String expectedNormalized = "YOUR INPUT STRING HERE";
   ```



##
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/db/TranslationStrategy.java:
##
@@ -0,0 +1,78 @@
+/*
+ * 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.
+ */
+package org.apache.nifi.processors.standard.db;
+
+import org.apache.nifi.components.DescribedValue;
+
+/**
+ * Enumeration of supported Database column name Translation Strategy
+ */
+public enum TranslationStrategy implements DescribedValue {
+REMOVE_UNDERSCORE {
+@Override
+public String getDisplayName() {
+return "Remove Underscore";
+}
+
+@Override
+public String getDescription() {
+return "Underscore(_) will be removed from column name with empty 
string Ex. Pics_1_11 become PICS111";
+}
+},
+REMOVE_SPACE {
+@Override
+public String getDisplayName() {
+return "Remove Space";
+}
+
+@Override
+public String getDescription() {
+return "Spaces will be removed from column name with empty string 
Ex. 

[jira] [Updated] (NIFI-12400) Remaining items to migrate UI to currently supported/active framework

2023-12-29 Thread Rob Fellows (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12400?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rob Fellows updated NIFI-12400:
---
Description: 
The purpose of this Jira is to track all remaining items following the initial 
commit [1] for NIFI-11481. The description will be kept up to date with 
remaining features, tasks, and improvements. As each items is worked, a new sub 
task Jira will be created and referenced in this description.
 * Support Parameters in Properties with Allowable Values (NIFI-12401)
 * Summary (NIFI-12437)
 ** Remaining work not addressed in initial Jira:
 *** input ports (NIFI-12504)
 *** output ports (NIFI-12504)
 *** remote process groups (NIFI-12504)
 *** process groups (NIFI-12504)
 *** connections (NIFI-12504)
 *** System Diagnostics (NIFI-12505)
 *** support for cluster-specific ui elements (NIFI-12537)
 *** Add pagination (NIFI-12552)
 * Counters (NIFI-12415)
 * Bulletin Board
 * Provenance (NIFI-12445)
 ** Event Listing (NIFI-12445)
 ** Search (NIFI-12445)
 ** Event Dialog (NIFI-12445)
 ** Lineage (NIFI-12485)
 ** Replay from context menu (NIFI-12445)

 * Flow Analysis Rules
 * Registry Clients (NIFI-12486)
 * Import from Registry
 * Parameter Providers
 * Cluster
 * Flow Configuration History
 * Node Status History
 * Status history for components from canvas context menu (NIFI-12553)
 * Users (NIFI-12543)
 * Policies (NIFI-12548)
 * Help
 * About
 * Show Upstream/Downstream
 * Align
 * List Queue
 * Empty [all] Queue
 * View Content
 * View State
 * Change Version
 * PG Version
 ** Start
 ** Commit
 ** Force Commit
 ** Show changes
 ** Revert changes
 ** Change Flow version
 ** Stop

 * Configure PG (NIFI-12417)
 * Process Group Services (NIFI-12425)
 ** Listing (NIFI-12425)
 ** Create (NIFI-12425)
 ** Configure (NIFI-12425)
 ** Delete (NIFI-12425)
 ** Enable (NIFI-12529)
 ** Disable (NIFI-12529)
 ** Improve layout and breadcrumbs
 * Configure Processor
 ** Service Link (NIFI-12425)
 ** Create inline Service (NIFI-12425)
 ** Parameter Link (NIFI-12502)
 ** Convert to Parameter (NIFI-12502)
 ** Fix issue with Property Editor width (NIFI-12547)

 * Download Flow
 * Create RPG
 * Configure RPG
 * RPG Remote Ports
 * RPG Go To
 * Color
 * Move to Front
 * Copy/Paste
 * Run unit tests are part of standard build
 * Update all API calls to consider disconnect node confirmation
 * Update API calls to use uiOnly flag
 * Routing error handling
 * Prevent navigate to Service when configuration form is dirty
 * Introduce header in new pages to unify with canvas and offer better 
navigation.
 * Prompt user to save Parameter Context when Edit form is dirty

[1] [https://github.com/apache/nifi/pull/8053]

  was:
The purpose of this Jira is to track all remaining items following the initial 
commit [1] for NIFI-11481. The description will be kept up to date with 
remaining features, tasks, and improvements. As each items is worked, a new sub 
task Jira will be created and referenced in this description.
 * Support Parameters in Properties with Allowable Values (NIFI-12401)
 * Summary (NIFI-12437)
 ** Remaining work not addressed in initial Jira:
 *** input ports (NIFI-12504)
 *** output ports (NIFI-12504)
 *** remote process groups (NIFI-12504)
 *** process groups (NIFI-12504)
 *** connections (NIFI-12504)
 *** System Diagnostics (NIFI-12505)
 *** support for cluster-specific ui elements (NIFI-12537)
 *** Add pagination (NIFI-12552)
 * Counters (NIFI-12415)
 * Bulletin Board
 * Provenance (NIFI-12445)
 ** Event Listing (NIFI-12445)
 ** Search (NIFI-12445)
 ** Event Dialog (NIFI-12445)
 ** Lineage (NIFI-12485)
 ** Replay from context menu (NIFI-12445)

 * Flow Analysis Rules
 * Registry Clients (NIFI-12486)
 * Import from Registry
 * Parameter Providers
 * Cluster
 * Flow Configuration History
 * Node Status History
 * Status history for components from canvas context menu
 * Users (NIFI-12543)
 * Policies (NIFI-12548)
 * Help
 * About
 * Show Upstream/Downstream
 * Align
 * List Queue
 * Empty [all] Queue
 * View Content
 * View State
 * Change Version
 * PG Version
 ** Start
 ** Commit
 ** Force Commit
 ** Show changes
 ** Revert changes
 ** Change Flow version
 ** Stop

 * Configure PG (NIFI-12417)
 * Process Group Services (NIFI-12425)
 ** Listing (NIFI-12425)
 ** Create (NIFI-12425)
 ** Configure (NIFI-12425)
 ** Delete (NIFI-12425)
 ** Enable (NIFI-12529)
 ** Disable (NIFI-12529)
 ** Improve layout and breadcrumbs
 * Configure Processor
 ** Service Link (NIFI-12425)
 ** Create inline Service (NIFI-12425)
 ** Parameter Link (NIFI-12502)
 ** Convert to Parameter (NIFI-12502)
 ** Fix issue with Property Editor width (NIFI-12547)

 * Download Flow
 * Create RPG
 * Configure RPG
 * RPG Remote Ports
 * RPG Go To
 * Color
 * Move to Front
 * Copy/Paste
 * Run unit tests are part of standard build
 * Update all API calls to consider disconnect node confirmation
 * Update API calls to use uiOnly flag
 * Routing error handling

[jira] [Created] (NIFI-12553) Status History from canvas context menu for components

2023-12-29 Thread Rob Fellows (Jira)
Rob Fellows created NIFI-12553:
--

 Summary: Status History from canvas context menu for components
 Key: NIFI-12553
 URL: https://issues.apache.org/jira/browse/NIFI-12553
 Project: Apache NiFi
  Issue Type: Sub-task
Reporter: Rob Fellows
Assignee: Rob Fellows






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (NIFI-12400) Remaining items to migrate UI to currently supported/active framework

2023-12-29 Thread Rob Fellows (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12400?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rob Fellows updated NIFI-12400:
---
Description: 
The purpose of this Jira is to track all remaining items following the initial 
commit [1] for NIFI-11481. The description will be kept up to date with 
remaining features, tasks, and improvements. As each items is worked, a new sub 
task Jira will be created and referenced in this description.
 * Support Parameters in Properties with Allowable Values (NIFI-12401)
 * Summary (NIFI-12437)
 ** Remaining work not addressed in initial Jira:
 *** input ports (NIFI-12504)
 *** output ports (NIFI-12504)
 *** remote process groups (NIFI-12504)
 *** process groups (NIFI-12504)
 *** connections (NIFI-12504)
 *** System Diagnostics (NIFI-12505)
 *** support for cluster-specific ui elements (NIFI-12537)
 *** Add pagination (NIFI-12552)
 * Counters (NIFI-12415)
 * Bulletin Board
 * Provenance (NIFI-12445)
 ** Event Listing (NIFI-12445)
 ** Search (NIFI-12445)
 ** Event Dialog (NIFI-12445)
 ** Lineage (NIFI-12485)
 ** Replay from context menu (NIFI-12445)

 * Flow Analysis Rules
 * Registry Clients (NIFI-12486)
 * Import from Registry
 * Parameter Providers
 * Cluster
 * Flow Configuration History
 * Node Status History
 * Status history for components from canvas context menu
 * Users (NIFI-12543)
 * Policies (NIFI-12548)
 * Help
 * About
 * Show Upstream/Downstream
 * Align
 * List Queue
 * Empty [all] Queue
 * View Content
 * View State
 * Change Version
 * PG Version
 ** Start
 ** Commit
 ** Force Commit
 ** Show changes
 ** Revert changes
 ** Change Flow version
 ** Stop

 * Configure PG (NIFI-12417)
 * Process Group Services (NIFI-12425)
 ** Listing (NIFI-12425)
 ** Create (NIFI-12425)
 ** Configure (NIFI-12425)
 ** Delete (NIFI-12425)
 ** Enable (NIFI-12529)
 ** Disable (NIFI-12529)
 ** Improve layout and breadcrumbs
 * Configure Processor
 ** Service Link (NIFI-12425)
 ** Create inline Service (NIFI-12425)
 ** Parameter Link (NIFI-12502)
 ** Convert to Parameter (NIFI-12502)
 ** Fix issue with Property Editor width (NIFI-12547)

 * Download Flow
 * Create RPG
 * Configure RPG
 * RPG Remote Ports
 * RPG Go To
 * Color
 * Move to Front
 * Copy/Paste
 * Run unit tests are part of standard build
 * Update all API calls to consider disconnect node confirmation
 * Update API calls to use uiOnly flag
 * Routing error handling
 * Prevent navigate to Service when configuration form is dirty
 * Introduce header in new pages to unify with canvas and offer better 
navigation.
 * Prompt user to save Parameter Context when Edit form is dirty

[1] [https://github.com/apache/nifi/pull/8053]

  was:
The purpose of this Jira is to track all remaining items following the initial 
commit [1] for NIFI-11481. The description will be kept up to date with 
remaining features, tasks, and improvements. As each items is worked, a new sub 
task Jira will be created and referenced in this description.
 * Support Parameters in Properties with Allowable Values (NIFI-12401)
 * Summary (NIFI-12437)
 ** Remaining work not addressed in initial Jira:
 *** input ports (NIFI-12504)
 *** output ports (NIFI-12504)
 *** remote process groups (NIFI-12504)
 *** process groups (NIFI-12504)
 *** connections (NIFI-12504)
 *** System Diagnostics (NIFI-12505)
 *** support for cluster-specific ui elements (NIFI-12537)
 *** Add pagination (NIFI-12552)
 * Counters (NIFI-12415)
 * Bulletin Board
 * Provenance (NIFI-12445)
 ** Event Listing (NIFI-12445)
 ** Search (NIFI-12445)
 ** Event Dialog (NIFI-12445)
 ** Lineage (NIFI-12485)
 ** Replay from context menu (NIFI-12445)

 * Flow Analysis Rules
 * Registry Clients (NIFI-12486)
 * Import from Registry
 * Parameter Providers
 * Cluster
 * Flow Configuration History
 * Node Status History
 * Users (NIFI-12543)
 * Policies (NIFI-12548)
 * Help
 * About
 * Show Upstream/Downstream
 * Align
 * List Queue
 * Empty [all] Queue
 * View Content
 * View State
 * Change Version
 * PG Version
 ** Start
 ** Commit
 ** Force Commit
 ** Show changes
 ** Revert changes
 ** Change Flow version
 ** Stop

 * Configure PG (NIFI-12417)
 * Process Group Services (NIFI-12425)
 ** Listing (NIFI-12425)
 ** Create (NIFI-12425)
 ** Configure (NIFI-12425)
 ** Delete (NIFI-12425)
 ** Enable (NIFI-12529)
 ** Disable (NIFI-12529)
 ** Improve layout and breadcrumbs
 * Configure Processor
 ** Service Link (NIFI-12425)
 ** Create inline Service (NIFI-12425)
 ** Parameter Link (NIFI-12502)
 ** Convert to Parameter (NIFI-12502)
 ** Fix issue with Property Editor width (NIFI-12547)

 * Download Flow
 * Create RPG
 * Configure RPG
 * RPG Remote Ports
 * RPG Go To
 * Color
 * Move to Front
 * Copy/Paste
 * Run unit tests are part of standard build
 * Update all API calls to consider disconnect node confirmation
 * Update API calls to use uiOnly flag
 * Routing error handling
 * Prevent navigate to Service when configuration form is dirty
 * Intr

[jira] [Updated] (NIFI-12552) Add pagination to Summary tables

2023-12-29 Thread Rob Fellows (Jira)


 [ 
https://issues.apache.org/jira/browse/NIFI-12552?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rob Fellows updated NIFI-12552:
---
Status: Patch Available  (was: In Progress)

> Add pagination to Summary tables
> 
>
> Key: NIFI-12552
> URL: https://issues.apache.org/jira/browse/NIFI-12552
> Project: Apache NiFi
>  Issue Type: Sub-task
>Reporter: Rob Fellows
>Assignee: Rob Fellows
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> The number of records in the summary tables can get quite large and become 
> unwieldy. Add front-end pagination of the results. Be sure to account for 
> pagination when displaying the number of filtered results above the filter 
> controls as it could be confusing to the user to see a filtered count greater 
> than the page size. Consider changing the wording to make it more 
> understandable.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[PR] [NIFI-12552] - Support client-side pagination on Summary tables [nifi]

2023-12-29 Thread via GitHub


rfellows opened a new pull request, #8192:
URL: https://github.com/apache/nifi/pull/8192

   # Summary
   
   [NIFI-12552](https://issues.apache.org/jira/browse/NIFI-12552)
   
   Also:
   * updated the filter control to only show the label indicating matches when 
a filter is active. similar to how it is done for the events table
   * aligned cells like Run Status so the icon and text are vertically centered 
in the table cell
   * made minor changes suggested by eslint in files touched.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@nifi.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org