This is an automated email from the ASF dual-hosted git repository.
exceptionfactory pushed a commit to branch support/nifi-1.x
in repository https://gitbox.apache.org/repos/asf/nifi.git
The following commit(s) were added to refs/heads/support/nifi-1.x by this push:
new 99912c559c NIFI-12749 Handled Forward Slash in Flow Name for
nifi-toolkit-cli
99912c559c is described below
commit 99912c559c574885cb41eb7e8e028de28a995d1f
Author: Timea Barna <[email protected]>
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 <[email protected]>
(cherry picked from commit 1781e166196d2bb04cef3b4e661f191303b3b40c)
---
.../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))) {