package org.zendesk.client.v2.model; import com.fasterxml.jackson.annotation.JsonProperty; import java.io.Serializable; import java.util.Date; import java.util.List; /** * @author stephenc * @since 05/04/2013 12:03 */ public class Field implements Serializable { private static final long serialVersionUID = 1L; private Long id; private String url; private String type; private String title; private String rawTitle; private String description; private String rawDescription; private Integer position; private Boolean active; private Boolean required; private Boolean collapsedForAgents; private String regexpForValidation; private String titleInPortal; private String rawTitleInPortal; private Boolean visibleInPortal; private Boolean editableInPortal; private Boolean requiredInPortal; private String tag; private Date createdAt; private Date updatedAt; private List<Option> systemFieldOptions; private List<Option> customFieldOptions; private Boolean removable; public Boolean getActive() { return active; } public void setActive(Boolean active) { this.active = active; } @JsonProperty("collapsed_for_agents") public Boolean getCollapsedForAgents() { return collapsedForAgents; } public void setCollapsedForAgents(Boolean collapsedForAgents) { this.collapsedForAgents = collapsedForAgents; } @JsonProperty("created_at") public Date getCreatedAt() { return createdAt; } public void setCreatedAt(Date createdAt) { this.createdAt = createdAt; } @JsonProperty("custom_field_options") public List<Option> getCustomFieldOptions() { return customFieldOptions; } public void setCustomFieldOptions(List<Option> customFieldOptions) { this.customFieldOptions = customFieldOptions; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } @JsonProperty("editable_in_portal") public Boolean getEditableInPortal() { return editableInPortal; } public void setEditableInPortal(Boolean editableInPortal) { this.editableInPortal = editableInPortal; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public Integer getPosition() { return position; } public void setPosition(Integer position) { this.position = position; } @JsonProperty("raw_description") public String getRawDescription() { return rawDescription; } public void setRawDescription(String rawDescription) { this.rawDescription = rawDescription; } @JsonProperty("raw_title") public String getRawTitle() { return rawTitle; } public void setRawTitle(String rawTitle) { this.rawTitle = rawTitle; } @JsonProperty("raw_title_in_portal") public String getRawTitleInPortal() { return rawTitleInPortal; } public void setRawTitleInPortal(String rawTitleInPortal) { this.rawTitleInPortal = rawTitleInPortal; } @JsonProperty("regexp_for_validation") public String getRegexpForValidation() { return regexpForValidation; } public void setRegexpForValidation(String regexpForValidation) { this.regexpForValidation = regexpForValidation; } public Boolean getRemovable() { return removable; } public void setRemovable(Boolean removable) { this.removable = removable; } public Boolean getRequired() { return required; } public void setRequired(Boolean required) { this.required = required; } @JsonProperty("required_in_portal") public Boolean getRequiredInPortal() { return requiredInPortal; } public void setRequiredInPortal(Boolean requiredInPortal) { this.requiredInPortal = requiredInPortal; } @JsonProperty("system_field_options") public List<Option> getSystemFieldOptions() { return systemFieldOptions; } public void setSystemFieldOptions(List<Option> systemFieldOptions) { this.systemFieldOptions = systemFieldOptions; } public String getTag() { return tag; } public void setTag(String tag) { this.tag = tag; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } @JsonProperty("title_in_portal") public String getTitleInPortal() { return titleInPortal; } public void setTitleInPortal(String titleInPortal) { this.titleInPortal = titleInPortal; } public String getType() { return type; } public void setType(String type) { this.type = type; } @JsonProperty("updated_at") public Date getUpdatedAt() { return updatedAt; } public void setUpdatedAt(Date updatedAt) { this.updatedAt = updatedAt; } public String getUrl() { return url; } public void setUrl(String url) { this.url = url; } @JsonProperty("visible_in_portal") public Boolean getVisibleInPortal() { return visibleInPortal; } public void setVisibleInPortal(Boolean visibleInPortal) { this.visibleInPortal = visibleInPortal; } @Override public String toString() { final StringBuilder sb = new StringBuilder(); sb.append("Field"); sb.append("{active=").append(active); sb.append(", id=").append(id); sb.append(", url='").append(url).append('\''); sb.append(", type='").append(type).append('\''); sb.append(", title='").append(title).append('\''); sb.append(", description='").append(description).append('\''); sb.append(", position=").append(position); sb.append(", required=").append(required); sb.append(", collapsedForAgents=").append(collapsedForAgents); sb.append(", regexpForValidation='").append(regexpForValidation).append('\''); sb.append(", titleInPortal='").append(titleInPortal).append('\''); sb.append(", visibleInPortal=").append(visibleInPortal); sb.append(", editableInPortal=").append(editableInPortal); sb.append(", requiredInPortal=").append(requiredInPortal); sb.append(", tag='").append(tag).append('\''); sb.append(", createdAt=").append(createdAt); sb.append(", updatedAt=").append(updatedAt); sb.append(", customFieldOptions=").append(customFieldOptions); sb.append('}'); return sb.toString(); } public static class Option { private String name; private String value; private Option() { } private Option(String name, String value) { this.name = name; this.value = value; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getValue() { return value; } public void setValue(String value) { this.value = value; } @Override public String toString() { final StringBuilder sb = new StringBuilder(); sb.append("Option"); sb.append("{name='").append(name).append('\''); sb.append(", value='").append(value).append('\''); sb.append('}'); return sb.toString(); } } }