Package com.illumon.iris.db.v2
Class ColumnRenderersBuilder
java.lang.Object
com.illumon.iris.db.v2.ColumnRenderersBuilder
@ScriptApi public class ColumnRenderersBuilder extends Object
Builds and parses the directive for Table.COLUMN_RENDERERS_ATTRIBUTE.
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ColumnRenderersBuilder.ColumnRendererType
-
Constructor Summary
Constructors Constructor Description ColumnRenderersBuilder()
-
Method Summary
Modifier and Type Method Description String
buildDirective()
Builds the COLUMN_RENDERERS_ATTRIBUTE directive from the data in this ColumnRenderersBuilder.ColumnRenderersBuilder
clear()
Clears all column renderers.static ColumnRenderersBuilder
empty()
static ColumnRenderersBuilder
fromDirective(String directive)
Creates a new ColumnRenderersBuilder from an existing COLUMN_RENDERERS_ATTRIBUTE directive.static ColumnRenderersBuilder
get(Table source)
Gets a ColumnRenderersBuilder from the COLUMN_RENDERERS_ATTRIBUTE in a source Table.Set<String>
getColumnSet()
Returns a Set of column-names, which may be verified as valid prior to setting our directive as an attribute to the tableString
getRenderClassForType(ColumnRenderersBuilder.ColumnRendererType type)
String
getRenderClassName(String columnName)
Gets the fully qualified class name for the renderer of a column.ColumnRenderersBuilder.ColumnRendererType
getRendererType(String columnName)
Gets the column renderer type assigned to a given column name.boolean
isColumnRendererSet(String columnName)
Indicates if a specific column has a renderer set in the builder.boolean
isEmpty()
Identifies if this builder-instance contains any renderer-definitions.ColumnRenderersBuilder
removeRenderer(String columnName)
Removes the renderer for a column of a given name.ColumnRenderersBuilder
setDefaultRenderClass(String className)
Sets the default class name to use for the default render type.ColumnRenderersBuilder
setRenderClass(ColumnRenderersBuilder.ColumnRendererType renderType, String className)
Sets the class name associated with a given render type.ColumnRenderersBuilder
setRenderer(String columnName, ColumnRenderersBuilder.ColumnRendererType rendererType)
Sets a column renderer for a column of a given name.ColumnRenderersBuilder
setRenderer(String columnName, Class<? extends TableCellRenderer> rendererClass)
ColumnRenderersBuilder
setRenderer(String columnName, String rendererName)
String
toString()
-
Constructor Details
-
ColumnRenderersBuilder
public ColumnRenderersBuilder()
-
-
Method Details
-
setDefaultRenderClass
Sets the default class name to use for the default render type.- Parameters:
className
- the fully qualified class name of the column renderer
-
setRenderClass
public ColumnRenderersBuilder setRenderClass(ColumnRenderersBuilder.ColumnRendererType renderType, String className)Sets the class name associated with a given render type.- Parameters:
renderType
- the render type to setclassName
- the fully qualified class name of the column renderer
-
setRenderer
-
setRenderer
@ScriptApi public ColumnRenderersBuilder setRenderer(String columnName, ColumnRenderersBuilder.ColumnRendererType rendererType)Sets a column renderer for a column of a given name.- Parameters:
columnName
- the name of the columnrendererType
- the type of renderer
-
setRenderer
@ScriptApi public ColumnRenderersBuilder setRenderer(String columnName, Class<? extends TableCellRenderer> rendererClass) -
removeRenderer
Removes the renderer for a column of a given name.- Parameters:
columnName
- the name of the column
-
clear
Clears all column renderers. -
isColumnRendererSet
Indicates if a specific column has a renderer set in the builder.- Parameters:
columnName
- the name of the column to check- Returns:
- true if it is set, false otherwise
-
getRenderClassName
Gets the fully qualified class name for the renderer of a column.- Parameters:
columnName
- the column name- Returns:
- the fully qualified class name of the renderer
-
getRendererType
Gets the column renderer type assigned to a given column name. Returns null if none is assigned.- Parameters:
columnName
- the name of the column- Returns:
- the renderer type, null if none is assigned
-
getRenderClassForType
-
isEmpty
public boolean isEmpty()Identifies if this builder-instance contains any renderer-definitions. If not, then the calling method should not attempt to add our directive an an attribute to a table- Returns:
- true if there are no renderers defined, else false
-
getColumnSet
Returns a Set of column-names, which may be verified as valid prior to setting our directive as an attribute to the table- Returns:
- An iterable Set of column-names identified by this builder-instance
-
get
Gets a ColumnRenderersBuilder from the COLUMN_RENDERERS_ATTRIBUTE in a source Table.- Parameters:
source
- the Table- Returns:
- the ColumnRenderersBuilder from the Table
-
fromDirective
Creates a new ColumnRenderersBuilder from an existing COLUMN_RENDERERS_ATTRIBUTE directive.- Parameters:
directive
- a valid COLUMN_RENDERERS_ATTRIBUTE directive- Returns:
- a ColumnRenderersBuilder represented by the directive
-
empty
-
buildDirective
Builds the COLUMN_RENDERERS_ATTRIBUTE directive from the data in this ColumnRenderersBuilder.- Returns:
- a String representing the COLUMN_RENDERERS_ATTRIBUTE directive
-
toString
-