This is an automated email from the ASF dual-hosted git repository. exceptionfactory 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 1781e16619 NIFI-12749 Handled Forward Slash in Flow Name for nifi-toolkit-cli 1781e16619 is described below commit 1781e166196d2bb04cef3b4e661f191303b3b40c Author: Timea Barna <timeaba...@apache.org> AuthorDate: Wed Feb 7 14:17:34 2024 +0100 NIFI-12749 Handled Forward Slash in Flow Name for nifi-toolkit-cli - The export-all-flows command fails when the Flow Name contains a forward slash This closes #8369 Signed-off-by: David Handermann <exceptionfact...@apache.org> --- .../cli/impl/result/registry/VersionedFlowSnapshotsResult.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nifi-toolkit/nifi-toolkit-cli/src/main/java/org/apache/nifi/toolkit/cli/impl/result/registry/VersionedFlowSnapshotsResult.java b/nifi-toolkit/nifi-toolkit-cli/src/main/java/org/apache/nifi/toolkit/cli/impl/result/registry/VersionedFlowSnapshotsResult.java index a2317b459e..7e759915a1 100644 --- a/nifi-toolkit/nifi-toolkit-cli/src/main/java/org/apache/nifi/toolkit/cli/impl/result/registry/VersionedFlowSnapshotsResult.java +++ b/nifi-toolkit/nifi-toolkit-cli/src/main/java/org/apache/nifi/toolkit/cli/impl/result/registry/VersionedFlowSnapshotsResult.java @@ -42,6 +42,7 @@ public class VersionedFlowSnapshotsResult implements WritableResult<Iterator<Ver private static final String FILE_NAME_PREFIX = "toolkit_registry_export_all"; private static final String EXPORT_FILE_NAME = "%s/%s_%s_%s_%d"; private static final String SEPARATOR = "_"; + private static final String SLASH = "/"; private static final String REPLACEMENT = "-"; private final Iterator<VersionedFlowSnapshot> versionedFlowSnapshots; private final String exportDirectoryName; @@ -62,7 +63,9 @@ public class VersionedFlowSnapshotsResult implements WritableResult<Iterator<Ver final VersionedFlowSnapshot versionedFlowSnapshot = versionedFlowSnapshots.next(); if (exportDirectoryName != null) { final String bucketName = versionedFlowSnapshot.getBucket().getName().replaceAll(SEPARATOR, REPLACEMENT); - final String flowName = versionedFlowSnapshot.getFlow().getName().replaceAll(SEPARATOR, REPLACEMENT); + final String flowName = versionedFlowSnapshot.getFlow().getName() + .replaceAll(SEPARATOR, REPLACEMENT) + .replaceAll(SLASH, REPLACEMENT); final int version = versionedFlowSnapshot.getSnapshotMetadata().getVersion(); final String exportFileName = String.format(EXPORT_FILE_NAME, exportDirectoryName, FILE_NAME_PREFIX, bucketName, flowName, version); try (final OutputStream resultOut = Files.newOutputStream(Paths.get(exportFileName))) {