Sha256: eb4d8da353ddf9726e2bb7b202e567cb323191410ee48182558eaa161fa2c25d
Contents?: true
Size: 1.32 KB
Versions: 24
Compression:
Stored size: 1.32 KB
Contents
package org.embulk.cli.parse; import java.util.ArrayList; import java.util.Collections; import java.util.List; import org.apache.commons.cli.Option; import org.apache.commons.cli.Options; /** * CliOptionsWithHelpMessages is an extension of commons-cli's org.apache.commons.cli.Options. * * It just recognizes {@code HelpMessageAsCliOption} while others are same with {@code org.apache.commons.cli.Options}. * {@code HelpMessageAsCliOption} is added just as a help message line, but ignored as a command line option. * * It is visible only in |org.embulk.cli.parse| because it is an extension of a commons-cli class. * Dependencies on third-party libraries are to be encapsulated. */ final class CliOptionsWithHelpMessages extends Options { CliOptionsWithHelpMessages() { this.allOptions = new ArrayList<Option>(); } /** * Adds commons-cli's {@code org.apache.commons.cli.Option}. */ @Override public final Options addOption(final Option option) { this.allOptions.add(option); if (option instanceof HelpMessageAsCliOption) { return this; } return super.addOption(option); } final List<Option> getAllOptions() { return Collections.unmodifiableList(this.allOptions); } private final ArrayList<Option> allOptions; }
Version data entries
24 entries across 24 versions & 1 rubygems