uk.org.openbanking.datamodel.account.OBStatement2Basic Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of openbanking-sdk Show documentation
Show all versions of openbanking-sdk Show documentation
A Java SDK to help implementing the Open Banking standard : https://www.openbanking.org.uk/read-write-apis/
/**
*
* The contents of this file are subject to the terms of the Common Development and
* Distribution License (the License). You may not use this file except in compliance with the
* License.
*
* You can obtain a copy of the License at https://forgerock.org/cddlv1-0/. See the License for the
* specific language governing permission and limitations under the License.
*
* When distributing Covered Software, include this CDDL Header Notice in each file and include
* the License file at legal/CDDLv1.0.txt. If applicable, add the following below the CDDL
* Header, with the fields enclosed by brackets [] replaced by your own identifying
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2019 ForgeRock AS.
*/
/*
* Account and Transaction API Specification
* Swagger for Account and Transaction API Specification
*
* OpenAPI spec version: v3.1.1
* Contact: [email protected]
*
* NOTE: This class is auto generated by the swagger code generator program.
* https://github.com/swagger-api/swagger-codegen.git
* Do not edit the class manually.
*/
package uk.org.openbanking.datamodel.account;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.joda.time.DateTime;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
/**
* Provides further details on a statement resource.
*/
@ApiModel(description = "Provides further details on a statement resource.")
@javax.annotation.Generated(value = "io.swagger.codegen.languages.JavaClientCodegen", date = "2019-05-23T11:27:41.089+01:00")
public class OBStatement2Basic {
@JsonProperty("AccountId")
private String accountId = null;
@JsonProperty("StatementId")
private String statementId = null;
@JsonProperty("StatementReference")
private String statementReference = null;
@JsonProperty("Type")
private OBExternalStatementType1Code type = null;
@JsonProperty("StartDateTime")
private DateTime startDateTime = null;
@JsonProperty("EndDateTime")
private DateTime endDateTime = null;
@JsonProperty("CreationDateTime")
private DateTime creationDateTime = null;
@JsonProperty("StatementDescription")
private List statementDescription = null;
@JsonProperty("StatementBenefit")
private List statementBenefit = null;
@JsonProperty("StatementFee")
private List statementFee = null;
@JsonProperty("StatementInterest")
private List statementInterest = null;
@JsonProperty("StatementDateTime")
private List statementDateTime = null;
@JsonProperty("StatementRate")
private List statementRate = null;
@JsonProperty("StatementValue")
private List statementValue = null;
public OBStatement2Basic accountId(String accountId) {
this.accountId = accountId;
return this;
}
/**
* Get accountId
*
* @return accountId
**/
@NotNull
@Size(min = 1, max = 40)
@ApiModelProperty(required = true, value = "")
public String getAccountId() {
return accountId;
}
public void setAccountId(String accountId) {
this.accountId = accountId;
}
public OBStatement2Basic statementId(String statementId) {
this.statementId = statementId;
return this;
}
/**
* Unique identifier for the statement resource within an servicing institution. This identifier is both unique and immutable.
*
* @return statementId
**/
@Size(min = 1, max = 40)
@ApiModelProperty(value = "Unique identifier for the statement resource within an servicing institution. This identifier is both unique and immutable.")
public String getStatementId() {
return statementId;
}
public void setStatementId(String statementId) {
this.statementId = statementId;
}
public OBStatement2Basic statementReference(String statementReference) {
this.statementReference = statementReference;
return this;
}
/**
* Unique reference for the statement. This reference may be optionally populated if available.
*
* @return statementReference
**/
@Size(min = 1, max = 35)
@ApiModelProperty(value = "Unique reference for the statement. This reference may be optionally populated if available.")
public String getStatementReference() {
return statementReference;
}
public void setStatementReference(String statementReference) {
this.statementReference = statementReference;
}
public OBStatement2Basic type(OBExternalStatementType1Code type) {
this.type = type;
return this;
}
/**
* Get type
*
* @return type
**/
@NotNull
@Valid
@ApiModelProperty(required = true, value = "")
public OBExternalStatementType1Code getType() {
return type;
}
public void setType(OBExternalStatementType1Code type) {
this.type = type;
}
public OBStatement2Basic startDateTime(DateTime startDateTime) {
this.startDateTime = startDateTime;
return this;
}
/**
* Date and time at which the statement period starts. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00
*
* @return startDateTime
**/
@NotNull
@Valid
@ApiModelProperty(required = true, value = "Date and time at which the statement period starts. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00")
public DateTime getStartDateTime() {
return startDateTime;
}
public void setStartDateTime(DateTime startDateTime) {
this.startDateTime = startDateTime;
}
public OBStatement2Basic endDateTime(DateTime endDateTime) {
this.endDateTime = endDateTime;
return this;
}
/**
* Date and time at which the statement period ends. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00
*
* @return endDateTime
**/
@NotNull
@Valid
@ApiModelProperty(required = true, value = "Date and time at which the statement period ends. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00")
public DateTime getEndDateTime() {
return endDateTime;
}
public void setEndDateTime(DateTime endDateTime) {
this.endDateTime = endDateTime;
}
public OBStatement2Basic creationDateTime(DateTime creationDateTime) {
this.creationDateTime = creationDateTime;
return this;
}
/**
* Date and time at which the resource was created. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00
*
* @return creationDateTime
**/
@NotNull
@Valid
@ApiModelProperty(required = true, value = "Date and time at which the resource was created. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00")
public DateTime getCreationDateTime() {
return creationDateTime;
}
public void setCreationDateTime(DateTime creationDateTime) {
this.creationDateTime = creationDateTime;
}
public OBStatement2Basic statementDescription(List statementDescription) {
this.statementDescription = statementDescription;
return this;
}
public OBStatement2Basic addStatementDescriptionItem(String statementDescriptionItem) {
if (this.statementDescription == null) {
this.statementDescription = new ArrayList();
}
this.statementDescription.add(statementDescriptionItem);
return this;
}
/**
* Other descriptions that may be available for the statement resource.
*
* @return statementDescription
**/
@ApiModelProperty(value = "Other descriptions that may be available for the statement resource.")
public List getStatementDescription() {
return statementDescription;
}
public void setStatementDescription(List statementDescription) {
this.statementDescription = statementDescription;
}
public OBStatement2Basic statementBenefit(List statementBenefit) {
this.statementBenefit = statementBenefit;
return this;
}
public OBStatement2Basic addStatementBenefitItem(OBStatementBenefit1 statementBenefitItem) {
if (this.statementBenefit == null) {
this.statementBenefit = new ArrayList();
}
this.statementBenefit.add(statementBenefitItem);
return this;
}
/**
* Set of elements used to provide details of a benefit or reward amount for the statement resource.
*
* @return statementBenefit
**/
@Valid
@ApiModelProperty(value = "Set of elements used to provide details of a benefit or reward amount for the statement resource.")
public List getStatementBenefit() {
return statementBenefit;
}
public void setStatementBenefit(List statementBenefit) {
this.statementBenefit = statementBenefit;
}
public OBStatement2Basic statementFee(List statementFee) {
this.statementFee = statementFee;
return this;
}
public OBStatement2Basic addStatementFeeItem(OBStatementFee2 statementFeeItem) {
if (this.statementFee == null) {
this.statementFee = new ArrayList();
}
this.statementFee.add(statementFeeItem);
return this;
}
/**
* Set of elements used to provide details of a fee for the statement resource.
*
* @return statementFee
**/
@Valid
@ApiModelProperty(value = "Set of elements used to provide details of a fee for the statement resource.")
public List getStatementFee() {
return statementFee;
}
public void setStatementFee(List statementFee) {
this.statementFee = statementFee;
}
public OBStatement2Basic statementInterest(List statementInterest) {
this.statementInterest = statementInterest;
return this;
}
public OBStatement2Basic addStatementInterestItem(OBStatementInterest2 statementInterestItem) {
if (this.statementInterest == null) {
this.statementInterest = new ArrayList();
}
this.statementInterest.add(statementInterestItem);
return this;
}
/**
* Set of elements used to provide details of a generic interest amount related to the statement resource.
*
* @return statementInterest
**/
@Valid
@ApiModelProperty(value = "Set of elements used to provide details of a generic interest amount related to the statement resource.")
public List getStatementInterest() {
return statementInterest;
}
public void setStatementInterest(List statementInterest) {
this.statementInterest = statementInterest;
}
public OBStatement2Basic statementDateTime(List statementDateTime) {
this.statementDateTime = statementDateTime;
return this;
}
public OBStatement2Basic addStatementDateTimeItem(OBStatementDateTime1 statementDateTimeItem) {
if (this.statementDateTime == null) {
this.statementDateTime = new ArrayList();
}
this.statementDateTime.add(statementDateTimeItem);
return this;
}
/**
* Set of elements used to provide details of a generic date time for the statement resource.
*
* @return statementDateTime
**/
@Valid
@ApiModelProperty(value = "Set of elements used to provide details of a generic date time for the statement resource.")
public List getStatementDateTime() {
return statementDateTime;
}
public void setStatementDateTime(List statementDateTime) {
this.statementDateTime = statementDateTime;
}
public OBStatement2Basic statementRate(List statementRate) {
this.statementRate = statementRate;
return this;
}
public OBStatement2Basic addStatementRateItem(OBStatementRate1 statementRateItem) {
if (this.statementRate == null) {
this.statementRate = new ArrayList();
}
this.statementRate.add(statementRateItem);
return this;
}
/**
* Set of elements used to provide details of a generic rate related to the statement resource.
*
* @return statementRate
**/
@Valid
@ApiModelProperty(value = "Set of elements used to provide details of a generic rate related to the statement resource.")
public List getStatementRate() {
return statementRate;
}
public void setStatementRate(List statementRate) {
this.statementRate = statementRate;
}
public OBStatement2Basic statementValue(List statementValue) {
this.statementValue = statementValue;
return this;
}
public OBStatement2Basic addStatementValueItem(OBStatementValue1 statementValueItem) {
if (this.statementValue == null) {
this.statementValue = new ArrayList();
}
this.statementValue.add(statementValueItem);
return this;
}
/**
* Set of elements used to provide details of a generic number value related to the statement resource.
*
* @return statementValue
**/
@Valid
@ApiModelProperty(value = "Set of elements used to provide details of a generic number value related to the statement resource.")
public List getStatementValue() {
return statementValue;
}
public void setStatementValue(List statementValue) {
this.statementValue = statementValue;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
OBStatement2Basic obStatement2Basic = (OBStatement2Basic) o;
return Objects.equals(this.accountId, obStatement2Basic.accountId) &&
Objects.equals(this.statementId, obStatement2Basic.statementId) &&
Objects.equals(this.statementReference, obStatement2Basic.statementReference) &&
Objects.equals(this.type, obStatement2Basic.type) &&
Objects.equals(this.startDateTime, obStatement2Basic.startDateTime) &&
Objects.equals(this.endDateTime, obStatement2Basic.endDateTime) &&
Objects.equals(this.creationDateTime, obStatement2Basic.creationDateTime) &&
Objects.equals(this.statementDescription, obStatement2Basic.statementDescription) &&
Objects.equals(this.statementBenefit, obStatement2Basic.statementBenefit) &&
Objects.equals(this.statementFee, obStatement2Basic.statementFee) &&
Objects.equals(this.statementInterest, obStatement2Basic.statementInterest) &&
Objects.equals(this.statementDateTime, obStatement2Basic.statementDateTime) &&
Objects.equals(this.statementRate, obStatement2Basic.statementRate) &&
Objects.equals(this.statementValue, obStatement2Basic.statementValue);
}
@Override
public int hashCode() {
return Objects.hash(accountId, statementId, statementReference, type, startDateTime, endDateTime, creationDateTime, statementDescription, statementBenefit, statementFee, statementInterest, statementDateTime, statementRate, statementValue);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class OBStatement2Basic {\n");
sb.append(" accountId: ").append(toIndentedString(accountId)).append("\n");
sb.append(" statementId: ").append(toIndentedString(statementId)).append("\n");
sb.append(" statementReference: ").append(toIndentedString(statementReference)).append("\n");
sb.append(" type: ").append(toIndentedString(type)).append("\n");
sb.append(" startDateTime: ").append(toIndentedString(startDateTime)).append("\n");
sb.append(" endDateTime: ").append(toIndentedString(endDateTime)).append("\n");
sb.append(" creationDateTime: ").append(toIndentedString(creationDateTime)).append("\n");
sb.append(" statementDescription: ").append(toIndentedString(statementDescription)).append("\n");
sb.append(" statementBenefit: ").append(toIndentedString(statementBenefit)).append("\n");
sb.append(" statementFee: ").append(toIndentedString(statementFee)).append("\n");
sb.append(" statementInterest: ").append(toIndentedString(statementInterest)).append("\n");
sb.append(" statementDateTime: ").append(toIndentedString(statementDateTime)).append("\n");
sb.append(" statementRate: ").append(toIndentedString(statementRate)).append("\n");
sb.append(" statementValue: ").append(toIndentedString(statementValue)).append("\n");
sb.append("}");
return sb.toString();
}
/**
* Convert the given object to string with each line indented by 4 spaces
* (except the first line).
*/
private String toIndentedString(Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
}