Class AbstractGlobalUsageGenerator<T>

    • Field Detail

      • commandGroupComparator

        private final java.util.Comparator<? super CommandGroupMetadata> commandGroupComparator
    • Constructor Detail

      • AbstractGlobalUsageGenerator

        public AbstractGlobalUsageGenerator()
      • AbstractGlobalUsageGenerator

        public AbstractGlobalUsageGenerator​(boolean includeHidden)
      • AbstractGlobalUsageGenerator

        public AbstractGlobalUsageGenerator​(java.util.Comparator<? super HelpHint> hintComparator,
                                            java.util.Comparator<? super OptionMetadata> optionComparator,
                                            java.util.Comparator<? super CommandMetadata> commandComparator,
                                            java.util.Comparator<? super CommandGroupMetadata> commandGroupComparator,
                                            boolean includeHidden)
    • Method Detail

      • usage

        public void usage​(GlobalMetadata<T> global)
                   throws java.io.IOException
        Description copied from interface: GlobalUsageGenerator
        Generate the help and output it on standard out
        Specified by:
        usage in interface GlobalUsageGenerator<T>
        Parameters:
        global - Global Metadata
        Throws:
        java.io.IOException - Thrown if there is a problem generating usage output
      • sortCommandGroups

        protected java.util.List<CommandGroupMetadata> sortCommandGroups​(java.util.List<CommandGroupMetadata> groups)
        Sorts the command groups assumign a non-null comparator was provided at instantiation time
        Parameters:
        groups - Command groups
        Returns:
        Sorted command groups
      • findHelpSections

        protected void findHelpSections​(GlobalMetadata<T> global,
                                        java.util.List<HelpSection> preSections,
                                        java.util.List<HelpSection> postSections)
        Finds the help sections
        Parameters:
        command - Command meta-data
        preSections - Sections that should be placed before base content
        postSections - Sections that should be placed after base content