Class DynamicTableModule
java.lang.Object
io.mindspice.simplypages.core.HtmlTag
io.mindspice.simplypages.core.Module
io.mindspice.simplypages.modules.DynamicTableModule
- All Implemented Interfaces:
Component
Mutable module that renders a string table with explicit headers.
Contract: each row may contain fewer cells than header count; missing cells are rendered as empty strings.
Mutability and thread-safety: mutable and not thread-safe. Header/row collections are mutable configuration state; mutate within a request-scoped flow. For reuse, stop mutating shared instances and render stable structures with per-request context data.
-
Field Summary
Fields inherited from class HtmlTag
attributes, children, id, innerText, innerTextSlot, selfClosing, tagName, trustedHtml -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidComposes module structure.static DynamicTableModulecreate()Creates a new module instance.withModuleId(String moduleId) Sets module id and synchronizes the underlyingidattribute.withTableData(String[] headers, List<String[]> data) Replaces headers and row data for subsequent rendering.Sets optional title consumed byModule.buildContent()implementations.Methods inherited from class Module
build, getModuleId, getTitle, invalidateContent, rebuildContent, render, render, withClass, withMaxWidth, withMinWidth, withWidthMethods inherited from class HtmlTag
addClass, addStyle, addTrustedStyle, getChildrenStream, getId, hxDelete, hxGet, hxInclude, hxPatch, hxPost, hxPushUrl, hxPut, hxScrollTargetTop, hxSwap, hxTarget, hxTrigger, withAttribute, withChild, withId, withInnerText, withInnerText, withUnsafeHtml
-
Constructor Details
-
DynamicTableModule
public DynamicTableModule()Creates a module with default header and sample rows.
-
-
Method Details
-
create
Creates a new module instance. -
withTableData
Replaces headers and row data for subsequent rendering. -
withTitle
Description copied from class:ModuleSets optional title consumed byModule.buildContent()implementations. -
withModuleId
Description copied from class:ModuleSets module id and synchronizes the underlyingidattribute.- Overrides:
withModuleIdin classModule
-
buildContent
protected void buildContent()Description copied from class:ModuleComposes module structure.Called at most once by
Module.build()unlessModule.rebuildContent()is invoked. Do not rely on this method for per-request mutation.- Specified by:
buildContentin classModule
-