com.factset.sdk.FixedIncomeCalculation.models.FIBalloonExtension Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of fixedincomecalculation Show documentation
Show all versions of fixedincomecalculation Show documentation
FactSet SDK for Java - fixedincomecalculation
The newest version!
/*
* FI API
* Allow clients to fetch Analytics through APIs.
*
* The version of the OpenAPI document: 3.13.0
* Contact: [email protected]
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
package com.factset.sdk.FixedIncomeCalculation.models;
import java.util.Objects;
import java.util.Arrays;
import java.util.Map;
import java.util.HashMap;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonTypeName;
import com.fasterxml.jackson.annotation.JsonValue;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.openapitools.jackson.nullable.JsonNullable;
import com.fasterxml.jackson.annotation.JsonIgnore;
import org.openapitools.jackson.nullable.JsonNullable;
import java.util.NoSuchElementException;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.factset.sdk.FixedIncomeCalculation.JSON;
/**
* FIBalloonExtension
*/
@JsonPropertyOrder({
FIBalloonExtension.JSON_PROPERTY_MONTHS,
FIBalloonExtension.JSON_PROPERTY_PERCENTAGE,
FIBalloonExtension.JSON_PROPERTY_AMORTIZATION_TYPE,
FIBalloonExtension.JSON_PROPERTY_UNITS,
FIBalloonExtension.JSON_PROPERTY_COUPON_STEPUP
})
@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class FIBalloonExtension implements Serializable {
private static final long serialVersionUID = 1L;
public static final String JSON_PROPERTY_MONTHS = "months";
private Integer months;
public static final String JSON_PROPERTY_PERCENTAGE = "percentage";
private Double percentage;
/**
* Amortization Type
*/
public enum AmortizationTypeEnum {
NONE("Loan_Amort_None"),
REGULAR("Loan_Amort_Regular"),
DEFAULT("Loan_Amort_Default");
private String value;
AmortizationTypeEnum(String value) {
this.value = value;
}
@JsonValue
public String getValue() {
return value;
}
@Override
public String toString() {
return String.valueOf(value);
}
@JsonCreator
public static AmortizationTypeEnum fromValue(String value) {
for (AmortizationTypeEnum b : AmortizationTypeEnum.values()) {
if (b.value.equals(value)) {
return b;
}
}
throw new IllegalArgumentException("Unexpected value '" + value + "'");
}
}
public static final String JSON_PROPERTY_AMORTIZATION_TYPE = "amortizationType";
private AmortizationTypeEnum amortizationType;
public static final String JSON_PROPERTY_UNITS = "units";
private JsonNullable units = JsonNullable.undefined();
public static final String JSON_PROPERTY_COUPON_STEPUP = "couponStepup";
private Double couponStepup;
public FIBalloonExtension() {
}
public FIBalloonExtension months(Integer months) {
this.months = months;
return this;
}
/**
* Months
* @return months
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "Months")
@JsonProperty(JSON_PROPERTY_MONTHS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Integer getMonths() {
return months;
}
@JsonProperty(JSON_PROPERTY_MONTHS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setMonths(Integer months) {
this.months = months;
}
public FIBalloonExtension percentage(Double percentage) {
this.percentage = percentage;
return this;
}
/**
* Percentage
* @return percentage
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "Percentage")
@JsonProperty(JSON_PROPERTY_PERCENTAGE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Double getPercentage() {
return percentage;
}
@JsonProperty(JSON_PROPERTY_PERCENTAGE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setPercentage(Double percentage) {
this.percentage = percentage;
}
public FIBalloonExtension amortizationType(AmortizationTypeEnum amortizationType) {
this.amortizationType = amortizationType;
return this;
}
/**
* Amortization Type
* @return amortizationType
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "Amortization Type")
@JsonProperty(JSON_PROPERTY_AMORTIZATION_TYPE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public AmortizationTypeEnum getAmortizationType() {
return amortizationType;
}
@JsonProperty(JSON_PROPERTY_AMORTIZATION_TYPE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setAmortizationType(AmortizationTypeEnum amortizationType) {
this.amortizationType = amortizationType;
}
public FIBalloonExtension units(String units) {
this.units = JsonNullable.of(units);
return this;
}
/**
* Units
* @return units
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "Units")
@JsonIgnore
public String getUnits() {
return units.orElse(null);
}
@JsonProperty(JSON_PROPERTY_UNITS)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getUnits_JsonNullable() {
return units;
}
@JsonProperty(JSON_PROPERTY_UNITS)
public void setUnits_JsonNullable(JsonNullable units) {
this.units = units;
}
public void setUnits(String units) {
this.units = JsonNullable.of(units);
}
public FIBalloonExtension couponStepup(Double couponStepup) {
this.couponStepup = couponStepup;
return this;
}
/**
* Coupon Stepup
* @return couponStepup
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "Coupon Stepup")
@JsonProperty(JSON_PROPERTY_COUPON_STEPUP)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Double getCouponStepup() {
return couponStepup;
}
@JsonProperty(JSON_PROPERTY_COUPON_STEPUP)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setCouponStepup(Double couponStepup) {
this.couponStepup = couponStepup;
}
/**
* Return true if this FIBalloonExtension object is equal to o.
*/
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
FIBalloonExtension fiBalloonExtension = (FIBalloonExtension) o;
return Objects.equals(this.months, fiBalloonExtension.months) &&
Objects.equals(this.percentage, fiBalloonExtension.percentage) &&
Objects.equals(this.amortizationType, fiBalloonExtension.amortizationType) &&
equalsNullable(this.units, fiBalloonExtension.units) &&
Objects.equals(this.couponStepup, fiBalloonExtension.couponStepup);
}
private static boolean equalsNullable(JsonNullable a, JsonNullable b) {
return a == b || (a != null && b != null && a.isPresent() && b.isPresent() && Objects.deepEquals(a.get(), b.get()));
}
@Override
public int hashCode() {
return Objects.hash(months, percentage, amortizationType, hashCodeNullable(units), couponStepup);
}
private static int hashCodeNullable(JsonNullable a) {
if (a == null) {
return 1;
}
return a.isPresent() ? Arrays.deepHashCode(new Object[]{a.get()}) : 31;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class FIBalloonExtension {\n");
sb.append(" months: ").append(toIndentedString(months)).append("\n");
sb.append(" percentage: ").append(toIndentedString(percentage)).append("\n");
sb.append(" amortizationType: ").append(toIndentedString(amortizationType)).append("\n");
sb.append(" units: ").append(toIndentedString(units)).append("\n");
sb.append(" couponStepup: ").append(toIndentedString(couponStepup)).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 ");
}
}