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 class
DefaultPrinter.BadOptionValueException
private static class
DefaultPrinter.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 ConfigurationPath
configPath
private ScriptEngine
engine
private java.util.Map<java.lang.String,java.util.function.Function<java.lang.Object,AttributedString>>
highlightValue
private static int
NANORC_MAX_STRING_LENGTH
private java.util.Map<java.lang.Class<?>,java.util.function.Function<java.lang.Object,java.util.Map<java.lang.String,java.lang.Object>>>
objectToMap
private java.util.Map<java.lang.Class<?>,java.util.function.Function<java.lang.Object,java.lang.String>>
objectToString
private static int
PRNT_INDENTION
private static int
PRNT_MAX_DEPTH
private static int
PRNT_MAX_ROWS
private StyleResolver
prntStyle
private int
totLines
private static java.lang.String
VAR_NANORC
private static java.lang.String
VAR_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.String
addPadding(java.lang.String str, int width)
private AttributedString
addPadding(AttributedString str, int width)
java.lang.String[]
appendUsage(java.lang.String[] customUsage)
private boolean
canConvert(java.lang.Object obj)
private int
cellWidth(int pos, java.util.List<java.lang.Integer> columns, boolean rownum, java.lang.String columnSep)
private boolean
collectionObject(java.lang.Object obj)
private java.lang.String
columnName(java.lang.String name, boolean shortName)
private java.lang.String
columnValue(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 int
digits(int number)
private boolean
doRowHighlight(int row, Printer.TableRows tableRows)
private boolean
hasMatch(java.util.List<java.lang.String> regexes, java.lang.String value)
private AttributedString
highlight(java.lang.Integer width, Nano.SyntaxHighlighter highlighter, java.lang.String object)
private AttributedString
highlight(java.lang.Integer width, Nano.SyntaxHighlighter highlighter, java.lang.String object, boolean doValueHighlight)
private AttributedString
highlight(CmdDesc cmdDesc)
private void
highlightAndPrint(int width, java.lang.String style, java.lang.String object)
private void
highlightAndPrint(java.util.Map<java.lang.String,java.lang.Object> options, java.lang.Object obj)
private void
highlightList(java.util.Map<java.lang.String,java.lang.Object> options, java.util.List<java.lang.Object> collection, int width)
private void
highlightList(java.util.Map<java.lang.String,java.lang.Object> options, java.util.List<java.lang.Object> collection, int width, int depth)
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)
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)
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)
private AttributedString
highlightValue(java.util.Map<java.lang.String,java.lang.Object> options, java.lang.String column, java.lang.Object obj)
private void
internalPrintln(java.util.Map<java.lang.String,java.lang.Object> options, java.lang.Object object)
private boolean
isHighlighted(AttributedString value)
private boolean
isNumber(java.lang.String str)
private boolean
isValue(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 void
manageBooleanOptions(java.util.Map<java.lang.String,java.lang.Object> options)
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)
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.String
objectToString(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.TableRows
optionRowHighlight(java.lang.Object value)
void
println(java.lang.Object object)
void
println(java.util.Map<java.lang.String,java.lang.Object> optionsIn, java.lang.Object object)
private void
println(AttributedString line, int maxrows)
java.lang.Exception
prntCommand(CommandInput input)
void
setHighlightValue(java.util.Map<java.lang.String,java.util.function.Function<java.lang.Object,AttributedString>> highlightValue)
Highlight column valuevoid
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() methodvoid
setObjectToString(java.util.Map<java.lang.Class<?>,java.util.function.Function<java.lang.Object,java.lang.String>> objectToString)
Override ScriptEngine toString() methodprivate boolean
similarSets(java.util.Set<java.lang.String> ref, java.util.Set<java.lang.String> c2, double threshold)
private boolean
simpleObject(java.lang.Object obj)
private Terminal
terminal()
private void
toTabStops(java.util.List<java.lang.Integer> columns, int rows, boolean rownum, java.lang.String columnSep)
private java.lang.String
truncate4nanorc(java.lang.String obj)
private java.lang.String
truncateValue(int maxWidth, java.lang.String value)
private AttributedString
truncateValue(java.util.Map<java.lang.String,java.lang.Object> options, AttributedString value)
private Nano.SyntaxHighlighter
valueHighlighter(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:
prntCommand
in 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)
-
-