com.factset.sdk.FactSetFunds.models.FundsPricesRequest Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of factsetfunds Show documentation
Show all versions of factsetfunds Show documentation
FactSet SDK for Java - factsetfunds
/*
* FactSet Funds API
* FactSet Mutual Funds data offers over 50 fund- and share class-specific data points for mutual funds listed in the United States. FactSet Mutual Funds Reference provides fund-specific reference information as well as FactSet's proprietary classification system. It includes but is not limited to the following coverage * Fund descriptions * A seven-tier classification system * Leverage information * Fees and expenses * Portfolio managers FactSet Mutual Funds Time Series provides quantitative data items on a historical basis. It includes but is not limited to the following coverage * Net asset value * Fund flows * Assets under management * Total return
This API is rate-limited to 10 requests per second and 10 concurrent requests per user.
*
* The version of the OpenAPI document: 1.1.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.FactSetFunds.models;
import java.util.Objects;
import java.util.Arrays;
import java.util.Map;
import java.util.HashMap;
import com.factset.sdk.FactSetFunds.models.DataType;
import com.factset.sdk.FactSetFunds.models.Frequency;
import com.factset.sdk.FactSetFunds.models.SplitAdjust;
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.io.Serializable;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.factset.sdk.FactSetFunds.JSON;
/**
* Prices Request Body
*/
@ApiModel(description = "Prices Request Body")
@JsonPropertyOrder({
FundsPricesRequest.JSON_PROPERTY_IDS,
FundsPricesRequest.JSON_PROPERTY_START_DATE,
FundsPricesRequest.JSON_PROPERTY_END_DATE,
FundsPricesRequest.JSON_PROPERTY_FREQUENCY,
FundsPricesRequest.JSON_PROPERTY_CURRENCY,
FundsPricesRequest.JSON_PROPERTY_DATA_TYPE,
FundsPricesRequest.JSON_PROPERTY_SPLIT_ADJUST
})
@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class FundsPricesRequest implements Serializable {
private static final long serialVersionUID = 1L;
public static final String JSON_PROPERTY_IDS = "ids";
private java.util.List ids = new java.util.ArrayList<>();
public static final String JSON_PROPERTY_START_DATE = "startDate";
private String startDate;
public static final String JSON_PROPERTY_END_DATE = "endDate";
private String endDate;
public static final String JSON_PROPERTY_FREQUENCY = "frequency";
private Frequency frequency = Frequency.D;
public static final String JSON_PROPERTY_CURRENCY = "currency";
private String currency = "LOCAL";
public static final String JSON_PROPERTY_DATA_TYPE = "dataType";
private DataType dataType = DataType.RAW;
public static final String JSON_PROPERTY_SPLIT_ADJUST = "splitAdjust";
private SplitAdjust splitAdjust = SplitAdjust.SPLIT;
public FundsPricesRequest() {
}
@JsonCreator
public FundsPricesRequest(
@JsonProperty(value=JSON_PROPERTY_IDS, required=true) java.util.List ids
) {
this();
this.ids = ids;
}
public FundsPricesRequest ids(java.util.List ids) {
this.ids = ids;
return this;
}
public FundsPricesRequest addIdsItem(String idsItem) {
this.ids.add(idsItem);
return this;
}
/**
* The requested Fund Identifier. FactSet Identifiers, tickers, CUSIP and SEDOL are accepted input. <p>***ids limit** = 1000 per request*</p>
* @return ids
**/
@jakarta.annotation.Nonnull
@ApiModelProperty(example = "[\"MABAX\",\"FCNTX\"]", required = true, value = "The requested Fund Identifier. FactSet Identifiers, tickers, CUSIP and SEDOL are accepted input. ***ids limit** = 1000 per request*
")
@JsonProperty(JSON_PROPERTY_IDS)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public java.util.List getIds() {
return ids;
}
@JsonProperty(JSON_PROPERTY_IDS)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setIds(java.util.List ids) {
this.ids = ids;
}
public FundsPricesRequest startDate(String startDate) {
this.startDate = startDate;
return this;
}
/**
* The start date requested for a given date range in **YYYY-MM-DD** format. If left blank, the API will default to previous close. Future dates (T+1) are not accepted in this endpoint.
* @return startDate
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "2019-01-01", value = "The start date requested for a given date range in **YYYY-MM-DD** format. If left blank, the API will default to previous close. Future dates (T+1) are not accepted in this endpoint. ")
@JsonProperty(JSON_PROPERTY_START_DATE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getStartDate() {
return startDate;
}
@JsonProperty(JSON_PROPERTY_START_DATE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setStartDate(String startDate) {
this.startDate = startDate;
}
public FundsPricesRequest endDate(String endDate) {
this.endDate = endDate;
return this;
}
/**
* The end date requested for a given date range in **YYYY-MM-DD** format. If left blank, the API will default to previous close. Future dates (T+1) are not accepted in this endpoint.
* @return endDate
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "2019-12-31", value = "The end date requested for a given date range in **YYYY-MM-DD** format. If left blank, the API will default to previous close. Future dates (T+1) are not accepted in this endpoint. ")
@JsonProperty(JSON_PROPERTY_END_DATE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getEndDate() {
return endDate;
}
@JsonProperty(JSON_PROPERTY_END_DATE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setEndDate(String endDate) {
this.endDate = endDate;
}
public FundsPricesRequest frequency(Frequency frequency) {
this.frequency = frequency;
return this;
}
/**
* Get frequency
* @return frequency
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "")
@JsonProperty(JSON_PROPERTY_FREQUENCY)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public Frequency getFrequency() {
return frequency;
}
@JsonProperty(JSON_PROPERTY_FREQUENCY)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setFrequency(Frequency frequency) {
this.frequency = frequency;
}
public FundsPricesRequest currency(String currency) {
this.currency = currency;
return this;
}
/**
* The ISO3 currency control for the requested fund.
* @return currency
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "USD", value = "The ISO3 currency control for the requested fund.")
@JsonProperty(JSON_PROPERTY_CURRENCY)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getCurrency() {
return currency;
}
@JsonProperty(JSON_PROPERTY_CURRENCY)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setCurrency(String currency) {
this.currency = currency;
}
public FundsPricesRequest dataType(DataType dataType) {
this.dataType = dataType;
return this;
}
/**
* Get dataType
* @return dataType
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "")
@JsonProperty(JSON_PROPERTY_DATA_TYPE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public DataType getDataType() {
return dataType;
}
@JsonProperty(JSON_PROPERTY_DATA_TYPE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setDataType(DataType dataType) {
this.dataType = dataType;
}
public FundsPricesRequest splitAdjust(SplitAdjust splitAdjust) {
this.splitAdjust = splitAdjust;
return this;
}
/**
* Get splitAdjust
* @return splitAdjust
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "")
@JsonProperty(JSON_PROPERTY_SPLIT_ADJUST)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public SplitAdjust getSplitAdjust() {
return splitAdjust;
}
@JsonProperty(JSON_PROPERTY_SPLIT_ADJUST)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setSplitAdjust(SplitAdjust splitAdjust) {
this.splitAdjust = splitAdjust;
}
/**
* Return true if this fundsPricesRequest object is equal to o.
*/
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
FundsPricesRequest fundsPricesRequest = (FundsPricesRequest) o;
return Objects.equals(this.ids, fundsPricesRequest.ids) &&
Objects.equals(this.startDate, fundsPricesRequest.startDate) &&
Objects.equals(this.endDate, fundsPricesRequest.endDate) &&
Objects.equals(this.frequency, fundsPricesRequest.frequency) &&
Objects.equals(this.currency, fundsPricesRequest.currency) &&
Objects.equals(this.dataType, fundsPricesRequest.dataType) &&
Objects.equals(this.splitAdjust, fundsPricesRequest.splitAdjust);
}
@Override
public int hashCode() {
return Objects.hash(ids, startDate, endDate, frequency, currency, dataType, splitAdjust);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class FundsPricesRequest {\n");
sb.append(" ids: ").append(toIndentedString(ids)).append("\n");
sb.append(" startDate: ").append(toIndentedString(startDate)).append("\n");
sb.append(" endDate: ").append(toIndentedString(endDate)).append("\n");
sb.append(" frequency: ").append(toIndentedString(frequency)).append("\n");
sb.append(" currency: ").append(toIndentedString(currency)).append("\n");
sb.append(" dataType: ").append(toIndentedString(dataType)).append("\n");
sb.append(" splitAdjust: ").append(toIndentedString(splitAdjust)).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 ");
}
}