All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.seeq.model.FormulaItemInputV1 Maven / Gradle / Ivy

There is a newer version: 66.0.0-v202407310200
Show newest version
/*
 * Seeq REST API
 * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
 *
 * OpenAPI spec version: 64.3.0-v202405012032
 * 
 *
 * NOTE: This class is auto generated by the swagger code generator program.
 * https://github.com/swagger-api/swagger-codegen.git
 * Do not edit the class manually.
 */

package com.seeq.model;

import java.util.Objects;
import java.util.Arrays;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import com.seeq.model.FormulaDependencyInputV1;
import com.seeq.model.FormulaParameterInputV1;
import com.seeq.model.ScalarPropertyV1;
import io.swagger.v3.oas.annotations.media.Schema;
import java.util.ArrayList;
import java.util.List;
/**
 * List of children associated with an asset for the asset group editor
 */
@Schema(description = "List of children associated with an asset for the asset group editor")
public class FormulaItemInputV1 {
  @JsonProperty("additionalProperties")
  private List additionalProperties = new ArrayList();

  @JsonProperty("dataId")
  private String dataId = null;

  @JsonProperty("datasourceClass")
  private String datasourceClass = null;

  @JsonProperty("datasourceId")
  private String datasourceId = null;

  @JsonProperty("dependencies")
  private List dependencies = new ArrayList();

  @JsonProperty("description")
  private String description = null;

  @JsonProperty("formula")
  private String formula = null;

  @JsonProperty("hostId")
  private String hostId = null;

  @JsonProperty("id")
  private String id = null;

  @JsonProperty("name")
  private String name = null;

  @JsonProperty("packageName")
  private String packageName = null;

  @JsonProperty("parameters")
  private List parameters = new ArrayList();

  @JsonProperty("scopedTo")
  private String scopedTo = null;

  @JsonProperty("securityString")
  private String securityString = null;

  @JsonProperty("sourceSecurityString")
  private String sourceSecurityString = null;

  @JsonProperty("syncToken")
  private String syncToken = null;

  @JsonProperty("type")
  private String type = null;

  public FormulaItemInputV1 additionalProperties(List additionalProperties) {
    this.additionalProperties = additionalProperties;
    return this;
  }

  public FormulaItemInputV1 addAdditionalPropertiesItem(ScalarPropertyV1 additionalPropertiesItem) {
    if (this.additionalProperties == null) {
      this.additionalProperties = new ArrayList();
    }
    this.additionalProperties.add(additionalPropertiesItem);
    return this;
  }

   /**
   * Additional properties to set on this item. A property consists of a name, a value, and a unit of measure.
   * @return additionalProperties
  **/
  @Schema(description = "Additional properties to set on this item. A property consists of a name, a value, and a unit of measure.")
  public List getAdditionalProperties() {
    return additionalProperties;
  }

  public void setAdditionalProperties(List additionalProperties) {
    this.additionalProperties = additionalProperties;
  }

  public FormulaItemInputV1 dataId(String dataId) {
    this.dataId = dataId;
    return this;
  }

   /**
   * The data ID of this item. Note: This is not the Seeq ID, but the unique identifier that the remote datasource uses.
   * @return dataId
  **/
  @Schema(description = "The data ID of this item. Note: This is not the Seeq ID, but the unique identifier that the remote datasource uses.")
  public String getDataId() {
    return dataId;
  }

  public void setDataId(String dataId) {
    this.dataId = dataId;
  }

  public FormulaItemInputV1 datasourceClass(String datasourceClass) {
    this.datasourceClass = datasourceClass;
    return this;
  }

   /**
   * Along with the Datasource ID, the Datasource Class uniquely identifies a datasource. For example, a datasource may be a particular instance of an OSIsoft PI historian.
   * @return datasourceClass
  **/
  @Schema(description = "Along with the Datasource ID, the Datasource Class uniquely identifies a datasource. For example, a datasource may be a particular instance of an OSIsoft PI historian.")
  public String getDatasourceClass() {
    return datasourceClass;
  }

  public void setDatasourceClass(String datasourceClass) {
    this.datasourceClass = datasourceClass;
  }

  public FormulaItemInputV1 datasourceId(String datasourceId) {
    this.datasourceId = datasourceId;
    return this;
  }

   /**
   * Along with the Datasource Class, the Datasource ID uniquely identifies a datasource. For example, a datasource may be a particular instance of an OSIsoft PI historian.
   * @return datasourceId
  **/
  @Schema(description = "Along with the Datasource Class, the Datasource ID uniquely identifies a datasource. For example, a datasource may be a particular instance of an OSIsoft PI historian.")
  public String getDatasourceId() {
    return datasourceId;
  }

  public void setDatasourceId(String datasourceId) {
    this.datasourceId = datasourceId;
  }

  public FormulaItemInputV1 dependencies(List dependencies) {
    this.dependencies = dependencies;
    return this;
  }

