Class DefaultPrinter

    • Field Detail

      • VAR_PRNT_OPTIONS

        protected static final java.lang.String VAR_PRNT_OPTIONS
        See Also:
        Constant Field Values
      • NANORC_MAX_STRING_LENGTH

        private static final int NANORC_MAX_STRING_LENGTH
        See Also:
        Constant Field Values
      • objectToMap

        private java.util.Map<java.lang.Class<?>,​java.util.function.Function<java.lang.Object,​java.util.Map<java.lang.String,​java.lang.Object>>> objectToMap
      • objectToString

        private java.util.Map<java.lang.Class<?>,​java.util.function.Function<java.lang.Object,​java.lang.String>> objectToString
      • highlightValue

        private java.util.Map<java.lang.String,​java.util.function.Function<java.lang.Object,​AttributedString>> highlightValue
      • totLines

        private int totLines
    • Method Detail

      • println

        public void println​(java.lang.Object object)
        Specified by:
        println in interface Printer
      • println

        public void println​(java.util.Map<java.lang.String,​java.lang.Object> optionsIn,
                            java.lang.Object object)
        Specified by:
        println in interface Printer
      • appendUsage

        public java.lang.String[] appendUsage​(java.lang.String[] customUsage)
      • compileOptions

        public java.util.Map<java.lang.String,​java.lang.Object> compileOptions​(Options opt)
      • optionRowHighlight

        private Printer.TableRows optionRowHighlight​(java.lang.Object value)
      • setObjectToMap

        public void setObjectToMap​(java.util.Map<java.lang.Class<?>,​java.util.function.Function<java.lang.Object,​java.util.Map<java.lang.String,​java.lang.Object>>> objectToMap)
        Override ScriptEngine toMap() method
        Parameters:
        objectToMap - key: object class, value: toMap function
      • setObjectToString

        public void setObjectToString​(java.util.Map<java.lang.Class<?>,​java.util.function.Function<java.lang.Object,​java.lang.String>> objectToString)
        Override ScriptEngine toString() method
        Parameters:
        objectToString - key: object class, value: toString function
      • setHighlightValue

        public void setHighlightValue​(java.util.Map<java.lang.String,​java.util.function.Function<java.lang.Object,​AttributedString>> highlightValue)
        Highlight column value
        Parameters:
        highlightValue - key: regex for column name, value: highlight function
      • terminal

        protected Terminal terminal()
        Returns:
        terminal to which will be printed
      • manageBooleanOptions

        protected void manageBooleanOptions​(java.util.Map<java.lang.String,​java.lang.Object> options)
        Boolean printing options Printer checks only if key is present. Boolean options that have false value are removed from the options Map.
        Parameters:
        options - printing options
      • defaultPrntOptions

        protected java.util.Map<java.lang.String,​java.lang.Object> defaultPrntOptions​(boolean skipDefault)
        Set default and mandatory printing options. Also unsupported options will be removed when Printer is used without scriptEngine
        Parameters:
        skipDefault - when true does not set default options
        Returns:
        default, mandatory and supported options
      • internalPrintln

        private void internalPrintln​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                     java.lang.Object object)
      • highlightAndPrint

        protected void highlightAndPrint​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                         java.lang.Throwable exception)
        Highlight and print an exception
        Parameters:
        options - Printing options
        exception - Exception to be printed
      • truncate4nanorc

        private java.lang.String truncate4nanorc​(java.lang.String obj)
      • doValueHighlight

        private boolean doValueHighlight​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                         java.lang.String value)
      • highlightAndPrint

        private void highlightAndPrint​(int width,
                                       Nano.SyntaxHighlighter highlighter,
                                       java.lang.String object,
                                       boolean doValueHighlight)
      • keysToString

        private java.util.Map<java.lang.String,​java.lang.Object> keysToString​(java.util.Map<java.lang.Object,​java.lang.Object> map)
      • mapValue

        private java.lang.Object mapValue​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                          java.lang.String key,
                                          java.util.Map<java.lang.String,​java.lang.Object> map)
      • optionList

        private java.util.List<java.lang.String> optionList​(java.lang.String key,
                                                            java.util.Map<java.lang.String,​java.lang.Object> options)
      • hasMatch

        private boolean hasMatch​(java.util.List<java.lang.String> regexes,
                                 java.lang.String value)
      • addPadding

        private java.lang.String addPadding​(java.lang.String str,
                                            int width)
      • columnValue

        private java.lang.String columnValue​(java.lang.String value)
      • objectToMap

        private java.util.Map<java.lang.String,​java.lang.Object> objectToMap​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                                                                   java.lang.Object obj)
      • objectToString

        private java.lang.String objectToString​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                                java.lang.Object obj)
      • highlightMapValue

        private AttributedString highlightMapValue​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                                   java.lang.String key,
                                                   java.util.Map<java.lang.String,​java.lang.Object> map)
      • highlightValue

        private AttributedString highlightValue​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                                java.lang.String column,
                                                java.lang.Object obj)
      • truncateValue

        private java.lang.String truncateValue​(int maxWidth,
                                               java.lang.String value)
      • objectToList

        private java.util.List<java.lang.Object> objectToList​(java.lang.Object obj)
      • similarSets

        private boolean similarSets​(java.util.List<java.lang.String> ref,
                                    java.util.Set<java.lang.String> c2,
                                    int matchLimit)
      • columnName

        private java.lang.String columnName​(java.lang.String name,
                                            boolean shortName)
      • isNumber

        private boolean isNumber​(java.lang.String str)
      • highlightAndPrint

        private void highlightAndPrint​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                       java.lang.Object obj)
      • doRowHighlight

        private boolean doRowHighlight​(int row,
                                       Printer.TableRows tableRows)
      • highlightList

        private void highlightList​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                   java.util.List<java.lang.Object> collection,
                                   int width)
      • highlightList

        private void highlightList​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                   java.util.List<java.lang.Object> collection,
                                   int width,
                                   int depth)
      • collectionObject

        private boolean collectionObject​(java.lang.Object obj)
      • simpleObject

        private boolean simpleObject​(java.lang.Object obj)
      • canConvert

        private boolean canConvert​(java.lang.Object obj)
      • digits

        private int digits​(int number)
      • cellWidth

        private int cellWidth​(int pos,
                              java.util.List<java.lang.Integer> columns,
                              boolean rownum,
                              java.lang.String columnSep)
      • toTabStops

        private void toTabStops​(java.util.List<java.lang.Integer> columns,
                                int rows,
                                boolean rownum,
                                java.lang.String columnSep)
      • highlightMap

        private void highlightMap​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                  java.util.Map<java.lang.String,​java.lang.Object> map,
                                  int width)
      • highlightMap

        private void highlightMap​(java.util.Map<java.lang.String,​java.lang.Object> options,
                                  java.util.Map<java.lang.String,​java.lang.Object> map,
                                  int width,
                                  int depth)