| <!DOCTYPE HTML> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc (19) --> |
| <title>TreeTableFormat (Apache SIS 1.3 API)</title> |
| <meta name="viewport" content="width=device-width, initial-scale=1"> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <meta name="description" content="declaration: package: org.apache.sis.util.collection, class: TreeTableFormat"> |
| <meta name="generator" content="javadoc/ClassWriterImpl"> |
| <meta name="keywords" content="org.apache.sis.util.collection.TreeTableFormat class"> |
| <meta name="keywords" content="getValueType()"> |
| <meta name="keywords" content="getColumns()"> |
| <meta name="keywords" content="setColumns()"> |
| <meta name="keywords" content="getIndentation()"> |
| <meta name="keywords" content="setIndentation()"> |
| <meta name="keywords" content="getVerticalLinePosition()"> |
| <meta name="keywords" content="setVerticalLinePosition()"> |
| <meta name="keywords" content="getNodeFilter()"> |
| <meta name="keywords" content="setNodeFilter()"> |
| <meta name="keywords" content="parse()"> |
| <meta name="keywords" content="format()"> |
| <meta name="keywords" content="createFormat()"> |
| <meta name="keywords" content="writeColumnSeparator()"> |
| <meta name="keywords" content="clone()"> |
| <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../../sis.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style"> |
| <script type="text/javascript" src="../../../../../script.js"></script> |
| <script type="text/javascript" src="../../../../../script-dir/jquery-3.6.0.min.js"></script> |
| <script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script> |
| </head> |
| <body class="class-declaration-page"> |
| <script type="text/javascript">var pathtoroot = "../../../../../"; |
| loadScripts(document, 'script');</script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <div class="flex-box"> |
| <header role="banner" class="flex-header"> |
| <nav role="navigation"> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button> |
| <div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> |
| <ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> |
| <li><a href="../../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="nav-bar-cell1-rev">Class</li> |
| <li><a href="class-use/TreeTableFormat.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../../help-doc.html#class">Help</a></li> |
| </ul> |
| <ul class="sub-nav-list-small"> |
| <li> |
| <p>Summary:</p> |
| <ul> |
| <li><a href="#nested-class-summary">Nested</a></li> |
| <li><a href="#field-summary">Field</a></li> |
| <li><a href="#constructor-summary">Constr</a></li> |
| <li><a href="#method-summary">Method</a></li> |
| </ul> |
| </li> |
| <li> |
| <p>Detail:</p> |
| <ul> |
| <li>Field</li> |
| <li><a href="#constructor-detail">Constr</a></li> |
| <li><a href="#method-detail">Method</a></li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| <div class="sub-nav"> |
| <div id="navbar-sub-list"> |
| <ul class="sub-nav-list"> |
| <li>Summary: </li> |
| <li><a href="#nested-class-summary">Nested</a> | </li> |
| <li><a href="#field-summary">Field</a> | </li> |
| <li><a href="#constructor-summary">Constr</a> | </li> |
| <li><a href="#method-summary">Method</a></li> |
| </ul> |
| <ul class="sub-nav-list"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor-detail">Constr</a> | </li> |
| <li><a href="#method-detail">Method</a></li> |
| </ul> |
| </div> |
| <div class="nav-list-search"><a href="../../../../../search.html">SEARCH</a> |
| <input type="text" id="search-input" disabled placeholder="Search"> |
| <input type="reset" id="reset-button" disabled value="reset"> |
| </div> |
| </div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <span class="skip-nav" id="skip-navbar-top"></span></nav> |
| </header> |
| <div class="flex-content"> |
| <main role="main"> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">org.apache.sis.util.collection</a></div> |
| <h1 title="Class TreeTableFormat" class="title">Class TreeTableFormat</h1> |
| </div> |
| <div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a> |
| <div class="inheritance"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/Format.html" title="class or interface in java.text" class="external-link">Format</a> |
| <div class="inheritance"><a href="../../io/CompoundFormat.html" title="class in org.apache.sis.io">CompoundFormat</a><T> |
| <div class="inheritance"><a href="../../io/TabularFormat.html" title="class in org.apache.sis.io">TabularFormat</a><<a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a>> |
| <div class="inheritance">TreeTableFormat</div> |
| </div> |
| </div> |
| </div> |
| </div> |
| <section class="class-description" id="class-description"> |
| <dl class="notes"> |
| <dt>All Implemented Interfaces:</dt> |
| <dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a></code>, <code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Cloneable.html" title="class or interface in java.lang" class="external-link">Cloneable</a></code>, <code><a href="../Localized.html" title="interface in org.apache.sis.util">Localized</a></code></dd> |
| </dl> |
| <hr> |
| <div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">TreeTableFormat</span> |
| <span class="extends-implements">extends <a href="../../io/TabularFormat.html" title="class in org.apache.sis.io">TabularFormat</a><<a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a>></span></div> |
| <div class="block">A parser and formatter for <a href="TreeTable.html" title="interface in org.apache.sis.util.collection"><code>TreeTable</code></a> instances. |
| This formatter is given an arbitrary number of <a href="TableColumn.html" title="class in org.apache.sis.util.collection"><code>TableColumn</code></a>s |
| to use during the formatting. The first column is taken as the node label. |
| If a <code>TreeTable</code> is formatted with only that column, |
| then the <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link"><code>String</code></a> result is like the following example: |
| |
| <blockquote><pre>Node #1 |
| ├─Node #2 |
| │ └─Node #4 |
| └─Node #3</pre></blockquote> |
| |
| If the same <code>TreeTable</code> is formatted with two columns, |
| then the <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link"><code>String</code></a> result is like the following example: |
| |
| <blockquote><pre>Node #1……………………… More #1 |
| ├─Node #2…………… More #2 |
| │ └─Node #4… More #4 |
| └─Node #3…………… More #3</pre></blockquote> |
| |
| This representation can be printed to the <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/Console.html#writer()" title="class or interface in java.io" class="external-link">console output</a> |
| (for example) if the stream uses a monospaced font and supports Unicode characters. |
| |
| <h2>Customization</h2> |
| Some formatting characteristics (indentation width, column where to draw the vertical line |
| below nodes) can be modified by calls to the setter methods defined in this formatter. |
| In particular, the dots joining the node labels to their values can be specified by the |
| <a href="../../io/TabularFormat.html#setColumnSeparatorPattern(java.lang.String)">column separator pattern</a>. |
| The default pattern is <code>"?……[…] "</code>, which means <cite>"If the next value is non-null, |
| then insert the <code>"……"</code> string, repeat the <code>'…'</code> character as many time as needed |
| (may be zero), and finally insert a space"</cite>. |
| |
| <h2>Safety against infinite recursivity</h2> |
| Some <code>TreeTable</code> implementations generate the nodes dynamically as wrappers around Java objects. |
| Such Java objects may contain cyclic associations (<var>A</var> contains <var>B</var> contains <var>C</var> |
| contains <var>A</var>), which result in a tree of infinite depth. Some examples can be found in ISO 19115 |
| metadata. This <code>TreeTableFormat</code> class contains a safety against such cycles. The algorithm is based |
| on the assumption that for each node, the values and children are fully determined by the |
| <a href="TreeTable.Node.html#getUserObject()">user object</a>, if non-null. Consequently, for each node <var>C</var> |
| to be formatted, if the user object of that node is the same instance (in the sense of the <code>==</code> operator) |
| than the user object of a parent node <var>A</var>, then the children of the <var>C</var> node will not be formatted.</div> |
| <dl class="notes"> |
| <dt>Since:</dt> |
| <dd>0.3</dd> |
| <dt>See Also:</dt> |
| <dd> |
| <ul class="see-list"> |
| <li><a href="../../../../../serialized-form.html#org.apache.sis.util.collection.TreeTableFormat">Serialized Form</a></li> |
| </ul> |
| </dd> |
| |
| <p><font size="-1">Defined in the <code>sis-utility</code> module</font></p> |
| </dl> |
| </section> |
| <section class="summary"> |
| <ul class="summary-list"> |
| <!-- ======== NESTED CLASS SUMMARY ======== --> |
| <li> |
| <section class="nested-class-summary" id="nested-class-summary"> |
| <h2>Nested Class Summary</h2> |
| <div class="inherited-list"> |
| <h2 id="nested-classes-inherited-from-class-java.text.Format">Nested classes/interfaces inherited from class <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/Format.html" title="class or interface in java.text" class="external-link">Format</a></h2> |
| <code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/Format.Field.html" title="class or interface in java.text" class="external-link">Format.Field</a></code></div> |
| </section> |
| </li> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <li> |
| <section class="field-summary" id="field-summary"> |
| <h2>Field Summary</h2> |
| <div class="inherited-list"> |
| <h3 id="fields-inherited-from-class-TabularFormat">Fields inherited from class <a href="../../io/TabularFormat.html" title="class in org.apache.sis.io">TabularFormat</a></h3> |
| <code><a href="../../io/TabularFormat.html#beforeFill">beforeFill</a>, <a href="../../io/TabularFormat.html#columnSeparator">columnSeparator</a>, <a href="../../io/TabularFormat.html#fillCharacter">fillCharacter</a>, <a href="../../io/TabularFormat.html#lineSeparator">lineSeparator</a>, <a href="../../io/TabularFormat.html#omitTrailingNulls">omitTrailingNulls</a></code></div> |
| </section> |
| </li> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <li> |
| <section class="constructor-summary" id="constructor-summary"> |
| <h2>Constructor Summary</h2> |
| <div class="caption"><span>Constructors</span></div> |
| <div class="summary-table two-column-summary"> |
| <div class="table-header col-first">Constructor</div> |
| <div class="table-header col-last">Description</div> |
| <div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(java.util.Locale,java.util.TimeZone)" class="member-name-link">TreeTableFormat</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Locale.html" title="class or interface in java.util" class="external-link">Locale</a> locale, |
| <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/TimeZone.html" title="class or interface in java.util" class="external-link">TimeZone</a> timezone)</code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">Creates a new tree table format.</div> |
| </div> |
| </div> |
| </section> |
| </li> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <li> |
| <section class="method-summary" id="method-summary"> |
| <h2>Method Summary</h2> |
| <div id="method-summary-table"> |
| <div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div> |
| <div id="method-summary-table.tabpanel" role="tabpanel"> |
| <div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> |
| <div class="table-header col-first">Modifier and Type</div> |
| <div class="table-header col-second">Method</div> |
| <div class="table-header col-last">Description</div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="TreeTableFormat.html" title="class in org.apache.sis.util.collection">TreeTableFormat</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#clone()" class="member-name-link">clone</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns a clone of this format.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/Format.html" title="class or interface in java.text" class="external-link">Format</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createFormat(java.lang.Class)" class="member-name-link">createFormat</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><?> valueType)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Creates a new format to use for parsing and formatting values of the given type.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#format(org.apache.sis.util.collection.TreeTable,java.lang.Appendable)" class="member-name-link">format</a><wbr>(<a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a> tree, |
| <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Appendable.html" title="class or interface in java.lang" class="external-link">Appendable</a> toAppendTo)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Writes a graphical representation of the specified tree table in the given stream or buffer.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="TableColumn.html" title="class in org.apache.sis.util.collection">TableColumn</a><?>[]</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getColumns()" class="member-name-link">getColumns</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the table columns to parse and format, or <code>null</code> for the default list of columns.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getIndentation()" class="member-name-link">getIndentation</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the number of spaces to add on the left margin for each indentation level.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/function/Predicate.html" title="class or interface in java.util.function" class="external-link">Predicate</a><<a href="TreeTable.Node.html" title="interface in org.apache.sis.util.collection">TreeTable.Node</a>></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getNodeFilter()" class="member-name-link">getNodeFilter</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the filter that specify whether a node should be formatted or ignored.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><<a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a>></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getValueType()" class="member-name-link">getValueType</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the type of objects formatted by this class.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getVerticalLinePosition()" class="member-name-link">getVerticalLinePosition</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the position of the vertical line, relative to the position of the root label.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#parse(java.lang.CharSequence,java.text.ParsePosition)" class="member-name-link">parse</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">CharSequence</a> text, |
| <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/ParsePosition.html" title="class or interface in java.text" class="external-link">ParsePosition</a> pos)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Creates a tree from the given character sequence, |
| or returns <code>null</code> if the given text does not look like a tree for this method.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setColumns(org.apache.sis.util.collection.TableColumn...)" class="member-name-link">setColumns</a><wbr>(<a href="TableColumn.html" title="class in org.apache.sis.util.collection">TableColumn</a><?>... columns)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Sets the table columns to parse and format.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setIndentation(int)" class="member-name-link">setIndentation</a><wbr>(int indentation)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Sets the number of spaces to add on the left margin for each indentation level.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setNodeFilter(java.util.function.Predicate)" class="member-name-link">setNodeFilter</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/function/Predicate.html" title="class or interface in java.util.function" class="external-link">Predicate</a><<a href="TreeTable.Node.html" title="interface in org.apache.sis.util.collection">TreeTable.Node</a>> filter)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Sets a filter specifying whether a node should be formatted or ignored.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setVerticalLinePosition(int)" class="member-name-link">setVerticalLinePosition</a><wbr>(int verticalLinePosition)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Sets the position of the vertical line, relative to the position of the root label.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#writeColumnSeparator(int,org.apache.sis.io.TableAppender)" class="member-name-link">writeColumnSeparator</a><wbr>(int nextColumn, |
| <a href="../../io/TableAppender.html" title="class in org.apache.sis.io">TableAppender</a> out)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Writes characters between columns.</div> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-TabularFormat">Methods inherited from class <a href="../../io/TabularFormat.html" title="class in org.apache.sis.io">TabularFormat</a></h3> |
| <code><a href="../../io/TabularFormat.html#getColumnSeparatorMatcher(java.lang.CharSequence)">getColumnSeparatorMatcher</a>, <a href="../../io/TabularFormat.html#getColumnSeparatorPattern()">getColumnSeparatorPattern</a>, <a href="../../io/TabularFormat.html#getLineSeparator()">getLineSeparator</a>, <a href="../../io/TabularFormat.html#setColumnSeparatorPattern(java.lang.String)">setColumnSeparatorPattern</a>, <a href="../../io/TabularFormat.html#setLineSeparator(java.lang.String)">setLineSeparator</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-CompoundFormat">Methods inherited from class <a href="../../io/CompoundFormat.html" title="class in org.apache.sis.io">CompoundFormat</a></h3> |
| <code><a href="../../io/CompoundFormat.html#format(java.lang.Object,java.lang.StringBuffer,java.text.FieldPosition)">format</a>, <a href="../../io/CompoundFormat.html#getFormat(java.lang.Class)">getFormat</a>, <a href="../../io/CompoundFormat.html#getLocale()">getLocale</a>, <a href="../../io/CompoundFormat.html#getLocale(java.util.Locale.Category)">getLocale</a>, <a href="../../io/CompoundFormat.html#getTimeZone()">getTimeZone</a>, <a href="../../io/CompoundFormat.html#parseObject(java.lang.String)">parseObject</a>, <a href="../../io/CompoundFormat.html#parseObject(java.lang.String,java.text.ParsePosition)">parseObject</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-Format">Methods inherited from class <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/Format.html" title="class or interface in java.text" class="external-link">Format</a></h3> |
| <code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/Format.html#format(java.lang.Object)" title="class or interface in java.text" class="external-link">format</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/Format.html#formatToCharacterIterator(java.lang.Object)" title="class or interface in java.text" class="external-link">formatToCharacterIterator</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-Object">Methods inherited from class <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> |
| <code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> |
| </section> |
| </li> |
| </ul> |
| </section> |
| <section class="details"> |
| <ul class="details-list"> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <li> |
| <section class="constructor-details" id="constructor-detail"> |
| <h2>Constructor Details</h2> |
| <ul class="member-list"> |
| <li> |
| <section class="detail" id="<init>(java.util.Locale,java.util.TimeZone)"> |
| <h3>TreeTableFormat</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="element-name">TreeTableFormat</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Locale.html" title="class or interface in java.util" class="external-link">Locale</a> locale, |
| <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/TimeZone.html" title="class or interface in java.util" class="external-link">TimeZone</a> timezone)</span></div> |
| <div class="block">Creates a new tree table format.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>locale</code> - the locale to use for numbers, dates and angles formatting, |
| or <code>null</code> for the <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Locale.html#ROOT" title="class or interface in java.util" class="external-link">root locale</a>.</dd> |
| <dd><code>timezone</code> - the timezone, or <code>null</code> for UTC.</dd> |
| </dl> |
| </section> |
| </li> |
| </ul> |
| </section> |
| </li> |
| <!-- ============ METHOD DETAIL ========== --> |
| <li> |
| <section class="method-details" id="method-detail"> |
| <h2>Method Details</h2> |
| <ul class="member-list"> |
| <li> |
| <section class="detail" id="getValueType()"> |
| <h3>getValueType</h3> |
| <div class="member-signature"><span class="modifiers">public final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><<a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a>></span> <span class="element-name">getValueType</span>()</div> |
| <div class="block">Returns the type of objects formatted by this class.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="../../io/CompoundFormat.html#getValueType()">getValueType</a></code> in class <code><a href="../../io/CompoundFormat.html" title="class in org.apache.sis.io">CompoundFormat</a><<a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a>></code></dd> |
| <dt>Returns:</dt> |
| <dd><code>TreeTable.class</code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getColumns()"> |
| <h3>getColumns</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="TableColumn.html" title="class in org.apache.sis.util.collection">TableColumn</a><?>[]</span> <span class="element-name">getColumns</span>()</div> |
| <div class="block">Returns the table columns to parse and format, or <code>null</code> for the default list of columns. |
| The default is: |
| |
| <ul> |
| <li>On parsing, a single column containing the node label as a <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link"><code>String</code></a>.</li> |
| <li>On formatting, <a href="TreeTable.html#getColumns()">all <code>TreeTable</code> columns</a>.</li> |
| </ul></div> |
| <dl class="notes"> |
| <dt>Returns:</dt> |
| <dd>the table columns to parse and format, or <code>null</code> for the default.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="setColumns(org.apache.sis.util.collection.TableColumn...)"> |
| <h3>setColumns</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">setColumns</span><wbr><span class="parameters">(<a href="TableColumn.html" title="class in org.apache.sis.util.collection">TableColumn</a><?>... columns)</span> |
| throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> |
| <div class="block">Sets the table columns to parse and format. A <code>null</code> value means to use the default |
| list of columns, as defined in the <a href="#getColumns()"><code>getColumns()</code></a> method.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>columns</code> - the table columns to parse and format, or <code>null</code> for the default.</dd> |
| <dt>Throws:</dt> |
| <dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - if the given array is empty, contains a null element |
| or a duplicated value.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getIndentation()"> |
| <h3>getIndentation</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getIndentation</span>()</div> |
| <div class="block">Returns the number of spaces to add on the left margin for each indentation level. |
| The default value is 4.</div> |
| <dl class="notes"> |
| <dt>Returns:</dt> |
| <dd>the current indentation.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="setIndentation(int)"> |
| <h3>setIndentation</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">setIndentation</span><wbr><span class="parameters">(int indentation)</span> |
| throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> |
| <div class="block">Sets the number of spaces to add on the left margin for each indentation level. |
| If the new indentation is smaller than the <a href="#getVerticalLinePosition()">vertical line position</a>, then the latter is also set to the given indentation value.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>indentation</code> - the new indentation.</dd> |
| <dt>Throws:</dt> |
| <dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - if the given value is negative.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getVerticalLinePosition()"> |
| <h3>getVerticalLinePosition</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getVerticalLinePosition</span>()</div> |
| <div class="block">Returns the position of the vertical line, relative to the position of the root label. |
| The default value is 2, which means that the vertical line is drawn below the third |
| letter of the root label.</div> |
| <dl class="notes"> |
| <dt>Returns:</dt> |
| <dd>the current vertical line position.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="setVerticalLinePosition(int)"> |
| <h3>setVerticalLinePosition</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">setVerticalLinePosition</span><wbr><span class="parameters">(int verticalLinePosition)</span> |
| throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></span></div> |
| <div class="block">Sets the position of the vertical line, relative to the position of the root label. |
| The given value cannot be greater than the <a href="#getIndentation()">indentation</a>.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>verticalLinePosition</code> - the new vertical line position.</dd> |
| <dt>Throws:</dt> |
| <dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - if the given value is negative or greater than the indentation.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getNodeFilter()"> |
| <h3>getNodeFilter</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/function/Predicate.html" title="class or interface in java.util.function" class="external-link">Predicate</a><<a href="TreeTable.Node.html" title="interface in org.apache.sis.util.collection">TreeTable.Node</a>></span> <span class="element-name">getNodeFilter</span>()</div> |
| <div class="block">Returns the filter that specify whether a node should be formatted or ignored. |
| This is the predicate specified in the last call to <a href="#setNodeFilter(java.util.function.Predicate)"><code>setNodeFilter(Predicate)</code></a>. |
| If no filter has been set, then this method returns <code>null</code>.</div> |
| <dl class="notes"> |
| <dt>Returns:</dt> |
| <dd>a filter for specifying whether a node should be formatted, or <code>null</code> if no filtering is applied.</dd> |
| <dt>Since:</dt> |
| <dd>1.0</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="setNodeFilter(java.util.function.Predicate)"> |
| <h3>setNodeFilter</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">setNodeFilter</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/function/Predicate.html" title="class or interface in java.util.function" class="external-link">Predicate</a><<a href="TreeTable.Node.html" title="interface in org.apache.sis.util.collection">TreeTable.Node</a>> filter)</span></div> |
| <div class="block">Sets a filter specifying whether a node should be formatted or ignored. |
| Filters are tested at formatting time for all children of the root node (but not for the root node itself). |
| Filters are ignored at parsing time.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>filter</code> - filter for specifying whether a node should be formatted, or <code>null</code> for no filtering.</dd> |
| <dt>Since:</dt> |
| <dd>1.0</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="parse(java.lang.CharSequence,java.text.ParsePosition)"> |
| <h3>parse</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a></span> <span class="element-name">parse</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/CharSequence.html" title="class or interface in java.lang" class="external-link">CharSequence</a> text, |
| <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/ParsePosition.html" title="class or interface in java.text" class="external-link">ParsePosition</a> pos)</span> |
| throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/ParseException.html" title="class or interface in java.text" class="external-link">ParseException</a></span></div> |
| <div class="block">Creates a tree from the given character sequence, |
| or returns <code>null</code> if the given text does not look like a tree for this method. |
| This method can parse the trees created by the <code>format(…)</code> methods |
| defined in this class. |
| |
| <h4>Parsing rules</h4> |
| <ul> |
| <li>Each node shall be represented by a single line made of two parts, in that order: |
| <ol> |
| <li>white spaces and tree drawing characters (<code>'│'</code>, <code>'├'</code>, <code>'└'</code> or <code>'─'</code>);</li> |
| <li>string representations of node values, separated by the |
| <a href="../../io/TabularFormat.html#getColumnSeparatorPattern()">colunm separator</a>.</li> |
| </ol> |
| </li> |
| <li>The number of spaces and drawing characters before the node values determines the node |
| indentation. This indentation does not need to be a factor of the <a href="#getIndentation()"><code>getIndentation()</code></a> |
| value, but must be consistent across all the parsed tree.</li> |
| <li>The indentation determines the parent of each node.</li> |
| <li>Parsing stops at first empty line (ignoring whitespaces), or at the end of the given text.</li> |
| </ul> |
| |
| <h4>Error index</h4> |
| If the given text does not seem to be a tree table, then this method returns <code>null</code>. |
| Otherwise if parsing started but failed, then: |
| |
| <ul> |
| <li><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/ParsePosition.html#getErrorIndex()" title="class or interface in java.text" class="external-link"><code>ParsePosition.getErrorIndex()</code></a> will give the index at the beginning |
| of line or beginning of cell where the error occurred, and</li> |
| <li><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/ParseException.html#getErrorOffset()" title="class or interface in java.text" class="external-link"><code>ParseException.getErrorOffset()</code></a> will give either the same value, |
| or a slightly more accurate value inside the cell.</li> |
| </ul></div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="../../io/CompoundFormat.html#parse(java.lang.CharSequence,java.text.ParsePosition)">parse</a></code> in class <code><a href="../../io/CompoundFormat.html" title="class in org.apache.sis.io">CompoundFormat</a><<a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a>></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>text</code> - the character sequence for the tree to parse.</dd> |
| <dd><code>pos</code> - the position where to start the parsing.</dd> |
| <dt>Returns:</dt> |
| <dd>the parsed tree, or <code>null</code> if the given character sequence cannot be parsed.</dd> |
| <dt>Throws:</dt> |
| <dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/ParseException.html" title="class or interface in java.text" class="external-link">ParseException</a></code> - if an error occurred while parsing a node value.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="format(org.apache.sis.util.collection.TreeTable,java.lang.Appendable)"> |
| <h3>format</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">format</span><wbr><span class="parameters">(<a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a> tree, |
| <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Appendable.html" title="class or interface in java.lang" class="external-link">Appendable</a> toAppendTo)</span> |
| throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div> |
| <div class="block">Writes a graphical representation of the specified tree table in the given stream or buffer. |
| This method iterates recursively over all <a href="TreeTable.Node.html#getChildren()">children</a>. |
| For each <a href="#getColumns()">column to format</a> in each node, this method gets a textual |
| representation of the <a href="TreeTable.Node.html#getValue(org.apache.sis.util.collection.TableColumn)">value in that column</a> |
| using the formatter obtained by a call to <a href="../../io/CompoundFormat.html#getFormat(java.lang.Class)"><code>CompoundFormat.getFormat(Class)</code></a>.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="../../io/CompoundFormat.html#format(T,java.lang.Appendable)">format</a></code> in class <code><a href="../../io/CompoundFormat.html" title="class in org.apache.sis.io">CompoundFormat</a><<a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a>></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>tree</code> - the tree to format.</dd> |
| <dd><code>toAppendTo</code> - where to format the tree.</dd> |
| <dt>Throws:</dt> |
| <dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code> - if an error occurred while writing to the given appendable.</dd> |
| <dt>See Also:</dt> |
| <dd> |
| <ul class="see-list"> |
| <li><a href="TreeTables.html#toString(org.apache.sis.util.collection.TreeTable)"><code>TreeTables.toString(TreeTable)</code></a></li> |
| </ul> |
| </dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="createFormat(java.lang.Class)"> |
| <h3>createFormat</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/text/Format.html" title="class or interface in java.text" class="external-link">Format</a></span> <span class="element-name">createFormat</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a><?> valueType)</span></div> |
| <div class="block">Creates a new format to use for parsing and formatting values of the given type. |
| This method is invoked the first time that a format is needed for the given type. |
| Subclasses can override this method if they want to configure the way dates, numbers |
| or other objects are formatted. |
| See <a href="../../io/CompoundFormat.html#createFormat(java.lang.Class)">parent class documentation</a> |
| for more information. |
| |
| <p>The implementation in <code>TreeTableFormat</code> differs from the default implementation |
| in the following aspects:</p> |
| <ul> |
| <li><code>UnitFormat</code> uses <a href="../../measure/UnitFormat.Style.html#NAME"><code>UnitFormat.Style.NAME</code></a>.</li> |
| </ul></div> |
| <dl class="notes"> |
| <dt>Overrides:</dt> |
| <dd><code><a href="../../io/CompoundFormat.html#createFormat(java.lang.Class)">createFormat</a></code> in class <code><a href="../../io/CompoundFormat.html" title="class in org.apache.sis.io">CompoundFormat</a><<a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a>></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>valueType</code> - the base type of values to parse or format.</dd> |
| <dt>Returns:</dt> |
| <dd>the format to use for parsing of formatting values of the given type, or <code>null</code> if none.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="writeColumnSeparator(int,org.apache.sis.io.TableAppender)"> |
| <h3>writeColumnSeparator</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">writeColumnSeparator</span><wbr><span class="parameters">(int nextColumn, |
| <a href="../../io/TableAppender.html" title="class in org.apache.sis.io">TableAppender</a> out)</span></div> |
| <div class="block">Writes characters between columns. The default implementation applies the configuration |
| specified by <a href="../../io/TabularFormat.html#setColumnSeparatorPattern(java.lang.String)"><code>TabularFormat.setColumnSeparatorPattern(String)</code></a> as below: |
| |
| <blockquote><code> |
| out.append(<a href="../../io/TabularFormat.html#beforeFill">beforeFill</a>); |
| out.nextColumn(<a href="../../io/TabularFormat.html#fillCharacter">fillCharacter</a>); |
| out.append(<a href="../../io/TabularFormat.html#columnSeparator">columnSeparator</a>); |
| </code></blockquote> |
| |
| The output with default values is like below: |
| |
| <blockquote><pre>root |
| └─column0…… column1…… column2…… column3</pre></blockquote> |
| |
| Subclasses can override this method if different column separators are desired. |
| Note however that doing so may prevent the <a href="#parse(java.lang.CharSequence,java.text.ParsePosition)"><code>parse(…)</code></a> method to work.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>nextColumn</code> - zero-based index of the column to be written after the separator.</dd> |
| <dd><code>out</code> - where to write the column separator.</dd> |
| <dt>Since:</dt> |
| <dd>1.0</dd> |
| <dt>See Also:</dt> |
| <dd> |
| <ul class="see-list"> |
| <li><a href="../../io/TableAppender.html#nextColumn(char)"><code>TableAppender.nextColumn(char)</code></a></li> |
| </ul> |
| </dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="clone()"> |
| <h3>clone</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="TreeTableFormat.html" title="class in org.apache.sis.util.collection">TreeTableFormat</a></span> <span class="element-name">clone</span>()</div> |
| <div class="block">Returns a clone of this format.</div> |
| <dl class="notes"> |
| <dt>Overrides:</dt> |
| <dd><code><a href="../../io/TabularFormat.html#clone()">clone</a></code> in class <code><a href="../../io/TabularFormat.html" title="class in org.apache.sis.io">TabularFormat</a><<a href="TreeTable.html" title="interface in org.apache.sis.util.collection">TreeTable</a>></code></dd> |
| <dt>Returns:</dt> |
| <dd>a clone of this format.</dd> |
| </dl> |
| </section> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </section> |
| <!-- ========= END OF CLASS DATA ========= --> |
| </main> |
| <footer role="contentinfo"> |
| <hr> |
| <p class="legal-copy"><small>Copyright © 2010–2022 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> |
| </footer> |
| </div> |
| </div> |
| </body> |
| </html> |