-
- All Known Implementing Classes:
TableBuilder
public interface TablePrinterIn comparison to theTableBuilder, theTablePrinterjust provides the methods required to print a table. This is most useful when you want to create aTablePrintercomposite (which encapsulates manyTablePrinterinstances) which only requires the printing methods as the builder methods would make no sense: Think of aTablePrinterwhich is used for logging text with a log priority. For each log priority there is a dedicatedTablePrinterinstance configured slightly different, e.g using different text colors for the printed row depending on the log priority. Those "internal"TablePrinterinstances would be pre-configured so that aTableBuildercomposite would actually overload the composite with Builder-Pattern functionality which must not be applied to the internalTablePrinterinstances. Actually the internalTablePrinterinstances would be part (implementation secret) of aTableBuilderinstance as them are configured each individually using the Builder-Pattern.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description TableStatusgetTableStatus()Retrieves theTablePrinter(TableBuilder) status.voidprintHeader(String... aColumns)Prints the table's header to thePrintStreamconfigured for thisPrintWriterwith the content of the provided columns.default voidprintHeader(List<String> aColumns)Prints the table's header to thePrintStreamconfigured for thisPrintWriterwith the content of the provided columns.voidprintHeaderBegin()Prints out a header begin to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintHeader(String...)method.default voidprintHeaderComplete()For more semantic clearness this method prints an end-of-header / begin-of-row line, though is equivalent to the methodprintHeaderBegin().voidprintHeaderContinue(String... aColumns)Continues to print out a begun header to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintHeader(String...)method.default voidprintHeaderContinue(List<String> aColumns)Continues to print out a begun header to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintHeader(String...)method.voidprintHeaderEnd()Prints out a header end to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintHeader(String...)method.voidprintHeaderEnd(TableBuilder aTablePrinter)Ends the headers of the providedTableBuilderfor this table printer to continue to thePrintStreamconfigured for thisPrintWriter; different header widths and column widths are taken care of, so it is a pleasure to mix differentTableBuilders, especially when empty columns may result in better using another column layout making better use of the available width.voidprintRow(String... aColumns)Prints the table's (next) row to thePrintStreamconfigured for thisPrintWriterwith the content of the provided columns.default voidprintRow(List<String> aColumns)Prints the table's (next) row to thePrintStreamconfigured for thisPrintWriterwith the content of the provided columns.voidprintRowBegin()Prints out a row begin to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintRow(String...)method.voidprintRowContinue(String... aColumns)Continues a print out begun row to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintRow(String...)method.default voidprintRowContinue(List<String> aColumns)Continues a print out begun row to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintRow(String...)method.voidprintRowEnd(TableBuilder aTablePrinter)Ends the rows of the providedTableBuilderfor this table printer to continue to thePrintStreamconfigured for thisPrintWriter; different row widths and column widths are taken care of, so it is a pleasure to mix differentTableBuilders, especially when empty columns may result in better using another column layout making better use of the available width.voidprintTail()Finishes off the table by printing its closing to thePrintStreamconfigured for thisPrintWriter.TablePrintersetTableStatus(TableStatus aTableStatus)Set theTablePrinter(TableBuilder) status.StringtoHeader(String... aColumns)Prints the table's header with the content of the provided columns.default StringtoHeader(List<String> aColumns)Prints the table's header with the content of the provided columns.StringtoHeaderBegin()Begins a header, for convenience reasons, this is being encapsulated by thetoHeader(String...)method.default StringtoHeaderComplete()For more semantic clearness this method returns an end-of-header / begin-of-row line, though is equivalent to the methodtoHeaderBegin().StringtoHeaderContinue(String... aColumns)Continues a begun header, for convenience reasons, this is being encapsulated by thetoHeader(String...)method.default StringtoHeaderContinue(List<String> aColumns)Continues a begun header, for convenience reasons, this is being encapsulated by thetoHeader(String...)method.StringtoHeaderEnd()Ends a header, for convenience reasons, this is being encapsulated by thetoHeader(String...)method.StringtoHeaderEnd(TableBuilder aTablePrinter)Ends the headers of the providedTableBuilderfor this table printer to continue; different header widths and column widths are taken care of, so it is a pleasure to mix differentTableBuilders, especially when empty columns may result in better using another column layout making better use of the available width.StringtoRow(String... aColumns)Prints the table's (next) row with the content of the provided columns.default StringtoRow(List<String> aColumns)Prints the table's (next) row with the content of the provided columns.StringtoRowBegin()Begins a row, for convenience reasons, this is being encapsulated by thetoRow(String...)method.StringtoRowContinue(String... aColumns)Continues a begun row, for convenience reasons, this is being encapsulated by thetoRow(String...)method.default StringtoRowContinue(List<String> aColumns)Continues a begun row, for convenience reasons, this is being encapsulated by thetoRow(String...)method.StringtoRowEnd(TableBuilder aTablePrinter)Ends the rows of the providedTableBuilderfor this table printer to continue; different row widths and column widths are taken care of, so it is a pleasure to mix differentTableBuilders, especially when empty columns may result in better using another column layout making better use of the available width.StringtoTail()Finishes off the table by closing it.
-
-
-
Method Detail
-
toHeaderBegin
String toHeaderBegin()
Begins a header, for convenience reasons, this is being encapsulated by thetoHeader(String...)method. Use this method in case you need more control on the header construction thantoHeader(String...)can provide you.- Returns:
- The header's begin
Stringincluding the line breaks.
-
toHeaderComplete
default String toHeaderComplete()
For more semantic clearness this method returns an end-of-header / begin-of-row line, though is equivalent to the methodtoHeaderBegin().- Returns:
- The header's end / row's begin
Stringincluding the line breaks.
-
toHeaderContinue
String toHeaderContinue(String... aColumns)
Continues a begun header, for convenience reasons, this is being encapsulated by thetoHeader(String...)method. Use this method in case you need more control on the header construction thantoHeader(String...)can provide you.- Parameters:
aColumns- the columns- Returns:
- The begun header continued
Stringincluding the line breaks.
-
toHeaderContinue
default String toHeaderContinue(List<String> aColumns)
Continues a begun header, for convenience reasons, this is being encapsulated by thetoHeader(String...)method. Use this method in case you need more control on the header construction thantoHeader(String...)can provide you.- Parameters:
aColumns- the columns- Returns:
- The begun header continued
Stringincluding the line breaks.
-
toHeaderEnd
String toHeaderEnd(TableBuilder aTablePrinter)
Ends the headers of the providedTableBuilderfor this table printer to continue; different header widths and column widths are taken care of, so it is a pleasure to mix differentTableBuilders, especially when empty columns may result in better using another column layout making better use of the available width.- Parameters:
aTablePrinter- TheTableBuilderto which to append thisTableBuilder's headers.- Returns:
- The divider header joining the provided (top)
TableBuilder's layout with this (bottom)TableBuilder's layout.
-
toHeaderEnd
String toHeaderEnd()
Ends a header, for convenience reasons, this is being encapsulated by thetoHeader(String...)method. Use this method in case you need more control on the header construction thantoHeader(String...)can provide you.- Returns:
- The header's end
Stringincluding the line breaks.
-
toRowBegin
String toRowBegin()
Begins a row, for convenience reasons, this is being encapsulated by thetoRow(String...)method. Use this method in case you need more control on the row construction thantoRow(String...)can provide you.- Returns:
- The row's begin
Stringincluding the line breaks.
-
toRowContinue
String toRowContinue(String... aColumns)
Continues a begun row, for convenience reasons, this is being encapsulated by thetoRow(String...)method. Use this method in case you need more control on the header construction thantoRow(String...)can provide you.- Parameters:
aColumns- the columns- Returns:
- The begun row continued
Stringincluding the line breaks.
-
toRowContinue
default String toRowContinue(List<String> aColumns)
Continues a begun row, for convenience reasons, this is being encapsulated by thetoRow(String...)method. Use this method in case you need more control on the header construction thantoRow(String...)can provide you.- Parameters:
aColumns- the columns- Returns:
- The begun row continued
Stringincluding the line breaks.
-
toRowEnd
String toRowEnd(TableBuilder aTablePrinter)
Ends the rows of the providedTableBuilderfor this table printer to continue; different row widths and column widths are taken care of, so it is a pleasure to mix differentTableBuilders, especially when empty columns may result in better using another column layout making better use of the available width.- Parameters:
aTablePrinter- TheTableBuilderto which to append thisTableBuilder's rows.- Returns:
- The divider row joining the provided (top)
TableBuilder's layout with this (bottom)TableBuilder's layout.
-
toHeader
String toHeader(String... aColumns)
Prints the table's header with the content of the provided columns.- Parameters:
aColumns- The columns to be used in the table's header.- Returns:
- The header
Stringincluding line breaks as it most probably will consist of more than one line.
-
toHeader
default String toHeader(List<String> aColumns)
Prints the table's header with the content of the provided columns.- Parameters:
aColumns- The columns to be used in the table's header.- Returns:
- The header
Stringincluding line breaks as it most probably will consist of more than one line.
-
toRow
String toRow(String... aColumns)
Prints the table's (next) row with the content of the provided columns. Call this method for each row to print out.- Parameters:
aColumns- The columns to be used in the (next) table's row.- Returns:
- The row
Stringincluding line breaks as it most probably will consist of more than one line.
-
toRow
default String toRow(List<String> aColumns)
Prints the table's (next) row with the content of the provided columns. Call this method for each row to print out.- Parameters:
aColumns- The columns to be used in the (next) table's row.- Returns:
- The row
Stringincluding line breaks as it most probably will consist of more than one line.
-
toTail
String toTail()
Finishes off the table by closing it.- Returns:
- The tail of the table for finishing the table off.
-
printHeaderBegin
void printHeaderBegin()
Prints out a header begin to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintHeader(String...)method. Use this method in case you need more control on the header construction thanprintHeader(String...)can provide you.
-
printHeaderComplete
default void printHeaderComplete()
For more semantic clearness this method prints an end-of-header / begin-of-row line, though is equivalent to the methodprintHeaderBegin().
-
printHeaderContinue
void printHeaderContinue(String... aColumns)
Continues to print out a begun header to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintHeader(String...)method. Use this method in case you need more control on the header construction thanprintHeader(String...)can provide you.- Parameters:
aColumns- the columns
-
printHeaderContinue
default void printHeaderContinue(List<String> aColumns)
Continues to print out a begun header to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintHeader(String...)method. Use this method in case you need more control on the header construction thanprintHeader(String...)can provide you.- Parameters:
aColumns- the columns
-
printHeaderEnd
void printHeaderEnd(TableBuilder aTablePrinter)
Ends the headers of the providedTableBuilderfor this table printer to continue to thePrintStreamconfigured for thisPrintWriter; different header widths and column widths are taken care of, so it is a pleasure to mix differentTableBuilders, especially when empty columns may result in better using another column layout making better use of the available width.- Parameters:
aTablePrinter- TheTableBuilderto which to append thisTableBuilder's headers.
-
printHeaderEnd
void printHeaderEnd()
Prints out a header end to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintHeader(String...)method. Use this method in case you need more control on the header construction thanprintHeader(String...)can provide you.
-
printRowBegin
void printRowBegin()
Prints out a row begin to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintRow(String...)method. Use this method in case you need more control on the row construction thanprintRow(String...)can provide you.
-
printRowContinue
void printRowContinue(String... aColumns)
Continues a print out begun row to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintRow(String...)method. Use this method in case you need more control on the header construction thanprintRow(String...)can provide you.- Parameters:
aColumns- the columns
-
printRowContinue
default void printRowContinue(List<String> aColumns)
Continues a print out begun row to thePrintStreamconfigured for thisPrintWriter, for convenience reasons, this is being encapsulated by theprintRow(String...)method. Use this method in case you need more control on the header construction thanprintRow(String...)can provide you.- Parameters:
aColumns- the columns
-
printRowEnd
void printRowEnd(TableBuilder aTablePrinter)
Ends the rows of the providedTableBuilderfor this table printer to continue to thePrintStreamconfigured for thisPrintWriter; different row widths and column widths are taken care of, so it is a pleasure to mix differentTableBuilders, especially when empty columns may result in better using another column layout making better use of the available width.- Parameters:
aTablePrinter- TheTableBuilderto which to append thisTableBuilder's rows.
-
printHeader
void printHeader(String... aColumns)
Prints the table's header to thePrintStreamconfigured for thisPrintWriterwith the content of the provided columns.- Parameters:
aColumns- The columns to be used in the table's header.
-
printHeader
default void printHeader(List<String> aColumns)
Prints the table's header to thePrintStreamconfigured for thisPrintWriterwith the content of the provided columns.- Parameters:
aColumns- The columns to be used in the table's header.
-
printRow
void printRow(String... aColumns)
Prints the table's (next) row to thePrintStreamconfigured for thisPrintWriterwith the content of the provided columns. Call this method for each row to print out.- Parameters:
aColumns- The columns to be used in the (next) table's row.
-
printRow
default void printRow(List<String> aColumns)
Prints the table's (next) row to thePrintStreamconfigured for thisPrintWriterwith the content of the provided columns. Call this method for each row to print out.- Parameters:
aColumns- The columns to be used in the (next) table's row.
-
printTail
void printTail()
Finishes off the table by printing its closing to thePrintStreamconfigured for thisPrintWriter.
-
getTableStatus
TableStatus getTableStatus()
Retrieves theTablePrinter(TableBuilder) status. TheTableStatusis required by aTablePrinter(TableBuilder) to determine whether to do additional table decoration for a print operation or to fail that operation as of an illegal state exception. As far as possible an illegal state exception is to be tried to be prevented by decorating the table automatically by an operation as of the currentTableStatus.- Returns:
- The table's current
TableStatus.
-
setTableStatus
TablePrinter setTableStatus(TableStatus aTableStatus)
Set theTablePrinter(TableBuilder) status. TheTableStatusis required by aTablePrinter(TableBuilder) to determine whether to do additional table decoration for a print operation or to fail that operation as of an illegal state exception. As far as possible an illegal state exception is to be tried to be prevented by decorating the table automatically by an operation as of the currentTableStatus. Setting the status manually, you can use differently configuredTablePrinterinterfaces to print their lines according to the status of a previousTablePrinter.- Parameters:
aTableStatus- The table's currentTableStatusto be set.- Returns:
- the table printer
-
-