  public FormulaItemInputV1 addDependenciesItem(FormulaDependencyInputV1 dependenciesItem) {
    if (this.dependencies == null) {
      this.dependencies = new ArrayList();
    }
    this.dependencies.add(dependenciesItem);
    return this;
  }

   /**
   * List of items the formula is dependent on
   * @return dependencies
  **/
  @Schema(description = "List of items the formula is dependent on")
  public List getDependencies() {
    return dependencies;
  }

  public void setDependencies(List dependencies) {
    this.dependencies = dependencies;
  }

  public FormulaItemInputV1 description(String description) {
    this.description = description;
    return this;
  }

   /**
   * Clarifying information or other plain language description of this item. An input of just whitespace is equivalent to a null input.
   * @return description
  **/
  @Schema(description = "Clarifying information or other plain language description of this item. An input of just whitespace is equivalent to a null input.")
  public String getDescription() {
    return description;
  }

  public void setDescription(String description) {
    this.description = description;
  }

  public FormulaItemInputV1 formula(String formula) {
    this.formula = formula;
    return this;
  }

   /**
   * The formula that represents the body of the function
   * @return formula
  **/
  @Schema(required = true, description = "The formula that represents the body of the function")
  public String getFormula() {
    return formula;
  }

  public void setFormula(String formula) {
    this.formula = formula;
  }

  public FormulaItemInputV1 hostId(String hostId) {
    this.hostId = hostId;
    return this;
  }

   /**
   * The ID of the datasource hosting this item. Note that this is a Seeq-generated ID, not the way that the datasource identifies itself.
   * @return hostId
  **/
  @Schema(description = "The ID of the datasource hosting this item. Note that this is a Seeq-generated ID, not the way that the datasource identifies itself.")
  public String getHostId() {
    return hostId;
  }

  public void setHostId(String hostId) {
    this.hostId = hostId;
  }

  public FormulaItemInputV1 id(String id) {
    this.id = id;
    return this;
  }

   /**
   * The Seeq id of the formula item
   * @return id
  **/
  @Schema(description = "The Seeq id of the formula item")
  public String getId() {
    return id;
  }

  public void setId(String id) {
    this.id = id;
  }

  public FormulaItemInputV1 name(String name) {
    this.name = name;
    return this;
  }

   /**
   * Human readable name. Null or whitespace names are not permitted.
   * @return name
  **/
  @Schema(required = true, description = "Human readable name. Null or whitespace names are not permitted.")
  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public FormulaItemInputV1 packageName(String packageName) {
    this.packageName = packageName;
    return this;
  }

   /**
   * The name of the package that contains this function. Valid only for UserDefinedFormulaFunctions.
   * @return packageName
  **/
  @Schema(description = "The name of the package that contains this function. Valid only for UserDefinedFormulaFunctions.")
  public String getPackageName() {
    return packageName;
  }

  public void setPackageName(String packageName) {
    this.packageName = packageName;
  }

  public FormulaItemInputV1 parameters(List parameters) {
    this.parameters = parameters;
    return this;
  }

  public FormulaItemInputV1 addParametersItem(FormulaParameterInputV1 parametersItem) {
    if (this.parameters == null) {
      this.parameters = new ArrayList();
    }
    this.parameters.add(parametersItem);
    return this;
  }

   /**
   * Any parameters that should be placed in the context of the executing formula. At least one unbound parameter is required.
   * @return parameters
  **/
  @Schema(description = "Any parameters that should be placed in the context of the executing formula. At least one unbound parameter is required.")
  public List getParameters() {
    return parameters;
  }

  public void setParameters(List parameters) {
    this.parameters = parameters;
  }

  public FormulaItemInputV1 scopedTo(String scopedTo) {
    this.scopedTo = scopedTo;
    return this;
  }

   /**
   * The ID of the workbook to which this item will be scoped.
   * @return scopedTo
  **/
  @Schema(description = "The ID of the workbook to which this item will be scoped.")
  public String getScopedTo() {
    return scopedTo;
  }

  public void setScopedTo(String scopedTo) {
    this.scopedTo = scopedTo;
  }

  public FormulaItemInputV1 securityString(String securityString) {
    this.securityString = securityString;
    return this;
  }

   /**
   * Security string containing all identities and their permissions for the item. If set, permissions can only be managed by the connector and not in Seeq.
   * @return securityString
  **/
  @Schema(description = "Security string containing all identities and their permissions for the item. If set, permissions can only be managed by the connector and not in Seeq.")
  public String getSecurityString() {
    return securityString;
  }

  public void setSecurityString(String securityString) {
    this.securityString = securityString;
  }

  public FormulaItemInputV1 sourceSecurityString(String sourceSecurityString) {
    this.sourceSecurityString = sourceSecurityString;
    return this;
  }

