From 1bd1ff22472e77e9ee4c3e076d6e858153e905ea Mon Sep 17 00:00:00 2001 From: MAHESH KUMAR GADDAM Date: Tue, 17 Jun 2025 22:45:09 -0500 Subject: [PATCH 1/2] enhancement(cli): use try-with-resources for XML output stream --- .../commands/profile/ResolveSubcommand.java | 51 +++++++++++++-- .../tools/cli/core/utils/PrettyPrinter.java | 65 +++++++++++++++++++ .../secauto/oscal/tools/cli/core/CLITest.java | 48 +++++++++++++- 3 files changed, 157 insertions(+), 7 deletions(-) create mode 100644 src/main/java/gov/nist/secauto/oscal/tools/cli/core/utils/PrettyPrinter.java diff --git a/src/main/java/gov/nist/secauto/oscal/tools/cli/core/commands/profile/ResolveSubcommand.java b/src/main/java/gov/nist/secauto/oscal/tools/cli/core/commands/profile/ResolveSubcommand.java index b455e73a..8014b5b8 100644 --- a/src/main/java/gov/nist/secauto/oscal/tools/cli/core/commands/profile/ResolveSubcommand.java +++ b/src/main/java/gov/nist/secauto/oscal/tools/cli/core/commands/profile/ResolveSubcommand.java @@ -30,6 +30,7 @@ import gov.nist.secauto.metaschema.binding.io.Format; import gov.nist.secauto.metaschema.binding.io.IBoundLoader; import gov.nist.secauto.metaschema.binding.io.ISerializer; +import gov.nist.secauto.metaschema.binding.io.SerializationFeature; import gov.nist.secauto.metaschema.cli.processor.CLIProcessor.CallingContext; import gov.nist.secauto.metaschema.cli.processor.ExitCode; import gov.nist.secauto.metaschema.cli.processor.ExitStatus; @@ -99,11 +100,19 @@ public class ResolveSubcommand .desc("overwrite the destination if it exists") .build()); @NonNull + private static final Option PRETTY_PRINT_OPTION = ObjectUtils.notNull( + Option.builder() + .longOpt("pretty-print") + .desc("Enable pretty-printing of the output for better readability.") + .build()); + + @NonNull private static final List