org.teamapps.dto.UiTableColumn Maven / Gradle / Ivy
package org.teamapps.dto;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
import java.util.function.Supplier;
import java.util.stream.Collectors;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.annotation.JsonTypeIdResolver;
/**
* THIS IS GENERATED CODE!
* PLEASE DO NOT MODIFY - ALL YOUR WORK WOULD BE LOST!
*/
@JsonTypeInfo(use = JsonTypeInfo.Id.CUSTOM, property = "_type", defaultImpl = UiTableColumn.class)
public class UiTableColumn implements UiObject {
protected String name;
protected String icon;
protected String title;
protected UiClientObjectReference field;
protected UiTemplate displayTemplate;
protected int minWidth;
protected int defaultWidth;
protected int maxWidth;
protected boolean sortable = true;
protected boolean resizeable = true;
protected boolean visible = true;
protected boolean hiddenIfOnlyEmptyCellsVisible = false;
protected List messages;
protected UiTextAlignment headerAlignment;
protected UiClientObjectReference headerRowField;
protected UiClientObjectReference footerRowField;
/**
* @deprecated Only for Jackson deserialization. Use the other constructor instead.
*/
@Deprecated
public UiTableColumn() {
// default constructor for Jackson
}
public UiTableColumn(String name, String icon, String title, UiClientObjectReference field) {
this.name = name;
this.icon = icon;
this.title = title;
this.field = field;
}
@com.fasterxml.jackson.annotation.JsonIgnore
public UiObjectType getUiObjectType() {
return UiObjectType.UI_TABLE_COLUMN;
}
@SuppressWarnings("unchecked")
public String toString() {
return new StringBuilder(getClass().getSimpleName()).append(": ")
.append("name=" + name).append(", ")
.append("icon=" + icon).append(", ")
.append("title=" + title).append(", ")
.append(displayTemplate != null ? "displayTemplate={" + displayTemplate.toString() + "}" : "").append(", ")
.append("minWidth=" + minWidth).append(", ")
.append("defaultWidth=" + defaultWidth).append(", ")
.append("maxWidth=" + maxWidth).append(", ")
.append("sortable=" + sortable).append(", ")
.append("resizeable=" + resizeable).append(", ")
.append("visible=" + visible).append(", ")
.append("hiddenIfOnlyEmptyCellsVisible=" + hiddenIfOnlyEmptyCellsVisible).append(", ")
.append("headerAlignment=" + headerAlignment).append(", ")
.append(field != null ? "field={" + field.toString() + "}" : "").append(", ")
.append(messages != null ? "messages={" + messages.toString() + "}" : "").append(", ")
.append(headerRowField != null ? "headerRowField={" + headerRowField.toString() + "}" : "").append(", ")
.append(footerRowField != null ? "footerRowField={" + footerRowField.toString() + "}" : "")
.toString();
}
@com.fasterxml.jackson.annotation.JsonGetter("name")
public String getName() {
return name;
}
@com.fasterxml.jackson.annotation.JsonGetter("icon")
public String getIcon() {
return icon;
}
@com.fasterxml.jackson.annotation.JsonGetter("title")
public String getTitle() {
return title;
}
@com.fasterxml.jackson.annotation.JsonGetter("field")
public UiClientObjectReference getField() {
return field;
}
@com.fasterxml.jackson.annotation.JsonGetter("displayTemplate")
public UiTemplate getDisplayTemplate() {
return displayTemplate;
}
@com.fasterxml.jackson.annotation.JsonGetter("minWidth")
public int getMinWidth() {
return minWidth;
}
@com.fasterxml.jackson.annotation.JsonGetter("defaultWidth")
public int getDefaultWidth() {
return defaultWidth;
}
@com.fasterxml.jackson.annotation.JsonGetter("maxWidth")
public int getMaxWidth() {
return maxWidth;
}
@com.fasterxml.jackson.annotation.JsonGetter("sortable")
public boolean getSortable() {
return sortable;
}
@com.fasterxml.jackson.annotation.JsonGetter("resizeable")
public boolean getResizeable() {
return resizeable;
}
@com.fasterxml.jackson.annotation.JsonGetter("visible")
public boolean getVisible() {
return visible;
}
@com.fasterxml.jackson.annotation.JsonGetter("hiddenIfOnlyEmptyCellsVisible")
public boolean getHiddenIfOnlyEmptyCellsVisible() {
return hiddenIfOnlyEmptyCellsVisible;
}
@com.fasterxml.jackson.annotation.JsonGetter("messages")
public List getMessages() {
return messages;
}
@com.fasterxml.jackson.annotation.JsonGetter("headerAlignment")
public UiTextAlignment getHeaderAlignment() {
return headerAlignment;
}
@com.fasterxml.jackson.annotation.JsonGetter("headerRowField")
public UiClientObjectReference getHeaderRowField() {
return headerRowField;
}
@com.fasterxml.jackson.annotation.JsonGetter("footerRowField")
public UiClientObjectReference getFooterRowField() {
return footerRowField;
}
@com.fasterxml.jackson.annotation.JsonSetter("displayTemplate")
public UiTableColumn setDisplayTemplate(UiTemplate displayTemplate) {
this.displayTemplate = displayTemplate;
return this;
}
@com.fasterxml.jackson.annotation.JsonSetter("minWidth")
public UiTableColumn setMinWidth(int minWidth) {
this.minWidth = minWidth;
return this;
}
@com.fasterxml.jackson.annotation.JsonSetter("defaultWidth")
public UiTableColumn setDefaultWidth(int defaultWidth) {
this.defaultWidth = defaultWidth;
return this;
}
@com.fasterxml.jackson.annotation.JsonSetter("maxWidth")
public UiTableColumn setMaxWidth(int maxWidth) {
this.maxWidth = maxWidth;
return this;
}
@com.fasterxml.jackson.annotation.JsonSetter("sortable")
public UiTableColumn setSortable(boolean sortable) {
this.sortable = sortable;
return this;
}
@com.fasterxml.jackson.annotation.JsonSetter("resizeable")
public UiTableColumn setResizeable(boolean resizeable) {
this.resizeable = resizeable;
return this;
}
@com.fasterxml.jackson.annotation.JsonSetter("visible")
public UiTableColumn setVisible(boolean visible) {
this.visible = visible;
return this;
}
@com.fasterxml.jackson.annotation.JsonSetter("hiddenIfOnlyEmptyCellsVisible")
public UiTableColumn setHiddenIfOnlyEmptyCellsVisible(boolean hiddenIfOnlyEmptyCellsVisible) {
this.hiddenIfOnlyEmptyCellsVisible = hiddenIfOnlyEmptyCellsVisible;
return this;
}
@com.fasterxml.jackson.annotation.JsonSetter("messages")
public UiTableColumn setMessages(List messages) {
this.messages = messages;
return this;
}
@com.fasterxml.jackson.annotation.JsonSetter("headerAlignment")
public UiTableColumn setHeaderAlignment(UiTextAlignment headerAlignment) {
this.headerAlignment = headerAlignment;
return this;
}
@com.fasterxml.jackson.annotation.JsonSetter("headerRowField")
public UiTableColumn setHeaderRowField(UiClientObjectReference headerRowField) {
this.headerRowField = headerRowField;
return this;
}
@com.fasterxml.jackson.annotation.JsonSetter("footerRowField")
public UiTableColumn setFooterRowField(UiClientObjectReference footerRowField) {
this.footerRowField = footerRowField;
return this;
}
}