com.factset.sdk.FactSetRBICS.models.Structure Maven / Gradle / Ivy
/*
* FactSet RIBCS
* FactSet Revere Business Industry Classification System (RBICS) is a comprehensive structured taxonomy to classify companies by what they primarily do. It delivers a granular view for investors by classifying companies using a bottom-up approach according to the products and services they provide. By combining this approach with a top-level grouping based on companies' behavior similarities and stock co-movement, FactSet RBICS delivers unprecedented precision for 1,400+ sector groups. RBICS Focus is a six level classification which highlights the companys main business. It is based on the company business line/s that stand for majority of a the revenue that the company generates. Updated monthly. For more details, visit [Online Assitant Page #20710](https://oa.apps.factset.com/pages/20710).
*
* 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.FactSetRBICS.models;
import java.util.Map;
import java.util.HashMap;
import com.fasterxml.jackson.annotation.JsonAnyGetter;
import com.fasterxml.jackson.annotation.JsonAnySetter;
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.FactSetRBICS.JSON;
/**
* Structure
*/
@JsonPropertyOrder({
Structure.JSON_PROPERTY_RBICS_ID,
Structure.JSON_PROPERTY_FIRST_DATE,
Structure.JSON_PROPERTY_LAST_DATE
})
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class Structure implements Serializable {
private static final long serialVersionUID = 1L;
public static final String JSON_PROPERTY_RBICS_ID = "rbicsId";
private JsonNullable rbicsId = JsonNullable.undefined();
public static final String JSON_PROPERTY_FIRST_DATE = "firstDate";
private JsonNullable firstDate = JsonNullable.undefined();
public static final String JSON_PROPERTY_LAST_DATE = "lastDate";
private JsonNullable lastDate = JsonNullable.undefined();
public Structure() {
}
public Structure rbicsId(String rbicsId) {
this.rbicsId = JsonNullable.of(rbicsId);
return this;
}
/**
* RBICS Code for the classification.
* @return rbicsId
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "101010101010", value = "RBICS Code for the classification.")
@JsonIgnore
public String getRbicsId() {
return rbicsId.orElse(null);
}
@JsonProperty(JSON_PROPERTY_RBICS_ID)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getRbicsId_JsonNullable() {
return rbicsId;
}
@JsonProperty(JSON_PROPERTY_RBICS_ID)
public void setRbicsId_JsonNullable(JsonNullable rbicsId) {
this.rbicsId = rbicsId;
}
public void setRbicsId(String rbicsId) {
this.rbicsId = JsonNullable.of(rbicsId);
}
public Structure firstDate(String firstDate) {
this.firstDate = JsonNullable.of(firstDate);
return this;
}
/**
* First date of the classification.
* @return firstDate
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "1945-01-01T00:00:00.000", value = "First date of the classification.")
@JsonIgnore
public String getFirstDate() {
return firstDate.orElse(null);
}
@JsonProperty(JSON_PROPERTY_FIRST_DATE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getFirstDate_JsonNullable() {
return firstDate;
}
@JsonProperty(JSON_PROPERTY_FIRST_DATE)
public void setFirstDate_JsonNullable(JsonNullable firstDate) {
this.firstDate = firstDate;
}
public void setFirstDate(String firstDate) {
this.firstDate = JsonNullable.of(firstDate);
}
public Structure lastDate(String lastDate) {
this.lastDate = JsonNullable.of(lastDate);
return this;
}
/**
* Date when the classification became no longer valid. If `null`, the classification is still valid.
* @return lastDate
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "Date when the classification became no longer valid. If `null`, the classification is still valid.")
@JsonIgnore
public String getLastDate() {
return lastDate.orElse(null);
}
@JsonProperty(JSON_PROPERTY_LAST_DATE)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
public JsonNullable getLastDate_JsonNullable() {
return lastDate;
}
@JsonProperty(JSON_PROPERTY_LAST_DATE)
public void setLastDate_JsonNullable(JsonNullable lastDate) {
this.lastDate = lastDate;
}
public void setLastDate(String lastDate) {
this.lastDate = JsonNullable.of(lastDate);
}
/**
* A container for additional, undeclared properties.
* This is a holder for any undeclared properties as specified with
* the 'additionalProperties' keyword in the OAS document.
*/
private Map additionalProperties;
/**
* Set the additional (undeclared) property with the specified name and value.
* If the property does not already exist, create it otherwise replace it.
*/
@JsonAnySetter
public Structure putAdditionalProperty(String key, Object value) {
if (this.additionalProperties == null) {
this.additionalProperties = new HashMap();
}
this.additionalProperties.put(key, value);
return this;
}
/**
* Return the additional (undeclared) property.
*/
@JsonAnyGetter
public Map getAdditionalProperties() {
return additionalProperties;
}
/**
* Return the additional (undeclared) property with the specified name.
*/
public Object getAdditionalProperty(String key) {
if (this.additionalProperties == null) {
return null;
}
return this.additionalProperties.get(key);
}
/**
* Return true if this structure object is equal to o.
*/
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
Structure structure = (Structure) o;
return equalsNullable(this.rbicsId, structure.rbicsId) &&
equalsNullable(this.firstDate, structure.firstDate) &&
equalsNullable(this.lastDate, structure.lastDate)&&
Objects.equals(this.additionalProperties, structure.additionalProperties);
}
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(rbicsId), hashCodeNullable(firstDate), hashCodeNullable(lastDate), additionalProperties);
}
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 Structure {\n");
sb.append(" rbicsId: ").append(toIndentedString(rbicsId)).append("\n");
sb.append(" firstDate: ").append(toIndentedString(firstDate)).append("\n");
sb.append(" lastDate: ").append(toIndentedString(lastDate)).append("\n");
sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).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 ");
}
}