com.factset.sdk.FactSetFundamentals.models.Dividend Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of factsetfundamentals Show documentation
Show all versions of factsetfundamentals Show documentation
FactSet SDK for Java - factsetfundamentals
/*
* FactSet Fundamentals API
* Gain access to current, comprehensive, and comparative information on securities in worldwide developed and emerging markets. Composed of annual and interim/quarterly data, detailed historical financial statement content, per-share data, and calculated ratios, FactSet Fundamentals provides you with the information you need for a global investment perspective.This API is rate-limited to 10 requests per second and 10 concurrent requests per user.
*
* The version of the OpenAPI document: 2.2.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.FactSetFundamentals.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 java.time.LocalDate;
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.FactSetFundamentals.JSON;
/**
* Dividend
*/
@JsonPropertyOrder({
Dividend.JSON_PROPERTY_ANNUAL_DIVIDEND_PER_SHARE,
Dividend.JSON_PROPERTY_DISTRIBUTION_FREQUENCY,
Dividend.JSON_PROPERTY_DIVIDEND_PER_SHARE,
Dividend.JSON_PROPERTY_EX_DIVIDEND_DATE,
Dividend.JSON_PROPERTY_INDICATIVE_DIVIDEND_RATE,
Dividend.JSON_PROPERTY_PAYABLE_DATE,
Dividend.JSON_PROPERTY_RECORD_DATE,
Dividend.JSON_PROPERTY_YIELD
})
@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class Dividend implements Serializable {
private static final long serialVersionUID = 1L;
public static final String JSON_PROPERTY_ANNUAL_DIVIDEND_PER_SHARE = "annualDividendPerShare";
private JsonNullable annualDividendPerShare = JsonNullable.undefined();
public static final String JSON_PROPERTY_DISTRIBUTION_FREQUENCY = "distributionFrequency";
private JsonNullable distributionFrequency = JsonNullable.undefined();
public static final String JSON_PROPERTY_DIVIDEND_PER_SHARE = "dividendPerShare";
private JsonNullable dividendPerShare = JsonNullable.undefined();
public static final String JSON_PROPERTY_EX_DIVIDEND_DATE = "exDividendDate";
private JsonNullable exDividendDate = JsonNullable.undefined();
public static final String JSON_PROPERTY_INDICATIVE_DIVIDEND_RATE = "indicativeDividendRate";
private JsonNullable indicativeDividendRate = JsonNullable.undefined();
public static final String JSON_PROPERTY_PAYABLE_DATE = "payableDate";
private JsonNullable payableDate = JsonNullable.undefined();
public static final String JSON_PROPERTY_RECORD_DATE = "recordDate";
private JsonNullable recordDate = JsonNullable.undefined();
public static final String JSON_PROPERTY_YIELD = "yield";
private JsonNullable yield = JsonNullable.undefined();
public Dividend() {
}
public Dividend annualDividendPerShare(Double annualDividendPerShare) {
this.annualDividendPerShare = JsonNullable.of(annualDividendPerShare);
return this;
}
/**
* Dividend is the distribution of reward from a portion of company's earnings, and is paid to a class of its shareholders each year for every share they own.
* @return annualDividendPerShare
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "6.59", value = "Dividend is the distribution of reward from a portion of company's earnings, and is paid to a class of its shareholders each year for every share they own.")
@JsonIgnore
public Double getAnnualDividendPerShare() {
return annualDividendPerShare.orElse(null);
}
@JsonProperty(JSON_PROPERTY_ANNUAL_DIVIDEND_PER_SHARE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getAnnualDividendPerShare_JsonNullable() {
return annualDividendPerShare;
}
@JsonProperty(JSON_PROPERTY_ANNUAL_DIVIDEND_PER_SHARE)
public void setAnnualDividendPerShare_JsonNullable(JsonNullable annualDividendPerShare) {
this.annualDividendPerShare = annualDividendPerShare;
}
public void setAnnualDividendPerShare(Double annualDividendPerShare) {
this.annualDividendPerShare = JsonNullable.of(annualDividendPerShare);
}
public Dividend distributionFrequency(String distributionFrequency) {
this.distributionFrequency = JsonNullable.of(distributionFrequency);
return this;
}
/**
* Distribution frequency is how often a dividend is paid by an individual stock, distribution frequency can vary from monthly to annually.
* @return distributionFrequency
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "Quarterly", value = "Distribution frequency is how often a dividend is paid by an individual stock, distribution frequency can vary from monthly to annually.")
@JsonIgnore
public String getDistributionFrequency() {
return distributionFrequency.orElse(null);
}
@JsonProperty(JSON_PROPERTY_DISTRIBUTION_FREQUENCY)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getDistributionFrequency_JsonNullable() {
return distributionFrequency;
}
@JsonProperty(JSON_PROPERTY_DISTRIBUTION_FREQUENCY)
public void setDistributionFrequency_JsonNullable(JsonNullable distributionFrequency) {
this.distributionFrequency = distributionFrequency;
}
public void setDistributionFrequency(String distributionFrequency) {
this.distributionFrequency = JsonNullable.of(distributionFrequency);
}
public Dividend dividendPerShare(Double dividendPerShare) {
this.dividendPerShare = JsonNullable.of(dividendPerShare);
return this;
}
/**
* Dividend is the distribution of reward from a portion of company's earnings, and is paid to a class of its shareholders for every share they own each time the company distributes dividends, which could be quarterly, semi-annually, or annually depending on the company's dividend policy.
* @return dividendPerShare
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "1.65999997", value = "Dividend is the distribution of reward from a portion of company's earnings, and is paid to a class of its shareholders for every share they own each time the company distributes dividends, which could be quarterly, semi-annually, or annually depending on the company's dividend policy.")
@JsonIgnore
public Double getDividendPerShare() {
return dividendPerShare.orElse(null);
}
@JsonProperty(JSON_PROPERTY_DIVIDEND_PER_SHARE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getDividendPerShare_JsonNullable() {
return dividendPerShare;
}
@JsonProperty(JSON_PROPERTY_DIVIDEND_PER_SHARE)
public void setDividendPerShare_JsonNullable(JsonNullable dividendPerShare) {
this.dividendPerShare = dividendPerShare;
}
public void setDividendPerShare(Double dividendPerShare) {
this.dividendPerShare = JsonNullable.of(dividendPerShare);
}
public Dividend exDividendDate(LocalDate exDividendDate) {
this.exDividendDate = JsonNullable.of(exDividendDate);
return this;
}
/**
* The date on which the dividend eligibility expires is called the ex-dividend date
* @return exDividendDate
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "Sat Dec 30 00:00:00 UTC 2017", value = "The date on which the dividend eligibility expires is called the ex-dividend date")
@JsonIgnore
public LocalDate getExDividendDate() {
return exDividendDate.orElse(null);
}
@JsonProperty(JSON_PROPERTY_EX_DIVIDEND_DATE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getExDividendDate_JsonNullable() {
return exDividendDate;
}
@JsonProperty(JSON_PROPERTY_EX_DIVIDEND_DATE)
public void setExDividendDate_JsonNullable(JsonNullable exDividendDate) {
this.exDividendDate = exDividendDate;
}
public void setExDividendDate(LocalDate exDividendDate) {
this.exDividendDate = JsonNullable.of(exDividendDate);
}
public Dividend indicativeDividendRate(String indicativeDividendRate) {
this.indicativeDividendRate = JsonNullable.of(indicativeDividendRate);
return this;
}
/**
* Indicated dividend Rate projects the annual dividend return of a stock based on its most recent dividend, the number of dividends issued each year, and the current share price
* @return indicativeDividendRate
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "6.64", value = "Indicated dividend Rate projects the annual dividend return of a stock based on its most recent dividend, the number of dividends issued each year, and the current share price")
@JsonIgnore
public String getIndicativeDividendRate() {
return indicativeDividendRate.orElse(null);
}
@JsonProperty(JSON_PROPERTY_INDICATIVE_DIVIDEND_RATE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getIndicativeDividendRate_JsonNullable() {
return indicativeDividendRate;
}
@JsonProperty(JSON_PROPERTY_INDICATIVE_DIVIDEND_RATE)
public void setIndicativeDividendRate_JsonNullable(JsonNullable indicativeDividendRate) {
this.indicativeDividendRate = indicativeDividendRate;
}
public void setIndicativeDividendRate(String indicativeDividendRate) {
this.indicativeDividendRate = JsonNullable.of(indicativeDividendRate);
}
public Dividend payableDate(LocalDate payableDate) {
this.payableDate = JsonNullable.of(payableDate);
return this;
}
/**
* The company issues the payment of the dividend on the payment date, which is when the money gets credited to investor's account
* @return payableDate
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "Sat Dec 30 00:00:00 UTC 2017", value = "The company issues the payment of the dividend on the payment date, which is when the money gets credited to investor's account")
@JsonIgnore
public LocalDate getPayableDate() {
return payableDate.orElse(null);
}
@JsonProperty(JSON_PROPERTY_PAYABLE_DATE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getPayableDate_JsonNullable() {
return payableDate;
}
@JsonProperty(JSON_PROPERTY_PAYABLE_DATE)
public void setPayableDate_JsonNullable(JsonNullable payableDate) {
this.payableDate = payableDate;
}
public void setPayableDate(LocalDate payableDate) {
this.payableDate = JsonNullable.of(payableDate);
}
public Dividend recordDate(LocalDate recordDate) {
this.recordDate = JsonNullable.of(recordDate);
return this;
}
/**
* The record date is the cut-off date in order to determine which shareholders are eligible to receive a dividend or distribution
* @return recordDate
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "Sat Dec 30 00:00:00 UTC 2017", value = "The record date is the cut-off date in order to determine which shareholders are eligible to receive a dividend or distribution")
@JsonIgnore
public LocalDate getRecordDate() {
return recordDate.orElse(null);
}
@JsonProperty(JSON_PROPERTY_RECORD_DATE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getRecordDate_JsonNullable() {
return recordDate;
}
@JsonProperty(JSON_PROPERTY_RECORD_DATE)
public void setRecordDate_JsonNullable(JsonNullable recordDate) {
this.recordDate = recordDate;
}
public void setRecordDate(LocalDate recordDate) {
this.recordDate = JsonNullable.of(recordDate);
}
public Dividend yield(Double yield) {
this.yield = JsonNullable.of(yield);
return this;
}
/**
* Dividend yield is the financial ratio that shows how much a company pays out in dividends each year relative to its stock price
* @return yield
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "4.10526", value = "Dividend yield is the financial ratio that shows how much a company pays out in dividends each year relative to its stock price")
@JsonIgnore
public Double getYield() {
return yield.orElse(null);
}
@JsonProperty(JSON_PROPERTY_YIELD)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getYield_JsonNullable() {
return yield;
}
@JsonProperty(JSON_PROPERTY_YIELD)
public void setYield_JsonNullable(JsonNullable yield) {
this.yield = yield;
}
public void setYield(Double yield) {
this.yield = JsonNullable.of(yield);
}
/**
* Return true if this Dividend object is equal to o.
*/
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
Dividend dividend = (Dividend) o;
return equalsNullable(this.annualDividendPerShare, dividend.annualDividendPerShare) &&
equalsNullable(this.distributionFrequency, dividend.distributionFrequency) &&
equalsNullable(this.dividendPerShare, dividend.dividendPerShare) &&
equalsNullable(this.exDividendDate, dividend.exDividendDate) &&
equalsNullable(this.indicativeDividendRate, dividend.indicativeDividendRate) &&
equalsNullable(this.payableDate, dividend.payableDate) &&
equalsNullable(this.recordDate, dividend.recordDate) &&
equalsNullable(this.yield, dividend.yield);
}
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(hashCodeNullable(annualDividendPerShare), hashCodeNullable(distributionFrequency), hashCodeNullable(dividendPerShare), hashCodeNullable(exDividendDate), hashCodeNullable(indicativeDividendRate), hashCodeNullable(payableDate), hashCodeNullable(recordDate), hashCodeNullable(yield));
}
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 Dividend {\n");
sb.append(" annualDividendPerShare: ").append(toIndentedString(annualDividendPerShare)).append("\n");
sb.append(" distributionFrequency: ").append(toIndentedString(distributionFrequency)).append("\n");
sb.append(" dividendPerShare: ").append(toIndentedString(dividendPerShare)).append("\n");
sb.append(" exDividendDate: ").append(toIndentedString(exDividendDate)).append("\n");
sb.append(" indicativeDividendRate: ").append(toIndentedString(indicativeDividendRate)).append("\n");
sb.append(" payableDate: ").append(toIndentedString(payableDate)).append("\n");
sb.append(" recordDate: ").append(toIndentedString(recordDate)).append("\n");
sb.append(" yield: ").append(toIndentedString(yield)).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 ");
}
}