You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by GitBox <gi...@apache.org> on 2022/12/20 19:28:51 UTC

[GitHub] [nifi] exceptionfactory commented on a diff in pull request #6798: [NIFI-6498] Set error event listener on both the TransformerFactory a…

exceptionfactory commented on code in PR #6798:
URL: https://github.com/apache/nifi/pull/6798#discussion_r1053670702


##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TransformXml.java:
##########
@@ -372,4 +382,27 @@ private Source getSecureSource(final StreamSource streamSource) throws Transform
             throw new TransformerConfigurationException("XSLT Source Stream Reader creation failed", e);
         }
     }
+}
+
+class ErrorListenerLogger implements ErrorListener {
+    private final ComponentLog logger;
+
+    ErrorListenerLogger(ComponentLog logger) {
+        this.logger = logger;
+    }
+
+    @Override
+    public void warning(TransformerException exception) throws TransformerException {
+        logger.warn(exception.getMessageAndLocation());
+    }
+
+    @Override
+    public void error(TransformerException exception) throws TransformerException {
+        logger.error(exception.getMessageAndLocation());

Review Comment:
   ```suggestion
           logger.error(exception.getMessageAndLocation(), exception);
   ```



##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TransformXml.java:
##########
@@ -372,4 +382,27 @@ private Source getSecureSource(final StreamSource streamSource) throws Transform
             throw new TransformerConfigurationException("XSLT Source Stream Reader creation failed", e);
         }
     }
+}
+
+class ErrorListenerLogger implements ErrorListener {

Review Comment:
   This can be `private` and `static`:
   ```suggestion
   private static class ErrorListenerLogger implements ErrorListener {
   ```



##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TransformXml.java:
##########
@@ -372,4 +382,27 @@ private Source getSecureSource(final StreamSource streamSource) throws Transform
             throw new TransformerConfigurationException("XSLT Source Stream Reader creation failed", e);
         }
     }
