All Downloads are FREE. Search and download functionalities are using the official Maven repository.

uk.gov.justice.laa.crime.common.model.evidence.ApiIncomeEvidenceItems Maven / Gradle / Ivy


package uk.gov.justice.laa.crime.common.model.evidence;

import java.util.ArrayList;
import java.util.List;
import javax.annotation.processing.Generated;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import jakarta.validation.Valid;
import jakarta.validation.constraints.NotNull;


/**
 * Income Evidence Items
 * 

* Represents a list of income evidence records associated with an applicant * */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "applicantDetails", "incomeEvidenceItems" }) @Generated("jsonschema2pojo") public class ApiIncomeEvidenceItems { /** * Applicant Details *

* Information about an applicants reference and employment * (Required) * */ @JsonProperty("applicantDetails") @JsonPropertyDescription("Information about an applicants reference and employment") @Valid @NotNull private ApiApplicantDetails applicantDetails; /** * The list of associated income evidence items * */ @JsonProperty("incomeEvidenceItems") @JsonPropertyDescription("The list of associated income evidence items") @Valid private List incomeEvidenceItems = new ArrayList(); protected final static Object NOT_FOUND_VALUE = new Object(); /** * No args constructor for use in serialization * */ public ApiIncomeEvidenceItems() { } /** * * @param applicantDetails * @param incomeEvidenceItems */ public ApiIncomeEvidenceItems(ApiApplicantDetails applicantDetails, List incomeEvidenceItems) { super(); this.applicantDetails = applicantDetails; this.incomeEvidenceItems = incomeEvidenceItems; } /** * Applicant Details *

* Information about an applicants reference and employment * (Required) * */ @JsonProperty("applicantDetails") public ApiApplicantDetails getApplicantDetails() { return applicantDetails; } /** * Applicant Details *

* Information about an applicants reference and employment * (Required) * */ @JsonProperty("applicantDetails") public void setApplicantDetails(ApiApplicantDetails applicantDetails) { this.applicantDetails = applicantDetails; } public ApiIncomeEvidenceItems withApplicantDetails(ApiApplicantDetails applicantDetails) { this.applicantDetails = applicantDetails; return this; } /** * The list of associated income evidence items * */ @JsonProperty("incomeEvidenceItems") public List getIncomeEvidenceItems() { return incomeEvidenceItems; } /** * The list of associated income evidence items * */ @JsonProperty("incomeEvidenceItems") public void setIncomeEvidenceItems(List incomeEvidenceItems) { this.incomeEvidenceItems = incomeEvidenceItems; } public ApiIncomeEvidenceItems withIncomeEvidenceItems(List incomeEvidenceItems) { this.incomeEvidenceItems = incomeEvidenceItems; return this; } protected boolean declaredProperty(String name, Object value) { if ("applicantDetails".equals(name)) { if (value instanceof ApiApplicantDetails) { setApplicantDetails(((ApiApplicantDetails) value)); } else { throw new IllegalArgumentException(("property \"applicantDetails\" is of type \"uk.gov.justice.laa.crime.common.model.evidence.ApiApplicantDetails\", but got "+ value.getClass().toString())); } return true; } else { if ("incomeEvidenceItems".equals(name)) { if (value instanceof List) { setIncomeEvidenceItems(((List ) value)); } else { throw new IllegalArgumentException(("property \"incomeEvidenceItems\" is of type \"java.util.List\", but got "+ value.getClass().toString())); } return true; } else { return false; } } } protected Object declaredPropertyOrNotFound(String name, Object notFoundValue) { if ("applicantDetails".equals(name)) { return getApplicantDetails(); } else { if ("incomeEvidenceItems".equals(name)) { return getIncomeEvidenceItems(); } else { return notFoundValue; } } } @SuppressWarnings({ "unchecked" }) publicT get(String name) { Object value = declaredPropertyOrNotFound(name, ApiIncomeEvidenceItems.NOT_FOUND_VALUE); if (ApiIncomeEvidenceItems.NOT_FOUND_VALUE!= value) { return ((T) value); } else { throw new IllegalArgumentException((("property \""+ name)+"\" is not defined")); } } public void set(String name, Object value) { if (!declaredProperty(name, value)) { throw new IllegalArgumentException((("property \""+ name)+"\" is not defined")); } } public ApiIncomeEvidenceItems with(String name, Object value) { if (!declaredProperty(name, value)) { throw new IllegalArgumentException((("property \""+ name)+"\" is not defined")); } return this; } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append(ApiIncomeEvidenceItems.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); sb.append("applicantDetails"); sb.append('='); sb.append(((this.applicantDetails == null)?"":this.applicantDetails)); sb.append(','); sb.append("incomeEvidenceItems"); sb.append('='); sb.append(((this.incomeEvidenceItems == null)?"":this.incomeEvidenceItems)); sb.append(','); if (sb.charAt((sb.length()- 1)) == ',') { sb.setCharAt((sb.length()- 1), ']'); } else { sb.append(']'); } return sb.toString(); } @Override public int hashCode() { int result = 1; result = ((result* 31)+((this.applicantDetails == null)? 0 :this.applicantDetails.hashCode())); result = ((result* 31)+((this.incomeEvidenceItems == null)? 0 :this.incomeEvidenceItems.hashCode())); return result; } @Override public boolean equals(Object other) { if (other == this) { return true; } if ((other instanceof ApiIncomeEvidenceItems) == false) { return false; } ApiIncomeEvidenceItems rhs = ((ApiIncomeEvidenceItems) other); return (((this.applicantDetails == rhs.applicantDetails)||((this.applicantDetails!= null)&&this.applicantDetails.equals(rhs.applicantDetails)))&&((this.incomeEvidenceItems == rhs.incomeEvidenceItems)||((this.incomeEvidenceItems!= null)&&this.incomeEvidenceItems.equals(rhs.incomeEvidenceItems)))); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy