From 359ffa5b4f39efac15bd47232a581bb0b8b24cb3 Mon Sep 17 00:00:00 2001 From: EndzeitBegins <16666115+EndzeitBegins@users.noreply.github.com> Date: Wed, 17 Jan 2024 21:07:56 +0100 Subject: [PATCH] NIFI-12627 Extract nifi-file-transfer from nifi-standard-processors This closes #8262 Signed-off-by: David Handermann --- nifi-code-coverage/pom.xml | 5 ++ .../nifi-file-transfer/pom.xml | 59 +++++++++++++++++++ .../file/transfer}/FetchFileTransfer.java | 30 +++++----- .../util/file/transfer}/FileInfo.java | 2 +- .../util/file/transfer}/FileTransfer.java | 2 +- .../util/file/transfer}/GetFileTransfer.java | 5 +- .../util/file/transfer}/ListFileTransfer.java | 18 +++--- .../transfer}/PermissionDeniedException.java | 2 +- .../util/file/transfer}/PutFileTransfer.java | 7 +-- .../util/file/transfer}/TestFileInfo.java | 2 +- nifi-nar-bundles/nifi-extension-utils/pom.xml | 1 + .../nifi-standard-processors/pom.xml | 5 ++ .../nifi/processors/standard/FetchFTP.java | 3 +- .../nifi/processors/standard/FetchSFTP.java | 3 +- .../nifi/processors/standard/GetFTP.java | 3 +- .../nifi/processors/standard/GetSFTP.java | 3 +- .../nifi/processors/standard/ListFTP.java | 3 +- .../nifi/processors/standard/ListFile.java | 2 +- .../nifi/processors/standard/ListSFTP.java | 5 +- .../nifi/processors/standard/PutFTP.java | 1 + .../nifi/processors/standard/PutSFTP.java | 3 +- .../processors/standard/UnpackContent.java | 2 +- .../processors/standard/util/FTPTransfer.java | 3 + .../standard/util/SFTPTransfer.java | 3 + .../processors/standard/FTPCharsetIT.java | 3 + .../nifi/processors/standard/TestFTP.java | 2 + .../processors/standard/TestFetchFTP.java | 5 +- .../processors/standard/TestListFile.java | 2 +- .../nifi/processors/standard/TestPutSFTP.java | 2 +- .../standard/util/TestSFTPTransfer.java | 2 + .../standard/util/TestServerSFTPTransfer.java | 1 + 31 files changed, 137 insertions(+), 52 deletions(-) create mode 100644 nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/pom.xml rename nifi-nar-bundles/{nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard => nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer}/FetchFileTransfer.java (92%) rename nifi-nar-bundles/{nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util => nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer}/FileInfo.java (99%) rename nifi-nar-bundles/{nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util => nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer}/FileTransfer.java (99%) rename nifi-nar-bundles/{nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard => nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer}/GetFileTransfer.java (98%) rename nifi-nar-bundles/{nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard => nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer}/ListFileTransfer.java (88%) rename nifi-nar-bundles/{nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util => nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer}/PermissionDeniedException.java (95%) rename nifi-nar-bundles/{nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard => nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer}/PutFileTransfer.java (98%) rename nifi-nar-bundles/{nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util => nifi-extension-utils/nifi-file-transfer/src/test/java/org/apache/nifi/processor/util/file/transfer}/TestFileInfo.java (96%) diff --git a/nifi-code-coverage/pom.xml b/nifi-code-coverage/pom.xml index 0c8b891d5dc7..70e3f0ce4ca5 100644 --- a/nifi-code-coverage/pom.xml +++ b/nifi-code-coverage/pom.xml @@ -1002,6 +1002,11 @@ nifi-event-transport 2.0.0-SNAPSHOT + + org.apache.nifi + nifi-file-transfer + 2.0.0-SNAPSHOT + org.apache.nifi nifi-hadoop-utils diff --git a/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/pom.xml b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/pom.xml new file mode 100644 index 000000000000..4b3085fd2061 --- /dev/null +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/pom.xml @@ -0,0 +1,59 @@ + + + + 4.0.0 + + org.apache.nifi + nifi-extension-utils + 2.0.0-SNAPSHOT + + nifi-file-transfer + jar + + + org.apache.nifi + nifi-api + + + org.apache.nifi + nifi-listed-entity + 2.0.0-SNAPSHOT + + + org.apache.nifi + nifi-property-utils + 2.0.0-SNAPSHOT + + + org.apache.nifi + nifi-record + 2.0.0-SNAPSHOT + + + org.apache.nifi + nifi-utils + 2.0.0-SNAPSHOT + + + commons-io + commons-io + + + org.apache.commons + commons-lang3 + + + diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/FetchFileTransfer.java b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/FetchFileTransfer.java similarity index 92% rename from nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/FetchFileTransfer.java rename to nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/FetchFileTransfer.java index 1e8efba2c06a..a4f720924558 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/FetchFileTransfer.java +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/FetchFileTransfer.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.nifi.processors.standard; +package org.apache.nifi.processor.util.file.transfer; import org.apache.commons.lang3.StringUtils; import org.apache.nifi.annotation.lifecycle.OnScheduled; @@ -32,8 +32,6 @@ import org.apache.nifi.processor.Relationship; 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.util.PermissionDeniedException; import org.apache.nifi.util.StopWatch; import org.apache.nifi.util.Tuple; @@ -58,19 +56,19 @@ */ public abstract class FetchFileTransfer extends AbstractProcessor { - static final AllowableValue COMPLETION_NONE = new AllowableValue("None", "None", "Leave the file as-is"); - static final AllowableValue COMPLETION_MOVE = new AllowableValue("Move File", "Move File", "Move the file to the directory specified by the property"); - static final AllowableValue COMPLETION_DELETE = new AllowableValue("Delete File", "Delete File", "Deletes the original file from the remote system"); - static final String FAILURE_REASON_ATTRIBUTE = "fetch.failure.reason"; + public static final AllowableValue COMPLETION_NONE = new AllowableValue("None", "None", "Leave the file as-is"); + public static final AllowableValue COMPLETION_MOVE = new AllowableValue("Move File", "Move File", "Move the file to the directory specified by the property"); + public static final AllowableValue COMPLETION_DELETE = new AllowableValue("Delete File", "Delete File", "Deletes the original file from the remote system"); + public static final String FAILURE_REASON_ATTRIBUTE = "fetch.failure.reason"; - static final PropertyDescriptor HOSTNAME = new PropertyDescriptor.Builder() + public static final PropertyDescriptor HOSTNAME = new PropertyDescriptor.Builder() .name("Hostname") .description("The fully-qualified hostname or IP address of the host to fetch the data from") .addValidator(StandardValidators.NON_EMPTY_VALIDATOR) .expressionLanguageSupported(ExpressionLanguageScope.FLOWFILE_ATTRIBUTES) .required(true) .build(); - static final PropertyDescriptor UNDEFAULTED_PORT = new PropertyDescriptor.Builder() + public static final PropertyDescriptor UNDEFAULTED_PORT = new PropertyDescriptor.Builder() .name("Port") .description("The port to connect to on the remote host to fetch the data from") .addValidator(StandardValidators.NON_EMPTY_VALIDATOR) @@ -91,7 +89,7 @@ public abstract class FetchFileTransfer extends AbstractProcessor { .addValidator(StandardValidators.NON_EMPTY_VALIDATOR) .expressionLanguageSupported(ExpressionLanguageScope.FLOWFILE_ATTRIBUTES) .build(); - static final PropertyDescriptor COMPLETION_STRATEGY = new PropertyDescriptor.Builder() + public static final PropertyDescriptor COMPLETION_STRATEGY = new PropertyDescriptor.Builder() .name("Completion Strategy") .description("Specifies what to do with the original file on the server once it has been pulled into NiFi. If the Completion Strategy fails, a warning will be " + "logged but the data will still be transferred.") @@ -100,14 +98,14 @@ public abstract class FetchFileTransfer extends AbstractProcessor { .defaultValue(COMPLETION_NONE.getValue()) .required(true) .build(); - static final PropertyDescriptor MOVE_CREATE_DIRECTORY = new PropertyDescriptor.Builder() + public static final PropertyDescriptor MOVE_CREATE_DIRECTORY = new PropertyDescriptor.Builder() .fromPropertyDescriptor(FileTransfer.CREATE_DIRECTORY).description(String.format("Used when '%s' is '%s'. %s", COMPLETION_STRATEGY.getDisplayName(), COMPLETION_MOVE.getDisplayName(), FileTransfer.CREATE_DIRECTORY.getDescription())) .required(false) .build(); - static final PropertyDescriptor MOVE_DESTINATION_DIR = new PropertyDescriptor.Builder() + public static final PropertyDescriptor MOVE_DESTINATION_DIR = new PropertyDescriptor.Builder() .name("Move Destination Directory") .description(String.format("The directory on the remote server to move the original file to once it has been ingested into NiFi. " + "This property is ignored unless the %s is set to '%s'. The specified directory must already exist on " @@ -118,7 +116,7 @@ public abstract class FetchFileTransfer extends AbstractProcessor { .required(false) .build(); - static final PropertyDescriptor FILE_NOT_FOUND_LOG_LEVEL = new PropertyDescriptor.Builder() + public static final PropertyDescriptor FILE_NOT_FOUND_LOG_LEVEL = new PropertyDescriptor.Builder() .displayName("Log level when file not found") .name("fetchfiletransfer-notfound-loglevel") .description("Log level to use in case the file does not exist when the processor is triggered") @@ -131,15 +129,15 @@ public abstract class FetchFileTransfer extends AbstractProcessor { .name("success") .description("All FlowFiles that are received are routed to success") .build(); - static final Relationship REL_COMMS_FAILURE = new Relationship.Builder() + public static final Relationship REL_COMMS_FAILURE = new Relationship.Builder() .name("comms.failure") .description("Any FlowFile that could not be fetched from the remote server due to a communications failure will be transferred to this Relationship.") .build(); - static final Relationship REL_NOT_FOUND = new Relationship.Builder() + public static final Relationship REL_NOT_FOUND = new Relationship.Builder() .name("not.found") .description("Any FlowFile for which we receive a 'Not Found' message from the remote server will be transferred to this Relationship.") .build(); - static final Relationship REL_PERMISSION_DENIED = new Relationship.Builder() + public static final Relationship REL_PERMISSION_DENIED = new Relationship.Builder() .name("permission.denied") .description("Any FlowFile that could not be fetched from the remote server due to insufficient permissions will be transferred to this Relationship.") .build(); diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FileInfo.java b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/FileInfo.java similarity index 99% rename from nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FileInfo.java rename to nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/FileInfo.java index 20efdf5fc37d..a6ed2c265ef5 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FileInfo.java +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/FileInfo.java @@ -14,7 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.nifi.processors.standard.util; +package org.apache.nifi.processor.util.file.transfer; import java.io.File; import java.io.Serializable; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FileTransfer.java b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/FileTransfer.java similarity index 99% rename from nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FileTransfer.java rename to nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/FileTransfer.java index c3fc9fb7b713..56f6f1bfa72a 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FileTransfer.java +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/FileTransfer.java @@ -14,7 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.nifi.processors.standard.util; +package org.apache.nifi.processor.util.file.transfer; import java.io.Closeable; import java.io.File; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GetFileTransfer.java b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/GetFileTransfer.java similarity index 98% rename from nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GetFileTransfer.java rename to nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/GetFileTransfer.java index 745334918aed..b902d6e483b7 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GetFileTransfer.java +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/GetFileTransfer.java @@ -14,7 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.nifi.processors.standard; +package org.apache.nifi.processor.util.file.transfer; import org.apache.nifi.annotation.lifecycle.OnScheduled; import org.apache.nifi.flowfile.FlowFile; @@ -25,8 +25,6 @@ import org.apache.nifi.processor.ProcessSession; import org.apache.nifi.processor.Relationship; import org.apache.nifi.processor.exception.FlowFileAccessException; -import org.apache.nifi.processors.standard.util.FileInfo; -import org.apache.nifi.processors.standard.util.FileTransfer; import org.apache.nifi.util.StopWatch; import java.io.File; @@ -67,6 +65,7 @@ public abstract class GetFileTransfer extends AbstractProcessor { public static final String FILE_OWNER_ATTRIBUTE = "file.owner"; public static final String FILE_GROUP_ATTRIBUTE = "file.group"; public static final String FILE_PERMISSIONS_ATTRIBUTE = "file.permissions"; + public static final String FILE_SIZE_ATTRIBUTE = "file.size"; public static final String FILE_MODIFY_DATE_ATTR_FORMAT = "yyyy-MM-dd'T'HH:mm:ssZ"; protected static final DateTimeFormatter DATE_TIME_FORMATTER = DateTimeFormatter.ofPattern(FILE_MODIFY_DATE_ATTR_FORMAT); diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFileTransfer.java b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/ListFileTransfer.java similarity index 88% rename from nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFileTransfer.java rename to nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/ListFileTransfer.java index 0187f1e9696f..1106b27fa37c 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFileTransfer.java +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/ListFileTransfer.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.nifi.processors.standard; +package org.apache.nifi.processor.util.file.transfer; import org.apache.commons.io.IOUtils; import org.apache.nifi.components.PropertyDescriptor; @@ -24,8 +24,6 @@ import org.apache.nifi.processor.ProcessContext; import org.apache.nifi.processor.util.StandardValidators; import org.apache.nifi.processor.util.list.AbstractListProcessor; -import org.apache.nifi.processors.standard.util.FileInfo; -import org.apache.nifi.processors.standard.util.FileTransfer; import org.apache.nifi.serialization.record.RecordSchema; import java.io.IOException; @@ -46,7 +44,7 @@ public abstract class ListFileTransfer extends AbstractListProcessor { .required(true) .expressionLanguageSupported(ExpressionLanguageScope.ENVIRONMENT) .build(); - static final PropertyDescriptor UNDEFAULTED_PORT = new PropertyDescriptor.Builder() + public static final PropertyDescriptor UNDEFAULTED_PORT = new PropertyDescriptor.Builder() .name("Port") .description("The port to connect to on the remote host to fetch the data from") .addValidator(StandardValidators.NON_EMPTY_VALIDATOR) @@ -76,15 +74,15 @@ public abstract class ListFileTransfer extends AbstractListProcessor { @Override protected Map createAttributes(final FileInfo fileInfo, final ProcessContext context) { final Map attributes = new HashMap<>(); - final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(ListFile.FILE_MODIFY_DATE_ATTR_FORMAT, Locale.US); + final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(GetFileTransfer.FILE_MODIFY_DATE_ATTR_FORMAT, Locale.US); attributes.put(getProtocolName() + ".remote.host", context.getProperty(HOSTNAME).evaluateAttributeExpressions().getValue()); attributes.put(getProtocolName() + ".remote.port", context.getProperty(UNDEFAULTED_PORT).evaluateAttributeExpressions().getValue()); attributes.put(getProtocolName() + ".listing.user", context.getProperty(USERNAME).evaluateAttributeExpressions().getValue()); - attributes.put(ListFile.FILE_LAST_MODIFY_TIME_ATTRIBUTE, dateTimeFormatter.format(Instant.ofEpochMilli(fileInfo.getLastModifiedTime()).atZone(ZoneId.systemDefault()))); - attributes.put(ListFile.FILE_PERMISSIONS_ATTRIBUTE, fileInfo.getPermissions()); - attributes.put(ListFile.FILE_OWNER_ATTRIBUTE, fileInfo.getOwner()); - attributes.put(ListFile.FILE_GROUP_ATTRIBUTE, fileInfo.getGroup()); - attributes.put(ListFile.FILE_SIZE_ATTRIBUTE, Long.toString(fileInfo.getSize())); + attributes.put(GetFileTransfer.FILE_LAST_MODIFY_TIME_ATTRIBUTE, dateTimeFormatter.format(Instant.ofEpochMilli(fileInfo.getLastModifiedTime()).atZone(ZoneId.systemDefault()))); + attributes.put(GetFileTransfer.FILE_PERMISSIONS_ATTRIBUTE, fileInfo.getPermissions()); + attributes.put(GetFileTransfer.FILE_OWNER_ATTRIBUTE, fileInfo.getOwner()); + attributes.put(GetFileTransfer.FILE_GROUP_ATTRIBUTE, fileInfo.getGroup()); + attributes.put(GetFileTransfer.FILE_SIZE_ATTRIBUTE, Long.toString(fileInfo.getSize())); attributes.put(CoreAttributes.FILENAME.key(), fileInfo.getFileName()); final String fullPath = fileInfo.getFullPathFileName(); if (fullPath != null) { diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/PermissionDeniedException.java b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/PermissionDeniedException.java similarity index 95% rename from nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/PermissionDeniedException.java rename to nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/PermissionDeniedException.java index 465995e99fc8..616815ff6adc 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/PermissionDeniedException.java +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/PermissionDeniedException.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.nifi.processors.standard.util; +package org.apache.nifi.processor.util.file.transfer; import java.io.IOException; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutFileTransfer.java b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/PutFileTransfer.java similarity index 98% rename from nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutFileTransfer.java rename to nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/PutFileTransfer.java index afb6bb6058d4..353680c595e1 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutFileTransfer.java +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/main/java/org/apache/nifi/processor/util/file/transfer/PutFileTransfer.java @@ -14,7 +14,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.apache.nifi.processors.standard; +package org.apache.nifi.processor.util.file.transfer; import org.apache.nifi.flowfile.FlowFile; import org.apache.nifi.flowfile.attributes.CoreAttributes; @@ -26,9 +26,6 @@ import org.apache.nifi.processor.exception.FlowFileAccessException; import org.apache.nifi.processor.exception.ProcessException; import org.apache.nifi.processor.io.InputStreamCallback; -import org.apache.nifi.processors.standard.util.FileInfo; -import org.apache.nifi.processors.standard.util.FileTransfer; -import org.apache.nifi.processors.standard.util.SFTPTransfer; import org.apache.nifi.util.StopWatch; import org.apache.nifi.util.StringUtils; @@ -127,7 +124,7 @@ public void onTrigger(final ProcessContext context, final ProcessSession session @Override public void process(final InputStream in) throws IOException { try (final InputStream bufferedIn = new BufferedInputStream(in)) { - if (workingDirPath != null && context.getProperty(SFTPTransfer.CREATE_DIRECTORY).asBoolean()) { + if (workingDirPath != null && context.getProperty(FileTransfer.CREATE_DIRECTORY).asBoolean()) { transfer.ensureDirectoryExists(flowFileToTransfer, new File(workingDirPath)); } diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util/TestFileInfo.java b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/test/java/org/apache/nifi/processor/util/file/transfer/TestFileInfo.java similarity index 96% rename from nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util/TestFileInfo.java rename to nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/test/java/org/apache/nifi/processor/util/file/transfer/TestFileInfo.java index ea5ab57cff1a..922cd89a8be2 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util/TestFileInfo.java +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-file-transfer/src/test/java/org/apache/nifi/processor/util/file/transfer/TestFileInfo.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.nifi.processors.standard.util; +package org.apache.nifi.processor.util.file.transfer; import org.junit.jupiter.api.Test; diff --git a/nifi-nar-bundles/nifi-extension-utils/pom.xml b/nifi-nar-bundles/nifi-extension-utils/pom.xml index f77ab77313f2..186c64c47e1f 100644 --- a/nifi-nar-bundles/nifi-extension-utils/pom.xml +++ b/nifi-nar-bundles/nifi-extension-utils/pom.xml @@ -34,6 +34,7 @@ nifi-event-listen nifi-event-put nifi-event-transport + nifi-file-transfer nifi-hadoop-utils nifi-kerberos-test-utils nifi-listed-entity diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/pom.xml b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/pom.xml index c00c5d3c768c..d6a94fd63a58 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/pom.xml +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/pom.xml @@ -67,6 +67,11 @@ nifi-event-transport 2.0.0-SNAPSHOT + + org.apache.nifi + nifi-file-transfer + 2.0.0-SNAPSHOT + org.apache.nifi nifi-syslog-utils diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/FetchFTP.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/FetchFTP.java index 2323010421ca..3d1b6a25c8c3 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/FetchFTP.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/FetchFTP.java @@ -33,8 +33,9 @@ import org.apache.nifi.components.ValidationContext; import org.apache.nifi.components.ValidationResult; import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.util.file.transfer.FetchFileTransfer; import org.apache.nifi.processors.standard.util.FTPTransfer; -import org.apache.nifi.processors.standard.util.FileTransfer; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; // Note that we do not use @SupportsBatching annotation. This processor cannot support batching because it must ensure that session commits happen before remote files are deleted. diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/FetchSFTP.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/FetchSFTP.java index e35c45cfd32c..7ab3a16e2566 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/FetchSFTP.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/FetchSFTP.java @@ -33,8 +33,9 @@ import org.apache.nifi.components.ValidationContext; import org.apache.nifi.components.ValidationResult; import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.util.file.transfer.FetchFileTransfer; import org.apache.nifi.processors.standard.util.FTPTransfer; -import org.apache.nifi.processors.standard.util.FileTransfer; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; import org.apache.nifi.processors.standard.util.SFTPTransfer; // Note that we do not use @SupportsBatching annotation. This processor cannot support batching because it must ensure that session commits happen before remote files are deleted. diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GetFTP.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GetFTP.java index 970eaeb3842e..af982b3a749a 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GetFTP.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GetFTP.java @@ -33,8 +33,9 @@ import org.apache.nifi.components.ValidationResult; import org.apache.nifi.processor.ProcessContext; import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.util.file.transfer.GetFileTransfer; import org.apache.nifi.processors.standard.util.FTPTransfer; -import org.apache.nifi.processors.standard.util.FileTransfer; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; @InputRequirement(Requirement.INPUT_FORBIDDEN) @Tags({"FTP", "get", "retrieve", "files", "fetch", "remote", "ingest", "source", "input"}) diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GetSFTP.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GetSFTP.java index 0e105a86fd89..7039a8de6417 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GetSFTP.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/GetSFTP.java @@ -33,8 +33,9 @@ import org.apache.nifi.components.ValidationResult; import org.apache.nifi.processor.ProcessContext; import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.util.file.transfer.GetFileTransfer; import org.apache.nifi.processors.standard.util.FTPTransfer; -import org.apache.nifi.processors.standard.util.FileTransfer; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; import org.apache.nifi.processors.standard.util.SFTPTransfer; @InputRequirement(Requirement.INPUT_FORBIDDEN) diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFTP.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFTP.java index 27b81adcdee8..aebe086e8d7a 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFTP.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFTP.java @@ -34,9 +34,10 @@ import org.apache.nifi.components.state.Scope; import org.apache.nifi.context.PropertyContext; import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.util.file.transfer.ListFileTransfer; import org.apache.nifi.processor.util.list.ListedEntityTracker; import org.apache.nifi.processors.standard.util.FTPTransfer; -import org.apache.nifi.processors.standard.util.FileTransfer; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; import java.util.ArrayList; import java.util.Collection; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFile.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFile.java index 14476e5498e4..666230b95d9a 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFile.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFile.java @@ -44,7 +44,7 @@ import org.apache.nifi.processor.util.StandardValidators; import org.apache.nifi.processor.util.list.AbstractListProcessor; import org.apache.nifi.processor.util.list.ListedEntityTracker; -import org.apache.nifi.processors.standard.util.FileInfo; +import org.apache.nifi.processor.util.file.transfer.FileInfo; import org.apache.nifi.scheduling.SchedulingStrategy; import org.apache.nifi.serialization.record.RecordSchema; import org.apache.nifi.util.Tuple; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListSFTP.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListSFTP.java index 3caa99c13c4d..16a4e8e14e24 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListSFTP.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListSFTP.java @@ -36,10 +36,11 @@ import org.apache.nifi.context.PropertyContext; import org.apache.nifi.processor.DataUnit; import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.util.file.transfer.ListFileTransfer; import org.apache.nifi.processor.util.list.ListedEntityTracker; import org.apache.nifi.processors.standard.util.FTPTransfer; -import org.apache.nifi.processors.standard.util.FileInfo; -import org.apache.nifi.processors.standard.util.FileTransfer; +import org.apache.nifi.processor.util.file.transfer.FileInfo; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; import org.apache.nifi.processors.standard.util.SFTPTransfer; import java.io.IOException; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutFTP.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutFTP.java index e26ec43cf874..e627250886ed 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutFTP.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutFTP.java @@ -44,6 +44,7 @@ import org.apache.nifi.processor.ProcessContext; import org.apache.nifi.processor.ProcessorInitializationContext; import org.apache.nifi.processor.util.StandardValidators; +import org.apache.nifi.processor.util.file.transfer.PutFileTransfer; import org.apache.nifi.processors.standard.util.FTPTransfer; @SupportsBatching diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutSFTP.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutSFTP.java index d2775c3e4e15..ef2d004ef373 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutSFTP.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutSFTP.java @@ -32,8 +32,9 @@ import org.apache.nifi.components.ValidationResult; import org.apache.nifi.processor.ProcessContext; import org.apache.nifi.processor.ProcessorInitializationContext; +import org.apache.nifi.processor.util.file.transfer.PutFileTransfer; import org.apache.nifi.processors.standard.util.FTPTransfer; -import org.apache.nifi.processors.standard.util.FileTransfer; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; import org.apache.nifi.processors.standard.util.SFTPTransfer; @SupportsBatching diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/UnpackContent.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/UnpackContent.java index e619d937d476..3b736aaa6c36 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/UnpackContent.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/UnpackContent.java @@ -50,7 +50,7 @@ import org.apache.nifi.processor.exception.ProcessException; import org.apache.nifi.processor.io.InputStreamCallback; import org.apache.nifi.processor.util.StandardValidators; -import org.apache.nifi.processors.standard.util.FileInfo; +import org.apache.nifi.processor.util.file.transfer.FileInfo; import org.apache.nifi.stream.io.StreamUtils; import org.apache.nifi.util.FlowFileUnpackager; import org.apache.nifi.util.FlowFileUnpackagerV1; 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 55318431c884..057f66c8a570 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 @@ -49,6 +49,9 @@ import org.apache.nifi.processor.ProcessSession; import org.apache.nifi.processor.exception.ProcessException; import org.apache.nifi.processor.util.StandardValidators; +import org.apache.nifi.processor.util.file.transfer.FileInfo; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; +import org.apache.nifi.processor.util.file.transfer.PermissionDeniedException; 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-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/SFTPTransfer.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/SFTPTransfer.java index a4ffb5c6a15d..1dd640809ab3 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/SFTPTransfer.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/SFTPTransfer.java @@ -43,6 +43,9 @@ import org.apache.nifi.processor.ProcessSession; import org.apache.nifi.processor.exception.ProcessException; import org.apache.nifi.processor.util.StandardValidators; +import org.apache.nifi.processor.util.file.transfer.FileInfo; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; +import org.apache.nifi.processor.util.file.transfer.PermissionDeniedException; import org.apache.nifi.processors.standard.ssh.SSHClientProvider; import org.apache.nifi.processors.standard.ssh.StandardSSHClientProvider; import org.apache.nifi.proxy.ProxyConfiguration; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/FTPCharsetIT.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/FTPCharsetIT.java index 7785a3594b7e..6df41d16cc0a 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/FTPCharsetIT.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/FTPCharsetIT.java @@ -30,6 +30,9 @@ import org.apache.ftpserver.usermanager.impl.BaseUser; import org.apache.nifi.flowfile.attributes.CoreAttributes; import org.apache.nifi.processor.Processor; +import org.apache.nifi.processor.util.file.transfer.FetchFileTransfer; +import org.apache.nifi.processor.util.file.transfer.ListFileTransfer; +import org.apache.nifi.processor.util.file.transfer.PutFileTransfer; import org.apache.nifi.processor.util.list.AbstractListProcessor; import org.apache.nifi.processors.standard.util.FTPTransfer; import org.apache.nifi.util.MockFlowFile; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestFTP.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestFTP.java index 6695bb50a7d3..d33cae8a621f 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestFTP.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestFTP.java @@ -19,6 +19,8 @@ import org.apache.nifi.components.ValidationResult; import org.apache.nifi.flowfile.attributes.CoreAttributes; import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.util.file.transfer.FetchFileTransfer; +import org.apache.nifi.processor.util.file.transfer.PutFileTransfer; import org.apache.nifi.processor.util.list.AbstractListProcessor; import org.apache.nifi.processors.standard.util.FTPTransfer; import org.apache.nifi.util.MockFlowFile; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestFetchFTP.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestFetchFTP.java index 4fcdf7a21ac7..32c75d5a5d31 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestFetchFTP.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestFetchFTP.java @@ -25,9 +25,10 @@ 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.file.transfer.FetchFileTransfer; import org.apache.nifi.processors.standard.util.FTPTransfer; -import org.apache.nifi.processors.standard.util.FileTransfer; -import org.apache.nifi.processors.standard.util.PermissionDeniedException; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; +import org.apache.nifi.processor.util.file.transfer.PermissionDeniedException; import org.apache.nifi.util.MockFlowFile; import org.apache.nifi.util.MockProcessContext; import org.apache.nifi.util.TestRunner; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestListFile.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestListFile.java index f08cf30ee2f8..99b13b1afa0c 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestListFile.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestListFile.java @@ -26,7 +26,7 @@ import org.apache.nifi.processor.ProcessContext; import org.apache.nifi.processor.util.list.AbstractListProcessor; import org.apache.nifi.processor.util.list.ListProcessorTestWatcher; -import org.apache.nifi.processors.standard.util.FileInfo; +import org.apache.nifi.processor.util.file.transfer.FileInfo; import org.apache.nifi.util.MockFlowFile; import org.apache.nifi.util.TestRunner; import org.apache.nifi.util.TestRunners; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestPutSFTP.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestPutSFTP.java index 809bc0c5c539..0e8c36bf3195 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestPutSFTP.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestPutSFTP.java @@ -18,7 +18,7 @@ import org.apache.commons.io.FileUtils; import org.apache.nifi.flowfile.attributes.CoreAttributes; -import org.apache.nifi.processors.standard.util.FileTransfer; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; import org.apache.nifi.processors.standard.util.SFTPTransfer; import org.apache.nifi.processors.standard.util.SSHTestServer; import org.apache.nifi.provenance.ProvenanceEventRecord; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util/TestSFTPTransfer.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util/TestSFTPTransfer.java index 40f223714f0c..04a069debefa 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util/TestSFTPTransfer.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util/TestSFTPTransfer.java @@ -28,6 +28,8 @@ import org.apache.nifi.flowfile.FlowFile; import org.apache.nifi.logging.ComponentLog; import org.apache.nifi.processor.ProcessContext; +import org.apache.nifi.processor.util.file.transfer.FileInfo; +import org.apache.nifi.processor.util.file.transfer.FileTransfer; import org.apache.nifi.util.MockFlowFile; import org.apache.nifi.util.MockPropertyValue; import org.junit.jupiter.api.Test; diff --git a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util/TestServerSFTPTransfer.java b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util/TestServerSFTPTransfer.java index 98967871365d..2f8603ee1e2a 100644 --- a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util/TestServerSFTPTransfer.java +++ b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/util/TestServerSFTPTransfer.java @@ -21,6 +21,7 @@ import org.apache.nifi.components.PropertyDescriptor; import org.apache.nifi.context.PropertyContext; import org.apache.nifi.logging.ComponentLog; +import org.apache.nifi.processor.util.file.transfer.FileInfo; import org.apache.nifi.util.MockPropertyContext; import org.apache.sshd.common.file.virtualfs.VirtualFileSystemFactory; import org.apache.sshd.server.SshServer;