1   /*
2    * SPDX-FileCopyrightText: none
3    * SPDX-License-Identifier: CC0-1.0
4    */
5   
6   package gov.nist.secauto.metaschema.cli.processor;
7   
8   import edu.umd.cs.findbugs.annotations.NonNull;
9   
10  /**
11   * An {@link ExitStatus} implementation that represents a status without an
12   * associated message.
13   * <p>
14   * This implementation is useful when only the exit code needs to be
15   * communicated, without additional context or explanation.
16   */
17  public class NonMessageExitStatus
18      extends AbstractExitStatus {
19  
20    /**
21     * Construct a new exit status without an associated message.
22     *
23     * @param code
24     *          the non-null exit code representing the status
25     */
26    NonMessageExitStatus(@NonNull ExitCode code) {
27      super(code);
28    }
29  
30    /**
31     * {@inheritDoc}
32     *
33     * @return {@code null} as this implementation does not support messages
34     */
35    @Override
36    protected String getMessage() {
37      return null;
38    }
39  }