   /**
   * The security string as it was originally found on the source (for debugging ACLs only)
   * @return sourceSecurityString
  **/
  @Schema(description = "The security string as it was originally found on the source (for debugging ACLs only)")
  public String getSourceSecurityString() {
    return sourceSecurityString;
  }

  public void setSourceSecurityString(String sourceSecurityString) {
    this.sourceSecurityString = sourceSecurityString;
  }

  public FormulaItemInputV1 syncToken(String syncToken) {
    this.syncToken = syncToken;
    return this;
  }

   /**
   * An arbitrary token (often a date or random ID) that is used during metadata syncs. At the end of a full sync, items with mismatching sync tokens are identified as stale and may be archived using the Datasources clean-up API.
   * @return syncToken
  **/
  @Schema(description = "An arbitrary token (often a date or random ID) that is used during metadata syncs. At the end of a full sync, items with mismatching sync tokens are identified as stale and may be archived using the Datasources clean-up API.")
  public String getSyncToken() {
    return syncToken;
  }

  public void setSyncToken(String syncToken) {
    this.syncToken = syncToken;
  }

  public FormulaItemInputV1 type(String type) {
    this.type = type;
    return this;
  }

   /**
   * The item subtype for a Formula Function. Valid types include 'AggregatingFormulaFunction', 'UserDefinedFormulaFunction', and 'Chart'
   * @return type
  **/
  @Schema(description = "The item subtype for a Formula Function. Valid types include 'AggregatingFormulaFunction', 'UserDefinedFormulaFunction', and 'Chart'")
  public String getType() {
    return type;
  }

  public void setType(String type) {
    this.type = type;
  }


  @Override
  public boolean equals(java.lang.Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    FormulaItemInputV1 formulaItemInputV1 = (FormulaItemInputV1) o;
    return Objects.equals(this.additionalProperties, formulaItemInputV1.additionalProperties) &&
        Objects.equals(this.dataId, formulaItemInputV1.dataId) &&
        Objects.equals(this.datasourceClass, formulaItemInputV1.datasourceClass) &&
        Objects.equals(this.datasourceId, formulaItemInputV1.datasourceId) &&
        Objects.equals(this.dependencies, formulaItemInputV1.dependencies) &&
        Objects.equals(this.description, formulaItemInputV1.description) &&
        Objects.equals(this.formula, formulaItemInputV1.formula) &&
        Objects.equals(this.hostId, formulaItemInputV1.hostId) &&
        Objects.equals(this.id, formulaItemInputV1.id) &&
        Objects.equals(this.name, formulaItemInputV1.name) &&
        Objects.equals(this.packageName, formulaItemInputV1.packageName) &&
        Objects.equals(this.parameters, formulaItemInputV1.parameters) &&
        Objects.equals(this.scopedTo, formulaItemInputV1.scopedTo) &&
        Objects.equals(this.securityString, formulaItemInputV1.securityString) &&
        Objects.equals(this.sourceSecurityString, formulaItemInputV1.sourceSecurityString) &&
        Objects.equals(this.syncToken, formulaItemInputV1.syncToken) &&
        Objects.equals(this.type, formulaItemInputV1.type);
  }

  @Override
  public int hashCode() {
    return Objects.hash(additionalProperties, dataId, datasourceClass, datasourceId, dependencies, description, formula, hostId, id, name, packageName, parameters, scopedTo, securityString, sourceSecurityString, syncToken, type);
  }


  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class FormulaItemInputV1 {\n");
    
    sb.append("    additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n");
    sb.append("    dataId: ").append(toIndentedString(dataId)).append("\n");
    sb.append("    datasourceClass: ").append(toIndentedString(datasourceClass)).append("\n");
    sb.append("    datasourceId: ").append(toIndentedString(datasourceId)).append("\n");
    sb.append("    dependencies: ").append(toIndentedString(dependencies)).append("\n");
    sb.append("    description: ").append(toIndentedString(description)).append("\n");
    sb.append("    formula: ").append(toIndentedString(formula)).append("\n");
    sb.append("    hostId: ").append(toIndentedString(hostId)).append("\n");
    sb.append("    id: ").append(toIndentedString(id)).append("\n");
    sb.append("    name: ").append(toIndentedString(name)).append("\n");
    sb.append("    packageName: ").append(toIndentedString(packageName)).append("\n");
    sb.append("    parameters: ").append(toIndentedString(parameters)).append("\n");
    sb.append("    scopedTo: ").append(toIndentedString(scopedTo)).append("\n");
    sb.append("    securityString: ").append(toIndentedString(securityString)).append("\n");
    sb.append("    sourceSecurityString: ").append(toIndentedString(sourceSecurityString)).append("\n");
    sb.append("    syncToken: ").append(toIndentedString(syncToken)).append("\n");
    sb.append("    type: ").append(toIndentedString(type)).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(java.lang.Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }
  
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy