You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by pv...@apache.org on 2022/12/23 17:34:45 UTC

[nifi] branch main updated: NIFI-11005 Added Illegal and Redundant Import Modules to Checkstyle

This is an automated email from the ASF dual-hosted git repository.

pvillard pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git


The following commit(s) were added to refs/heads/main by this push:
     new b556322749 NIFI-11005 Added Illegal and Redundant Import Modules to Checkstyle
b556322749 is described below

commit b55632274927aa2c4920947763b9621ba25dfab7
Author: exceptionfactory <ex...@apache.org>
AuthorDate: Thu Dec 22 20:55:15 2022 -0600

    NIFI-11005 Added Illegal and Redundant Import Modules to Checkstyle
    
    - Updated impacted classes to remove redundant import lines
    - Removed WebUtilsGroovyTest.groovy class due to use of internal sun.security classes
    
    Signed-off-by: Pierre Villard <pi...@gmail.com>
    
    This closes #6804.
---
 checkstyle.xml                                     |   2 +
 .../nifi/flow/ParameterProviderReference.java      |   1 -
 .../nifi/remote/ClientTransactionCompletion.java   |   2 -
 .../remote/cluster/NodeInformationAdapter.java     |   2 -
 .../apache/nifi/web/util/WebUtilsGroovyTest.groovy | 322 ---------------------
 .../ControllerConfigurationEndpointMerger.java     |   1 -
 .../nifi/processors/splunk/TestPutSplunkHTTP.java  |   4 -
 .../nifi/processors/standard/util/FTPTransfer.java |   1 -
 .../org/apache/nifi/record/sink/TestProcessor.java |   1 -
 9 files changed, 2 insertions(+), 334 deletions(-)

diff --git a/checkstyle.xml b/checkstyle.xml
index 193a4dfd12..42f4bdf1d1 100644
--- a/checkstyle.xml
+++ b/checkstyle.xml
@@ -37,6 +37,8 @@
         </module>
         <module name="OuterTypeFilename"/>
         <module name="AvoidStarImport"/>
+        <module name="IllegalImport"/>
+        <module name="RedundantImport"/>
         <module name="UnusedImports">
             <property name="processJavadoc" value="true"/>
         </module>
diff --git a/nifi-api/src/main/java/org/apache/nifi/flow/ParameterProviderReference.java b/nifi-api/src/main/java/org/apache/nifi/flow/ParameterProviderReference.java
index fb6d915758..93e7041dd8 100644
--- a/nifi-api/src/main/java/org/apache/nifi/flow/ParameterProviderReference.java
+++ b/nifi-api/src/main/java/org/apache/nifi/flow/ParameterProviderReference.java
@@ -18,7 +18,6 @@ package org.apache.nifi.flow;
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-import org.apache.nifi.flow.Bundle;
 
 @ApiModel
 public class ParameterProviderReference {
diff --git a/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/ClientTransactionCompletion.java b/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/ClientTransactionCompletion.java
index 9778ab4bff..5ca72e0033 100644
--- a/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/ClientTransactionCompletion.java
+++ b/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/ClientTransactionCompletion.java
@@ -18,8 +18,6 @@ package org.apache.nifi.remote;
 
 import java.util.concurrent.TimeUnit;
 
-import org.apache.nifi.remote.TransactionCompletion;
-
 public class ClientTransactionCompletion implements TransactionCompletion {
 
     private final boolean backoff;
diff --git a/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/cluster/NodeInformationAdapter.java b/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/cluster/NodeInformationAdapter.java
index c17849ef9c..30356de871 100644
--- a/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/cluster/NodeInformationAdapter.java
+++ b/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/cluster/NodeInformationAdapter.java
@@ -18,8 +18,6 @@ package org.apache.nifi.remote.cluster;
 
 import javax.xml.bind.annotation.adapters.XmlAdapter;
 
-import org.apache.nifi.remote.cluster.NodeInformation;
-
 public class NodeInformationAdapter extends XmlAdapter<AdaptedNodeInformation, NodeInformation> {
 
     @Override
diff --git a/nifi-commons/nifi-web-utils/src/test/groovy/org/apache/nifi/web/util/WebUtilsGroovyTest.groovy b/nifi-commons/nifi-web-utils/src/test/groovy/org/apache/nifi/web/util/WebUtilsGroovyTest.groovy
deleted file mode 100644
index 4bc55a24c5..0000000000
--- a/nifi-commons/nifi-web-utils/src/test/groovy/org/apache/nifi/web/util/WebUtilsGroovyTest.groovy
+++ /dev/null
@@ -1,322 +0,0 @@
-/*
- * 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.web.util
-
-import org.apache.http.conn.ssl.DefaultHostnameVerifier
-import org.glassfish.jersey.client.ClientConfig
-import org.junit.jupiter.api.Test
-import org.mockito.Mockito
-import sun.security.tools.keytool.CertAndKeyGen
-import sun.security.x509.X500Name
-
-import javax.net.ssl.HostnameVerifier
-import javax.net.ssl.SSLContext
-import javax.net.ssl.SSLPeerUnverifiedException
-import javax.servlet.http.HttpServletRequest
-import javax.ws.rs.client.Client
-import javax.ws.rs.core.UriBuilderException
-import java.security.cert.X509Certificate
-
-import static org.junit.jupiter.api.Assertions.assertThrows
-import static org.junit.jupiter.api.Assertions.assertTrue
-
-class WebUtilsGroovyTest {
-    static final String PCP_HEADER = "X-ProxyContextPath"
-    static final String FC_HEADER = "X-Forwarded-Context"
-    static final String FP_HEADER = "X-Forwarded-Prefix"
-
-    static final String ALLOWED_PATH = "/some/context/path"
-
-    HttpServletRequest mockRequest(Map keys) {
-        HttpServletRequest mockRequest = [
-                getContextPath: { ->
-                    "default/path"
-                },
-                getHeader     : { String k ->
-                    switch (k) {
-                        case PCP_HEADER:
-                            return keys["proxy"]
-                            break
-                        case FC_HEADER:
-                            return keys["forward"]
-                            break
-                        case FP_HEADER:
-                            return keys["prefix"]
-                            break
-                        default:
-                            return ""
-                    }
-                }] as HttpServletRequest
-        mockRequest
-    }
-
-    @Test
-    void testShouldDetermineCorrectContextPathWhenPresent() throws Exception {
-        // Arrange
-        final String CORRECT_CONTEXT_PATH = ALLOWED_PATH
-        final String WRONG_CONTEXT_PATH = "this/is/a/bad/path"
-
-        // Variety of requests with different ordering of context paths (the correct one is always "some/context/path"
-        HttpServletRequest proxyRequest = mockRequest([proxy: CORRECT_CONTEXT_PATH])
-        HttpServletRequest forwardedRequest = mockRequest([forward: CORRECT_CONTEXT_PATH])
-        HttpServletRequest prefixRequest = mockRequest([prefix: CORRECT_CONTEXT_PATH])
-        HttpServletRequest proxyBeforeForwardedRequest = mockRequest([proxy: CORRECT_CONTEXT_PATH, forward: WRONG_CONTEXT_PATH])
-        HttpServletRequest proxyBeforePrefixRequest = mockRequest([proxy: CORRECT_CONTEXT_PATH, prefix: WRONG_CONTEXT_PATH])
-        HttpServletRequest forwardBeforePrefixRequest = mockRequest([forward: CORRECT_CONTEXT_PATH, prefix: WRONG_CONTEXT_PATH])
-        List<HttpServletRequest> requests = [proxyRequest, forwardedRequest, prefixRequest, proxyBeforeForwardedRequest,
-                                             proxyBeforePrefixRequest, forwardBeforePrefixRequest]
-
-        // Act
-        requests.each { HttpServletRequest request ->
-            String determinedContextPath = WebUtils.determineContextPath(request)
-
-            // Assert
-            assert determinedContextPath == CORRECT_CONTEXT_PATH
-        }
-    }
-
-    @Test
-    void testShouldDetermineCorrectContextPathWhenAbsent() throws Exception {
-        // Arrange
-        final String CORRECT_CONTEXT_PATH = ""
-
-        // Variety of requests with different ordering of non-existent context paths (the correct one is always ""
-        HttpServletRequest proxyRequest = mockRequest([proxy: ""])
-        HttpServletRequest proxySpacesRequest = mockRequest([proxy: "   "])
-        HttpServletRequest forwardedRequest = mockRequest([forward: ""])
-        HttpServletRequest forwardedSpacesRequest = mockRequest([forward: "   "])
-        HttpServletRequest prefixRequest = mockRequest([prefix: ""])
-        HttpServletRequest prefixSpacesRequest = mockRequest([prefix: "   "])
-        HttpServletRequest proxyBeforeForwardedOrPrefixRequest = mockRequest([proxy: "", forward: "", prefix: ""])
-        HttpServletRequest proxyBeforeForwardedOrPrefixSpacesRequest = mockRequest([proxy: "   ", forward: "   ", prefix: "   "])
-        List<HttpServletRequest> requests = [proxyRequest, proxySpacesRequest, forwardedRequest, forwardedSpacesRequest, prefixRequest, prefixSpacesRequest,
-                                             proxyBeforeForwardedOrPrefixRequest, proxyBeforeForwardedOrPrefixSpacesRequest]
-
-        // Act
-        requests.each { HttpServletRequest request ->
-            String determinedContextPath = WebUtils.determineContextPath(request)
-
-            // Assert
-            assert determinedContextPath == CORRECT_CONTEXT_PATH
-        }
-    }
-
-    @Test
-    void testShouldNormalizeContextPath() throws Exception {
-        // Arrange
-        final String CORRECT_CONTEXT_PATH = ALLOWED_PATH
-        final String TRIMMED_PATH = ALLOWED_PATH[1..-1] // Trims leading /
-
-        // Variety of different context paths (the correct one is always "/some/context/path")
-        List<String> contextPaths = ["/$TRIMMED_PATH", "/" + TRIMMED_PATH, TRIMMED_PATH, TRIMMED_PATH + "/"]
-
-        // Act
-        contextPaths.each { String contextPath ->
-            String normalizedContextPath = WebUtils.normalizeContextPath(contextPath)
-
-            // Assert
-            assert normalizedContextPath == CORRECT_CONTEXT_PATH
-        }
-    }
-
-    @Test
-    void testVerifyContextPathShouldAllowContextPathHeaderIfInAllowList() throws Exception {
-        WebUtils.verifyContextPath(Arrays.asList(ALLOWED_PATH), ALLOWED_PATH)
-    }
-
-    @Test
-    void testVerifyContextPathShouldAllowContextPathHeaderIfInMultipleAllowLists() throws Exception {
-        WebUtils.verifyContextPath(Arrays.asList(ALLOWED_PATH, ALLOWED_PATH.reverse()), ALLOWED_PATH)
-    }
-
-    @Test
-    void testVerifyContextPathShouldAllowContextPathHeaderIfBlank() throws Exception {
-        def emptyContextPaths = ["", "  ", "\t", null]
-        emptyContextPaths.each { String contextPath ->
-            WebUtils.verifyContextPath(Arrays.asList(ALLOWED_PATH), contextPath)
-        }
-    }
-
-    @Test
-    void testVerifyContextPathShouldBlockContextPathHeaderIfNotAllowed() throws Exception {
-        def invalidContextPaths = ["/other/path", "localhost", "/../trying/to/escape"]
-
-        invalidContextPaths.each { String contextPath ->
-            assertThrows(UriBuilderException.class, () -> WebUtils.verifyContextPath(Arrays.asList(ALLOWED_PATH), contextPath))
-        }
-    }
-
-    @Test
-    void testHostnameVerifierType() {
-        // Arrange
-        SSLContext sslContext = Mockito.mock(SSLContext.class)
-        final ClientConfig clientConfig = new ClientConfig()
-
-        // Act
-        Client client = WebUtils.createClient(clientConfig, sslContext)
-        HostnameVerifier hostnameVerifier = client.getHostnameVerifier()
-
-        // Assert
-        assertTrue(hostnameVerifier instanceof DefaultHostnameVerifier)
-    }
-
-    @Test
-    void testHostnameVerifierWildcard() {
-        // Arrange
-        final String EXPECTED_DN = "CN=*.apache.com,OU=Security,O=Apache,ST=CA,C=US"
-        final String hostname = "nifi.apache.com"
-        X509Certificate cert = generateCertificate(EXPECTED_DN)
-        SSLContext sslContext = Mockito.mock(SSLContext.class)
-        final ClientConfig clientConfig = new ClientConfig()
-
-        // Act
-        Client client = WebUtils.createClient(clientConfig, sslContext)
-        DefaultHostnameVerifier hostnameVerifier = (DefaultHostnameVerifier) client.getHostnameVerifier()
-
-        // Verify
-        hostnameVerifier.verify(hostname, cert)
-    }
-
-    @Test
-    void testHostnameVerifierDNWildcardFourthLevelDomain() {
-        // Arrange
-        final String EXPECTED_DN = "CN=*.nifi.apache.org,OU=Security,O=Apache,ST=CA,C=US"
-        final String clientHostname = "client.nifi.apache.org"
-        final String serverHostname = "server.nifi.apache.org"
-        X509Certificate cert = generateCertificate(EXPECTED_DN)
-        SSLContext sslContext = Mockito.mock(SSLContext.class)
-        final ClientConfig clientConfig = new ClientConfig()
-
-
-        // Act
-        Client client = WebUtils.createClient(clientConfig, sslContext)
-        DefaultHostnameVerifier hostnameVerifier = client.getHostnameVerifier()
-
-        // Verify
-        hostnameVerifier.verify(clientHostname, cert)
-        hostnameVerifier.verify(serverHostname, cert)
-    }
-
-    @Test
-    void testHostnameVerifierDomainLevelMismatch() {
-        // Arrange
-        final String EXPECTED_DN = "CN=*.nifi.apache.org,OU=Security,O=Apache,ST=CA,C=US"
-        final String hostname = "nifi.apache.org"
-        X509Certificate cert = generateCertificate(EXPECTED_DN)
-        SSLContext sslContext = Mockito.mock(SSLContext.class)
-        final ClientConfig clientConfig = new ClientConfig()
-
-        // Act
-        Client client = WebUtils.createClient(clientConfig, sslContext)
-        DefaultHostnameVerifier hostnameVerifier = client.getHostnameVerifier()
-
-        assertThrows(SSLPeerUnverifiedException.class, () -> hostnameVerifier.verify(hostname, cert))
-    }
-
-    @Test
-    void testHostnameVerifierEmptyHostname() {
-        // Arrange
-        final String EXPECTED_DN = "CN=nifi.apache.org,OU=Security,O=Apache,ST=CA,C=US"
-        final String hostname = ""
-        X509Certificate cert = generateCertificate(EXPECTED_DN)
-        SSLContext sslContext = Mockito.mock(SSLContext.class)
-        final ClientConfig clientConfig = new ClientConfig()
-
-        // Act
-        Client client = WebUtils.createClient(clientConfig, sslContext)
-        DefaultHostnameVerifier hostnameVerifier = client.getHostnameVerifier()
-
-        assertThrows(SSLPeerUnverifiedException.class, () -> hostnameVerifier.verify(hostname, cert))
-    }
-
-    @Test
-    void testHostnameVerifierDifferentSubdomain() {
-        // Arrange
-        final String EXPECTED_DN = "CN=nifi.apache.org,OU=Security,O=Apache,ST=CA,C=US"
-        final String hostname = "egg.apache.org"
-        X509Certificate cert = generateCertificate(EXPECTED_DN)
-        SSLContext sslContext = Mockito.mock(SSLContext.class)
-        final ClientConfig clientConfig = new ClientConfig()
-
-        // Act
-        Client client = WebUtils.createClient(clientConfig, sslContext)
-        DefaultHostnameVerifier hostnameVerifier = client.getHostnameVerifier()
-
-        assertThrows(SSLPeerUnverifiedException.class, () -> hostnameVerifier.verify(hostname, cert))
-    }
-
-    @Test
-    void testHostnameVerifierDifferentTLD() {
-        // Arrange
-        final String EXPECTED_DN = "CN=nifi.apache.org,OU=Security,O=Apache,ST=CA,C=US"
-        final String hostname = "nifi.apache.com"
-        X509Certificate cert = generateCertificate(EXPECTED_DN)
-        SSLContext sslContext = Mockito.mock(SSLContext.class)
-        final ClientConfig clientConfig = new ClientConfig()
-
-        // Act
-        Client client = WebUtils.createClient(clientConfig, sslContext)
-        DefaultHostnameVerifier hostnameVerifier = client.getHostnameVerifier()
-
-        assertThrows(SSLPeerUnverifiedException.class, () -> hostnameVerifier.verify(hostname, cert))
-    }
-
-    @Test
-    void testHostnameVerifierWildcardTLD() {
-        // Arrange
-        final String EXPECTED_DN = "CN=nifi.apache.*,OU=Security,O=Apache,ST=CA,C=US"
-        final String comTLDhostname = "nifi.apache.com"
-        final String orgTLDHostname = "nifi.apache.org"
-        X509Certificate cert = generateCertificate(EXPECTED_DN)
-        SSLContext sslContext = Mockito.mock(SSLContext.class)
-        final ClientConfig clientConfig = new ClientConfig()
-
-        // Act
-        Client client = WebUtils.createClient(clientConfig, sslContext)
-        DefaultHostnameVerifier hostnameVerifier = client.getHostnameVerifier()
-
-        // Verify
-        hostnameVerifier.verify(comTLDhostname, cert)
-        hostnameVerifier.verify(orgTLDHostname, cert)
-    }
-
-    @Test
-    void testHostnameVerifierWildcardDomain() {
-        // Arrange
-        final String EXPECTED_DN = "CN=nifi.*.com,OU=Security,O=Apache,ST=CA,C=US"
-        final String hostname = "nifi.apache.com"
-        X509Certificate cert = generateCertificate(EXPECTED_DN)
-        SSLContext sslContext = Mockito.mock(SSLContext.class)
-        final ClientConfig clientConfig = new ClientConfig()
-
-        // Act
-        Client client = WebUtils.createClient(clientConfig, sslContext)
-        DefaultHostnameVerifier hostnameVerifier = client.getHostnameVerifier()
-
-        // Verify
-        hostnameVerifier.verify(hostname, cert)
-    }
-
-    X509Certificate generateCertificate(String DN) {
-         CertAndKeyGen certGenerator = new CertAndKeyGen("RSA", "SHA256WithRSA", null)
-         certGenerator.generate(2048)
-
-         long validityPeriod = (long) 365 * 24 * 60 * 60 // 1 YEAR
-         X509Certificate cert = certGenerator.getSelfCertificate(new X500Name(DN), validityPeriod)
-         return cert
-    }
-}
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/http/endpoints/ControllerConfigurationEndpointMerger.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/http/endpoints/ControllerConfigurationEndpointMerger.java
index 4e7af172e2..1f2647c62a 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/http/endpoints/ControllerConfigurationEndpointMerger.java
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/http/endpoints/ControllerConfigurationEndpointMerger.java
@@ -16,7 +16,6 @@
  */
 package org.apache.nifi.cluster.coordination.http.endpoints;
 
-import org.apache.nifi.cluster.coordination.http.endpoints.AbstractSingleEntityEndpoint;
 import org.apache.nifi.cluster.manager.NodeResponse;
 import org.apache.nifi.cluster.manager.PermissionsDtoMerger;
 import org.apache.nifi.cluster.protocol.NodeIdentifier;
diff --git a/nifi-nar-bundles/nifi-splunk-bundle/nifi-splunk-processors/src/test/java/org/apache/nifi/processors/splunk/TestPutSplunkHTTP.java b/nifi-nar-bundles/nifi-splunk-bundle/nifi-splunk-processors/src/test/java/org/apache/nifi/processors/splunk/TestPutSplunkHTTP.java
index dd92cdf95a..f943157aa9 100644
--- a/nifi-nar-bundles/nifi-splunk-bundle/nifi-splunk-processors/src/test/java/org/apache/nifi/processors/splunk/TestPutSplunkHTTP.java
+++ b/nifi-nar-bundles/nifi-splunk-bundle/nifi-splunk-processors/src/test/java/org/apache/nifi/processors/splunk/TestPutSplunkHTTP.java
@@ -49,10 +49,6 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertNull;
 
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertNotNull;
-import static org.junit.jupiter.api.Assertions.assertNull;
-
 @ExtendWith(MockitoExtension.class)
 public class TestPutSplunkHTTP {
     private static final String ACK_ID = "1234";
diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FTPTransfer.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FTPTransfer.java
index f36c1ed612..031ad36686 100644
--- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FTPTransfer.java
+++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FTPTransfer.java
@@ -50,7 +50,6 @@ import org.apache.nifi.processor.ProcessContext;
 import org.apache.nifi.processor.ProcessSession;
 import org.apache.nifi.processor.exception.ProcessException;
 import org.apache.nifi.processor.util.StandardValidators;
-import org.apache.nifi.processors.standard.util.FileTransfer;
 import org.apache.nifi.processors.standard.ftp.FTPClientProvider;
 import org.apache.nifi.processors.standard.ftp.StandardFTPClientProvider;
 import org.apache.nifi.proxy.ProxyConfiguration;
diff --git a/nifi-nar-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/src/test/java/org/apache/nifi/record/sink/TestProcessor.java b/nifi-nar-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/src/test/java/org/apache/nifi/record/sink/TestProcessor.java
index 615e50f174..23a0519c11 100644
--- a/nifi-nar-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/src/test/java/org/apache/nifi/record/sink/TestProcessor.java
+++ b/nifi-nar-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/src/test/java/org/apache/nifi/record/sink/TestProcessor.java
@@ -21,7 +21,6 @@ import org.apache.nifi.processor.AbstractProcessor;
 import org.apache.nifi.processor.ProcessContext;
 import org.apache.nifi.processor.ProcessSession;
 import org.apache.nifi.processor.exception.ProcessException;
-import org.apache.nifi.record.sink.RecordSinkService;
 
 import java.util.ArrayList;
 import java.util.List;