+}
+
+class ErrorListenerLogger implements ErrorListener {
+    private final ComponentLog logger;
+
+    ErrorListenerLogger(ComponentLog logger) {
+        this.logger = logger;
+    }
+
+    @Override
+    public void warning(TransformerException exception) throws TransformerException {
+        logger.warn(exception.getMessageAndLocation());

Review Comment:
   ```suggestion
           logger.warn(exception.getMessageAndLocation(), exception);
   ```



##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestTransformXml.java:
##########
@@ -297,4 +297,47 @@ public void testTransformSecureProcessingEnabledXslWithEntity() throws IOExcepti
 
         transformed.assertContentEquals("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
     }
+
+    @Test
+    public void testNonMatchingTemplateTag() throws IOException {
+        final TestRunner runner = TestRunners.newTestRunner(new TransformXml());
+        runner.setProperty("header", "Test for mod");
+        runner.setProperty(TransformXml.XSLT_FILE_NAME, "src/test/resources/TestTransformXml/nonMatchingEndTag.xsl");
+
+        final Map<String, String> attributes = new HashMap<>();
+        runner.enqueue(Paths.get("src/test/resources/TestTransformXml/math.xml"), attributes);

Review Comment:
   ```suggestion
           runner.enqueue(Paths.get("src/test/resources/TestTransformXml/math.xml"));
   ```



##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestTransformXml.java:
##########
@@ -297,4 +297,47 @@ public void testTransformSecureProcessingEnabledXslWithEntity() throws IOExcepti
 
         transformed.assertContentEquals("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
     }
+
+    @Test
+    public void testNonMatchingTemplateTag() throws IOException {
+        final TestRunner runner = TestRunners.newTestRunner(new TransformXml());
+        runner.setProperty("header", "Test for mod");
+        runner.setProperty(TransformXml.XSLT_FILE_NAME, "src/test/resources/TestTransformXml/nonMatchingEndTag.xsl");
+
+        final Map<String, String> attributes = new HashMap<>();
+        runner.enqueue(Paths.get("src/test/resources/TestTransformXml/math.xml"), attributes);
+        runner.run();
+
+        runner.assertAllFlowFilesTransferred(TransformXml.REL_FAILURE);
+    }
+
+    @Test
+    public void testMessageTerminate() throws IOException {
+        final TestRunner runner = TestRunners.newTestRunner(new TransformXml());
+        runner.setProperty("header", "Test message terminate");
+        runner.setProperty(TransformXml.XSLT_FILE_NAME, "src/test/resources/TestTransformXml/employeeMessageTerminate.xsl");
+
+        final Map<String, String> attributes = new HashMap<>();
+        runner.enqueue(Paths.get("src/test/resources/TestTransformXml/employee.xml"), attributes);

Review Comment:
   ```suggestion
           runner.enqueue(Paths.get("src/test/resources/TestTransformXml/employee.xml"));
   ```



##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestTransformXml.java:
##########
@@ -297,4 +297,47 @@ public void testTransformSecureProcessingEnabledXslWithEntity() throws IOExcepti
 
         transformed.assertContentEquals("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
     }
+
+    @Test
+    public void testNonMatchingTemplateTag() throws IOException {
+        final TestRunner runner = TestRunners.newTestRunner(new TransformXml());
+        runner.setProperty("header", "Test for mod");
+        runner.setProperty(TransformXml.XSLT_FILE_NAME, "src/test/resources/TestTransformXml/nonMatchingEndTag.xsl");
+
+        final Map<String, String> attributes = new HashMap<>();
+        runner.enqueue(Paths.get("src/test/resources/TestTransformXml/math.xml"), attributes);
+        runner.run();
+
+        runner.assertAllFlowFilesTransferred(TransformXml.REL_FAILURE);
+    }
+
+    @Test
+    public void testMessageTerminate() throws IOException {
+        final TestRunner runner = TestRunners.newTestRunner(new TransformXml());
+        runner.setProperty("header", "Test message terminate");
+        runner.setProperty(TransformXml.XSLT_FILE_NAME, "src/test/resources/TestTransformXml/employeeMessageTerminate.xsl");
+
+        final Map<String, String> attributes = new HashMap<>();
+        runner.enqueue(Paths.get("src/test/resources/TestTransformXml/employee.xml"), attributes);
+        runner.run();
+
+        runner.assertAllFlowFilesTransferred(TransformXml.REL_FAILURE);
+    }
+
+    @Test
+    public void testMessageNonTerminate() throws IOException {
+        final TestRunner runner = TestRunners.newTestRunner(new TransformXml());
+        runner.setProperty("header", "Test message non terminate");
+        runner.setProperty(TransformXml.XSLT_FILE_NAME, "src/test/resources/TestTransformXml/employeeMessageNonTerminate.xsl");
+
+        final Map<String, String> attributes = new HashMap<>();
+        runner.enqueue(Paths.get("src/test/resources/TestTransformXml/employee.xml"), attributes);

Review Comment:
   ```suggestion
           runner.enqueue(Paths.get("src/test/resources/TestTransformXml/employee.xml"));
   ```



##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TransformXml.java:
##########
@@ -372,4 +382,27 @@ private Source getSecureSource(final StreamSource streamSource) throws Transform
             throw new TransformerConfigurationException("XSLT Source Stream Reader creation failed", e);
         }
     }
+}
+
+class ErrorListenerLogger implements ErrorListener {
+    private final ComponentLog logger;
+
+    ErrorListenerLogger(ComponentLog logger) {
+        this.logger = logger;
+    }
+
+    @Override
+    public void warning(TransformerException exception) throws TransformerException {

Review Comment:
   ```suggestion
       public void warning(TransformerException exception) {
   ```



##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TransformXml.java:
##########
@@ -372,4 +382,27 @@ private Source getSecureSource(final StreamSource streamSource) throws Transform
             throw new TransformerConfigurationException("XSLT Source Stream Reader creation failed", e);
         }
     }
+}
+
+class ErrorListenerLogger implements ErrorListener {
+    private final ComponentLog logger;
+
+    ErrorListenerLogger(ComponentLog logger) {
+        this.logger = logger;
+    }
+
+    @Override
+    public void warning(TransformerException exception) throws TransformerException {
+        logger.warn(exception.getMessageAndLocation());
+    }
+
+    @Override
+    public void error(TransformerException exception) throws TransformerException {
+        logger.error(exception.getMessageAndLocation());
+    }
+
+    @Override
+    public void fatalError(TransformerException exception) throws TransformerException {

Review Comment:
   ```suggestion
       public void fatalError(TransformerException exception) {
   ```



##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TransformXml.java:
##########
@@ -372,4 +382,27 @@ private Source getSecureSource(final StreamSource streamSource) throws Transform
             throw new TransformerConfigurationException("XSLT Source Stream Reader creation failed", e);
         }
     }
+}
+
+class ErrorListenerLogger implements ErrorListener {
+    private final ComponentLog logger;
+
+    ErrorListenerLogger(ComponentLog logger) {
+        this.logger = logger;
+    }
+
+    @Override
+    public void warning(TransformerException exception) throws TransformerException {
+        logger.warn(exception.getMessageAndLocation());
+    }
+
+    @Override
+    public void error(TransformerException exception) throws TransformerException {

Review Comment:
   ```suggestion
       public void error(TransformerException exception) {
   ```



##########
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/TransformXml.java:
##########
@@ -372,4 +382,27 @@ private Source getSecureSource(final StreamSource streamSource) throws Transform
             throw new TransformerConfigurationException("XSLT Source Stream Reader creation failed", e);
         }
     }
+}
+
+class ErrorListenerLogger implements ErrorListener {
+    private final ComponentLog logger;
+
+    ErrorListenerLogger(ComponentLog logger) {
+        this.logger = logger;
+    }
+
+    @Override
+    public void warning(TransformerException exception) throws TransformerException {
+        logger.warn(exception.getMessageAndLocation());
+    }
+
+    @Override
+    public void error(TransformerException exception) throws TransformerException {
+        logger.error(exception.getMessageAndLocation());
+    }
+
+    @Override
+    public void fatalError(TransformerException exception) throws TransformerException {
+        logger.log(LogLevel.FATAL, exception.getMessageAndLocation());

Review Comment:
   ```suggestion
           logger.log(LogLevel.FATAL, exception.getMessageAndLocation(), exception);
   ```



-- 
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-unsubscribe@nifi.apache.org

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