com.factset.sdk.FactSetFunds.models.BenchmarkDetails 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.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.FactSetFunds.JSON;
/**
* BenchmarkDetails
*/
@JsonPropertyOrder({
BenchmarkDetails.JSON_PROPERTY_FSYM_ID,
BenchmarkDetails.JSON_PROPERTY_BENCHMARK_ID,
BenchmarkDetails.JSON_PROPERTY_BENCHMARK_NAME,
BenchmarkDetails.JSON_PROPERTY_MULTIPLE_BENCHMARK_FLAG,
BenchmarkDetails.JSON_PROPERTY_BENCHMARK_CHANGE_DATE,
BenchmarkDetails.JSON_PROPERTY_SEGMENT,
BenchmarkDetails.JSON_PROPERTY_SEGMENT_BENCHMARK_ID,
BenchmarkDetails.JSON_PROPERTY_SEGMENT_BENCHMARK_NAME,
BenchmarkDetails.JSON_PROPERTY_SEGMENT_BENCHMARK_CURRENCY,
BenchmarkDetails.JSON_PROPERTY_SEGMENT_BENCHMARK_RETURN_TYPE,
BenchmarkDetails.JSON_PROPERTY_REQUEST_ID
})
@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class BenchmarkDetails implements Serializable {
private static final long serialVersionUID = 1L;
public static final String JSON_PROPERTY_FSYM_ID = "fsymId";
private JsonNullable fsymId = JsonNullable.undefined();
public static final String JSON_PROPERTY_BENCHMARK_ID = "benchmarkId";
private JsonNullable benchmarkId = JsonNullable.undefined();
public static final String JSON_PROPERTY_BENCHMARK_NAME = "benchmarkName";
private JsonNullable benchmarkName = JsonNullable.undefined();
public static final String JSON_PROPERTY_MULTIPLE_BENCHMARK_FLAG = "multipleBenchmarkFlag";
private JsonNullable multipleBenchmarkFlag = JsonNullable.undefined();
public static final String JSON_PROPERTY_BENCHMARK_CHANGE_DATE = "benchmarkChangeDate";
private JsonNullable benchmarkChangeDate = JsonNullable.undefined();
public static final String JSON_PROPERTY_SEGMENT = "segment";
private JsonNullable segment = JsonNullable.undefined();
public static final String JSON_PROPERTY_SEGMENT_BENCHMARK_ID = "segmentBenchmarkId";
private JsonNullable segmentBenchmarkId = JsonNullable.undefined();
public static final String JSON_PROPERTY_SEGMENT_BENCHMARK_NAME = "segmentBenchmarkName";
private JsonNullable segmentBenchmarkName = JsonNullable.undefined();
public static final String JSON_PROPERTY_SEGMENT_BENCHMARK_CURRENCY = "segmentBenchmarkCurrency";
private JsonNullable segmentBenchmarkCurrency = JsonNullable.undefined();
public static final String JSON_PROPERTY_SEGMENT_BENCHMARK_RETURN_TYPE = "segmentBenchmarkReturnType";
private JsonNullable segmentBenchmarkReturnType = JsonNullable.undefined();
public static final String JSON_PROPERTY_REQUEST_ID = "requestId";
private String requestId;
public BenchmarkDetails() {
}
public BenchmarkDetails fsymId(String fsymId) {
this.fsymId = JsonNullable.of(fsymId);
return this;
}
/**
* FactSet Security Identifier. Six alpha-numeric characters, excluding vowels, with a -S suffix (XXXXXX-S), resolved from the requestId of the Fund requested.
* @return fsymId
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "FNK7XP-S", value = "FactSet Security Identifier. Six alpha-numeric characters, excluding vowels, with a -S suffix (XXXXXX-S), resolved from the requestId of the Fund requested.")
@JsonIgnore
public String getFsymId() {
return fsymId.orElse(null);
}
@JsonProperty(JSON_PROPERTY_FSYM_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getFsymId_JsonNullable() {
return fsymId;
}
@JsonProperty(JSON_PROPERTY_FSYM_ID)
public void setFsymId_JsonNullable(JsonNullable fsymId) {
this.fsymId = fsymId;
}
public void setFsymId(String fsymId) {
this.fsymId = JsonNullable.of(fsymId);
}
public BenchmarkDetails benchmarkId(String benchmarkId) {
this.benchmarkId = JsonNullable.of(benchmarkId);
return this;
}
/**
* The Fund's primary Benchmark Identifier.
* @return benchmarkId
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "R.1000", value = "The Fund's primary Benchmark Identifier.")
@JsonIgnore
public String getBenchmarkId() {
return benchmarkId.orElse(null);
}
@JsonProperty(JSON_PROPERTY_BENCHMARK_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getBenchmarkId_JsonNullable() {
return benchmarkId;
}
@JsonProperty(JSON_PROPERTY_BENCHMARK_ID)
public void setBenchmarkId_JsonNullable(JsonNullable benchmarkId) {
this.benchmarkId = benchmarkId;
}
public void setBenchmarkId(String benchmarkId) {
this.benchmarkId = JsonNullable.of(benchmarkId);
}
public BenchmarkDetails benchmarkName(String benchmarkName) {
this.benchmarkName = JsonNullable.of(benchmarkName);
return this;
}
/**
* The proper name of the Benchmark Id.
* @return benchmarkName
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "Russell 1000 Index", value = "The proper name of the Benchmark Id.")
@JsonIgnore
public String getBenchmarkName() {
return benchmarkName.orElse(null);
}
@JsonProperty(JSON_PROPERTY_BENCHMARK_NAME)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getBenchmarkName_JsonNullable() {
return benchmarkName;
}
@JsonProperty(JSON_PROPERTY_BENCHMARK_NAME)
public void setBenchmarkName_JsonNullable(JsonNullable benchmarkName) {
this.benchmarkName = benchmarkName;
}
public void setBenchmarkName(String benchmarkName) {
this.benchmarkName = JsonNullable.of(benchmarkName);
}
public BenchmarkDetails multipleBenchmarkFlag(String multipleBenchmarkFlag) {
this.multipleBenchmarkFlag = JsonNullable.of(multipleBenchmarkFlag);
return this;
}
/**
* Indicates if the Fund has a composite benchmark.
* @return multipleBenchmarkFlag
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "Non-Composite", value = "Indicates if the Fund has a composite benchmark.")
@JsonIgnore
public String getMultipleBenchmarkFlag() {
return multipleBenchmarkFlag.orElse(null);
}
@JsonProperty(JSON_PROPERTY_MULTIPLE_BENCHMARK_FLAG)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getMultipleBenchmarkFlag_JsonNullable() {
return multipleBenchmarkFlag;
}
@JsonProperty(JSON_PROPERTY_MULTIPLE_BENCHMARK_FLAG)
public void setMultipleBenchmarkFlag_JsonNullable(JsonNullable multipleBenchmarkFlag) {
this.multipleBenchmarkFlag = multipleBenchmarkFlag;
}
public void setMultipleBenchmarkFlag(String multipleBenchmarkFlag) {
this.multipleBenchmarkFlag = JsonNullable.of(multipleBenchmarkFlag);
}
public BenchmarkDetails benchmarkChangeDate(LocalDate benchmarkChangeDate) {
this.benchmarkChangeDate = JsonNullable.of(benchmarkChangeDate);
return this;
}
/**
* The date in which the benchmark changed for the requested fund in YYYY-MM-DD. If no benchmark changes occurred, the response value will be null.
* @return benchmarkChangeDate
**/
@jakarta.annotation.Nullable
@ApiModelProperty(value = "The date in which the benchmark changed for the requested fund in YYYY-MM-DD. If no benchmark changes occurred, the response value will be null.")
@JsonIgnore
public LocalDate getBenchmarkChangeDate() {
return benchmarkChangeDate.orElse(null);
}
@JsonProperty(JSON_PROPERTY_BENCHMARK_CHANGE_DATE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getBenchmarkChangeDate_JsonNullable() {
return benchmarkChangeDate;
}
@JsonProperty(JSON_PROPERTY_BENCHMARK_CHANGE_DATE)
public void setBenchmarkChangeDate_JsonNullable(JsonNullable benchmarkChangeDate) {
this.benchmarkChangeDate = benchmarkChangeDate;
}
public void setBenchmarkChangeDate(LocalDate benchmarkChangeDate) {
this.benchmarkChangeDate = JsonNullable.of(benchmarkChangeDate);
}
public BenchmarkDetails segment(String segment) {
this.segment = JsonNullable.of(segment);
return this;
}
/**
* The segment of the respective segment benchmark id.
* @return segment
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "Equity: U.S. - Total Market Value", value = "The segment of the respective segment benchmark id.")
@JsonIgnore
public String getSegment() {
return segment.orElse(null);
}
@JsonProperty(JSON_PROPERTY_SEGMENT)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getSegment_JsonNullable() {
return segment;
}
@JsonProperty(JSON_PROPERTY_SEGMENT)
public void setSegment_JsonNullable(JsonNullable segment) {
this.segment = segment;
}
public void setSegment(String segment) {
this.segment = JsonNullable.of(segment);
}
public BenchmarkDetails segmentBenchmarkId(String segmentBenchmarkId) {
this.segmentBenchmarkId = JsonNullable.of(segmentBenchmarkId);
return this;
}
/**
* Segment Benchmark Identifier. Funds in the same segment match on all seven levels of FactSet's fund classification system.
* @return segmentBenchmarkId
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "MS664292", value = "Segment Benchmark Identifier. Funds in the same segment match on all seven levels of FactSet's fund classification system.")
@JsonIgnore
public String getSegmentBenchmarkId() {
return segmentBenchmarkId.orElse(null);
}
@JsonProperty(JSON_PROPERTY_SEGMENT_BENCHMARK_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getSegmentBenchmarkId_JsonNullable() {
return segmentBenchmarkId;
}
@JsonProperty(JSON_PROPERTY_SEGMENT_BENCHMARK_ID)
public void setSegmentBenchmarkId_JsonNullable(JsonNullable segmentBenchmarkId) {
this.segmentBenchmarkId = segmentBenchmarkId;
}
public void setSegmentBenchmarkId(String segmentBenchmarkId) {
this.segmentBenchmarkId = JsonNullable.of(segmentBenchmarkId);
}
public BenchmarkDetails segmentBenchmarkName(String segmentBenchmarkName) {
this.segmentBenchmarkName = JsonNullable.of(segmentBenchmarkName);
return this;
}
/**
* The segment benchmark's name in proper format. Funds in the same segment match on all seven levels of FactSet's fund classification system.
* @return segmentBenchmarkName
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "MSCI USA IMI Value Index", value = "The segment benchmark's name in proper format. Funds in the same segment match on all seven levels of FactSet's fund classification system.")
@JsonIgnore
public String getSegmentBenchmarkName() {
return segmentBenchmarkName.orElse(null);
}
@JsonProperty(JSON_PROPERTY_SEGMENT_BENCHMARK_NAME)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getSegmentBenchmarkName_JsonNullable() {
return segmentBenchmarkName;
}
@JsonProperty(JSON_PROPERTY_SEGMENT_BENCHMARK_NAME)
public void setSegmentBenchmarkName_JsonNullable(JsonNullable segmentBenchmarkName) {
this.segmentBenchmarkName = segmentBenchmarkName;
}
public void setSegmentBenchmarkName(String segmentBenchmarkName) {
this.segmentBenchmarkName = JsonNullable.of(segmentBenchmarkName);
}
public BenchmarkDetails segmentBenchmarkCurrency(String segmentBenchmarkCurrency) {
this.segmentBenchmarkCurrency = JsonNullable.of(segmentBenchmarkCurrency);
return this;
}
/**
* The Segment Benchmark's currency in ISO3. Funds in the same segment match on all seven levels of FactSet's fund classification system.
* @return segmentBenchmarkCurrency
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "USD", value = "The Segment Benchmark's currency in ISO3. Funds in the same segment match on all seven levels of FactSet's fund classification system.")
@JsonIgnore
public String getSegmentBenchmarkCurrency() {
return segmentBenchmarkCurrency.orElse(null);
}
@JsonProperty(JSON_PROPERTY_SEGMENT_BENCHMARK_CURRENCY)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getSegmentBenchmarkCurrency_JsonNullable() {
return segmentBenchmarkCurrency;
}
@JsonProperty(JSON_PROPERTY_SEGMENT_BENCHMARK_CURRENCY)
public void setSegmentBenchmarkCurrency_JsonNullable(JsonNullable segmentBenchmarkCurrency) {
this.segmentBenchmarkCurrency = segmentBenchmarkCurrency;
}
public void setSegmentBenchmarkCurrency(String segmentBenchmarkCurrency) {
this.segmentBenchmarkCurrency = JsonNullable.of(segmentBenchmarkCurrency);
}
public BenchmarkDetails segmentBenchmarkReturnType(String segmentBenchmarkReturnType) {
this.segmentBenchmarkReturnType = JsonNullable.of(segmentBenchmarkReturnType);
return this;
}
/**
* The Segment benchmarks return type. Funds in the same segment match on all seven levels of FactSet's fund classification system.
* @return segmentBenchmarkReturnType
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "GROSS_RETURN", value = "The Segment benchmarks return type. Funds in the same segment match on all seven levels of FactSet's fund classification system.")
@JsonIgnore
public String getSegmentBenchmarkReturnType() {
return segmentBenchmarkReturnType.orElse(null);
}
@JsonProperty(JSON_PROPERTY_SEGMENT_BENCHMARK_RETURN_TYPE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getSegmentBenchmarkReturnType_JsonNullable() {
return segmentBenchmarkReturnType;
}
@JsonProperty(JSON_PROPERTY_SEGMENT_BENCHMARK_RETURN_TYPE)
public void setSegmentBenchmarkReturnType_JsonNullable(JsonNullable segmentBenchmarkReturnType) {
this.segmentBenchmarkReturnType = segmentBenchmarkReturnType;
}
public void setSegmentBenchmarkReturnType(String segmentBenchmarkReturnType) {
this.segmentBenchmarkReturnType = JsonNullable.of(segmentBenchmarkReturnType);
}
public BenchmarkDetails requestId(String requestId) {
this.requestId = requestId;
return this;
}
/**
* The requested Id sent as input.
* @return requestId
**/
@jakarta.annotation.Nullable
@ApiModelProperty(example = "MABAX", value = "The requested Id sent as input.")
@JsonProperty(JSON_PROPERTY_REQUEST_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public String getRequestId() {
return requestId;
}
@JsonProperty(JSON_PROPERTY_REQUEST_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public void setRequestId(String requestId) {
this.requestId = requestId;
}
/**
* Return true if this benchmarkDetails object is equal to o.
*/
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
BenchmarkDetails benchmarkDetails = (BenchmarkDetails) o;
return equalsNullable(this.fsymId, benchmarkDetails.fsymId) &&
equalsNullable(this.benchmarkId, benchmarkDetails.benchmarkId) &&
equalsNullable(this.benchmarkName, benchmarkDetails.benchmarkName) &&
equalsNullable(this.multipleBenchmarkFlag, benchmarkDetails.multipleBenchmarkFlag) &&
equalsNullable(this.benchmarkChangeDate, benchmarkDetails.benchmarkChangeDate) &&
equalsNullable(this.segment, benchmarkDetails.segment) &&
equalsNullable(this.segmentBenchmarkId, benchmarkDetails.segmentBenchmarkId) &&
equalsNullable(this.segmentBenchmarkName, benchmarkDetails.segmentBenchmarkName) &&
equalsNullable(this.segmentBenchmarkCurrency, benchmarkDetails.segmentBenchmarkCurrency) &&
equalsNullable(this.segmentBenchmarkReturnType, benchmarkDetails.segmentBenchmarkReturnType) &&
Objects.equals(this.requestId, benchmarkDetails.requestId);
}
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(fsymId), hashCodeNullable(benchmarkId), hashCodeNullable(benchmarkName), hashCodeNullable(multipleBenchmarkFlag), hashCodeNullable(benchmarkChangeDate), hashCodeNullable(segment), hashCodeNullable(segmentBenchmarkId), hashCodeNullable(segmentBenchmarkName), hashCodeNullable(segmentBenchmarkCurrency), hashCodeNullable(segmentBenchmarkReturnType), requestId);
}
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 BenchmarkDetails {\n");
sb.append(" fsymId: ").append(toIndentedString(fsymId)).append("\n");
sb.append(" benchmarkId: ").append(toIndentedString(benchmarkId)).append("\n");
sb.append(" benchmarkName: ").append(toIndentedString(benchmarkName)).append("\n");
sb.append(" multipleBenchmarkFlag: ").append(toIndentedString(multipleBenchmarkFlag)).append("\n");
sb.append(" benchmarkChangeDate: ").append(toIndentedString(benchmarkChangeDate)).append("\n");
sb.append(" segment: ").append(toIndentedString(segment)).append("\n");
sb.append(" segmentBenchmarkId: ").append(toIndentedString(segmentBenchmarkId)).append("\n");
sb.append(" segmentBenchmarkName: ").append(toIndentedString(segmentBenchmarkName)).append("\n");
sb.append(" segmentBenchmarkCurrency: ").append(toIndentedString(segmentBenchmarkCurrency)).append("\n");
sb.append(" segmentBenchmarkReturnType: ").append(toIndentedString(segmentBenchmarkReturnType)).append("\n");
sb.append(" requestId: ").append(toIndentedString(requestId)).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 ");
}
}