Package org.jline.console.impl
Class DefaultPrinter
- java.lang.Object
-
- org.jline.console.impl.AbstractCommandRegistry
-
- org.jline.console.impl.JlineCommandRegistry
-
- org.jline.console.impl.DefaultPrinter
-
- All Implemented Interfaces:
CommandRegistry,Printer
public class DefaultPrinter extends JlineCommandRegistry implements Printer
Print highlighted objects to console.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classDefaultPrinter.BadOptionValueExceptionprivate static classDefaultPrinter.TruncatedOutputException-
Nested classes/interfaces inherited from interface org.jline.console.CommandRegistry
CommandRegistry.CommandSession
-
Nested classes/interfaces inherited from interface org.jline.console.Printer
Printer.TableRows
-
-
Field Summary
Fields Modifier and Type Field Description private ConfigurationPathconfigPathprivate ScriptEngineengineprivate java.util.Map<java.lang.String,java.util.function.Function<java.lang.Object,AttributedString>>highlightValueprivate static intNANORC_MAX_STRING_LENGTHprivate java.util.Map<java.lang.Class<?>,java.util.function.Function<java.lang.Object,java.util.Map<java.lang.String,java.lang.Object>>>objectToMapprivate java.util.Map<java.lang.Class<?>,java.util.function.Function<java.lang.Object,java.lang.String>>objectToStringprivate static intPRNT_INDENTIONprivate static intPRNT_MAX_DEPTHprivate static intPRNT_MAX_ROWSprivate StyleResolverprntStyleprivate inttotLinesprivate static java.lang.StringVAR_NANORCprivate static java.lang.StringVAR_PRNT_OPTIONS-
Fields inherited from interface org.jline.console.Printer
ALL, BOOLEAN_KEYS, BORDER, COLUMNS, COLUMNS_IN, COLUMNS_OUT, EXCLUDE, HIGHLIGHT_VALUE, INCLUDE, INDENTION, MAP_SIMILARITY, MAX_COLUMN_WIDTH, MAX_DEPTH, MAXROWS, OBJECT_TO_MAP, OBJECT_TO_STRING, ONE_ROW_TABLE, ROW_HIGHLIGHT, ROWNUM, SHORT_NAMES, SKIP_DEFAULT_OPTIONS, STRUCT_ON_TABLE, STYLE, TO_STRING, VALUE_STYLE, WIDTH
-
-
Constructor Summary
Constructors Constructor Description DefaultPrinter(ConfigurationPath configPath)DefaultPrinter(ScriptEngine engine, ConfigurationPath configPath)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.StringaddPadding(java.lang.String str, int width)private AttributedStringaddPadding(AttributedString str, int width)java.lang.String[]appendUsage(java.lang.String[] customUsage)private booleancanConvert(java.lang.Object obj)private intcellWidth(int pos, java.util.List<java.lang.Integer> columns, boolean rownum, java.lang.String columnSep)private booleancollectionObject(java.lang.Object obj)private java.lang.StringcolumnName(java.lang.String name, boolean shortName)private java.lang.StringcolumnValue(java.lang.String value)java.util.Map<java.lang.String,java.lang.Object>compileOptions(Options opt)private java.util.Map<java.lang.String,java.lang.Object>defaultPrntOptions(boolean skipDefault)private intdigits(int number)private booleandoRowHighlight(int row, Printer.TableRows tableRows)private booleanhasMatch(java.util.List<java.lang.String> regexes, java.lang.String value)private AttributedStringhighlight(java.lang.Integer width, Nano.SyntaxHighlighter highlighter, java.lang.String object)private AttributedStringhighlight(java.lang.Integer width, Nano.SyntaxHighlighter highlighter, java.lang.String object, boolean doValueHighlight)private AttributedStringhighlight(CmdDesc cmdDesc)private voidhighlightAndPrint(int width, java.lang.String style, java.lang.String object)private voidhighlightAndPrint(java.util.Map<java.lang.String,java.lang.Object> options, java.lang.Object obj)private voidhighlightList(java.util.Map<java.lang.String,java.lang.Object> options, java.util.List<java.lang.Object> collection, int width)private voidhighlightList(java.util.Map<java.lang.String,java.lang.Object> options, java.util.List<java.lang.Object> collection, int width, int depth)private voidhighlightMap(java.util.Map<java.lang.String,java.lang.Object> options, java.util.Map<java.lang.String,java.lang.Object> map, int width)private voidhighlightMap(java.util.Map<java.lang.String,java.lang.Object> options, java.util.Map<java.lang.String,java.lang.Object> map, int width, int depth)private AttributedStringhighlightMapValue(java.util.Map<java.lang.String,java.lang.Object> options, java.lang.String key, java.util.Map<java.lang.String,java.lang.Object> map)private AttributedStringhighlightValue(java.util.Map<java.lang.String,java.lang.Object> options, java.lang.String column, java.lang.Object obj)private voidinternalPrintln(java.util.Map<java.lang.String,java.lang.Object> options, java.lang.Object object)private booleanisHighlighted(AttributedString value)private booleanisNumber(java.lang.String str)private booleanisValue(java.lang.String value)private java.util.Map<java.lang.String,java.lang.Object>keysToString(java.util.Map<java.lang.Object,java.lang.Object> map)private voidmanageBooleanOptions(java.util.Map<java.lang.String,java.lang.Object> options)private java.lang.ObjectmapValue(java.util.Map<java.lang.String,java.lang.Object> options, java.lang.String key, java.util.Map<java.lang.String,java.lang.Object> map)private java.util.List<java.lang.Object>objectToList(java.lang.Object obj)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)private java.lang.StringobjectToString(java.util.Map<java.lang.String,java.lang.Object> options, java.lang.Object obj)private java.util.List<java.lang.String>optionList(java.lang.String key, java.util.Map<java.lang.String,java.lang.Object> options)private Printer.TableRowsoptionRowHighlight(java.lang.Object value)voidprintln(java.lang.Object object)voidprintln(java.util.Map<java.lang.String,java.lang.Object> optionsIn, java.lang.Object object)private voidprintln(AttributedString line, int maxrows)java.lang.ExceptionprntCommand(CommandInput input)voidsetHighlightValue(java.util.Map<java.lang.String,java.util.function.Function<java.lang.Object,AttributedString>> highlightValue)Highlight column valuevoidsetObjectToMap(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() methodvoidsetObjectToString(java.util.Map<java.lang.Class<?>,java.util.function.Function<java.lang.Object,java.lang.String>> objectToString)Override ScriptEngine toString() methodprivate booleansimilarSets(java.util.Set<java.lang.String> ref, java.util.Set<java.lang.String> c2, double threshold)private booleansimpleObject(java.lang.Object obj)private Terminalterminal()private voidtoTabStops(java.util.List<java.lang.Integer> columns, int rows, boolean rownum, java.lang.String columnSep)private java.lang.Stringtruncate4nanorc(java.lang.String obj)private java.lang.StringtruncateValue(int maxWidth, java.lang.String value)private AttributedStringtruncateValue(java.util.Map<java.lang.String,java.lang.Object> options, AttributedString value)private Nano.SyntaxHighlightervalueHighlighter(java.lang.String style)-
Methods inherited from class org.jline.console.impl.JlineCommandRegistry
commandDescription, commandInfo, commandOptions, compileCommandDescription, compileCommandInfo, compileCommandOptions, defaultCompleter, parseOptions
-
Methods inherited from class org.jline.console.impl.AbstractCommandRegistry
alias, commandAliases, commandNames, compileCompleters, doHelpDesc, getCommandMethods, hasCommand, invoke, registerCommands, registerCommands, registeredCommand, rename, saveException
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jline.console.CommandRegistry
name
-
-
-
-
Field Detail
-
VAR_PRNT_OPTIONS
private static final java.lang.String VAR_PRNT_OPTIONS
- See Also:
- Constant Field Values
-
VAR_NANORC
private static final java.lang.String VAR_NANORC
- See Also:
- Constant Field Values
-
PRNT_MAX_ROWS
private static final int PRNT_MAX_ROWS
- See Also:
- Constant Field Values
-
PRNT_MAX_DEPTH
private static final int PRNT_MAX_DEPTH
- See Also:
- Constant Field Values
-
PRNT_INDENTION
private static final int PRNT_INDENTION
- 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
-
engine
private final ScriptEngine engine
-
configPath
private final ConfigurationPath configPath
-
prntStyle
private StyleResolver prntStyle
-
-
Constructor Detail
-
DefaultPrinter
public DefaultPrinter(ConfigurationPath configPath)
-
DefaultPrinter
public DefaultPrinter(ScriptEngine engine, ConfigurationPath configPath)
-
-
Method Detail
-
println
public void println(java.util.Map<java.lang.String,java.lang.Object> optionsIn, java.lang.Object object)
-
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)
-
prntCommand
public java.lang.Exception prntCommand(CommandInput input)
- Specified by:
prntCommandin interfacePrinter
-
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
private Terminal terminal()
-
manageBooleanOptions
private void manageBooleanOptions(java.util.Map<java.lang.String,java.lang.Object> options)
-
defaultPrntOptions
private java.util.Map<java.lang.String,java.lang.Object> defaultPrntOptions(boolean skipDefault)
-
internalPrintln
private void internalPrintln(java.util.Map<java.lang.String,java.lang.Object> options, java.lang.Object object)
-
highlight
private AttributedString highlight(CmdDesc cmdDesc)
-
valueHighlighter
private Nano.SyntaxHighlighter valueHighlighter(java.lang.String style)
-
truncate4nanorc
private java.lang.String truncate4nanorc(java.lang.String obj)
-
highlight
private AttributedString highlight(java.lang.Integer width, Nano.SyntaxHighlighter highlighter, java.lang.String object)
-
highlight
private AttributedString highlight(java.lang.Integer width, Nano.SyntaxHighlighter highlighter, java.lang.String object, boolean doValueHighlight)
-
isValue
private boolean isValue(java.lang.String value)
-
highlightAndPrint
private void highlightAndPrint(int width, java.lang.String style, java.lang.String object)
-
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 AttributedString addPadding(AttributedString str, int width)
-
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)
-
isHighlighted
private boolean isHighlighted(AttributedString value)
-
highlightValue
private AttributedString highlightValue(java.util.Map<java.lang.String,java.lang.Object> options, java.lang.String column, java.lang.Object obj)
-
truncateValue
private AttributedString truncateValue(java.util.Map<java.lang.String,java.lang.Object> options, AttributedString value)
-
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.Set<java.lang.String> ref, java.util.Set<java.lang.String> c2, double threshold)
-
println
private void println(AttributedString line, int maxrows)
-
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)
-
-