com.clinia.model.datacatalog.V1DataSourcePartitionCollectionConnection Maven / Gradle / Ivy
// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost
// - read more on https://github.com/clinia/api-clients-generation. DO NOT EDIT.
package com.clinia.model.datacatalog;
import com.fasterxml.jackson.annotation.*;
import com.fasterxml.jackson.databind.annotation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
/** V1DataSourcePartitionCollectionConnection */
public class V1DataSourcePartitionCollectionConnection {
@JsonProperty("key")
private String key;
@JsonProperty("traversedProperties")
private List traversedProperties;
public V1DataSourcePartitionCollectionConnection setKey(String key) {
this.key = key;
return this;
}
/** The key of the data source collection (analogous to its profile key). */
@javax.annotation.Nonnull
public String getKey() {
return key;
}
public V1DataSourcePartitionCollectionConnection setTraversedProperties(List traversedProperties) {
this.traversedProperties = traversedProperties;
return this;
}
public V1DataSourcePartitionCollectionConnection addTraversedProperties(String traversedPropertiesItem) {
if (this.traversedProperties == null) {
this.traversedProperties = new ArrayList<>();
}
this.traversedProperties.add(traversedPropertiesItem);
return this;
}
/**
* The properties from the relationships or adjacent records that can be queried in the data
* partition with one of the following formats: - `@{includeKey}.{propertyKey}` (e.g.
* `@worksAt.startDate`). This allows to query on the property 'startDate' of the relationship
* 'worksAt'. - `@{includeKey}.@{resourcetype}.{propertyKey}` (e.g. `@[email protected]`). This
* allows to query on the property 'name' of the resource 'clinic' that is related to the record
* with the relationship 'worksAt'. - `@{includeKey}.@{resourcetype}.{containedKey}.{propertyKey}`
* (e.g. `@[email protected]`). This allows to query on the property 'address' of
* the contained resource 'location' of the resource 'clinic' that is related to the record with
* the relationship 'worksAt' Traversed Properties support only primitive and general-purpose
* complex Clinia Datatypes, nested properties of a custom datatype can be queried using the dot
* notation.
*/
@javax.annotation.Nullable
public List getTraversedProperties() {
return traversedProperties;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
V1DataSourcePartitionCollectionConnection v1DataSourcePartitionCollectionConnection = (V1DataSourcePartitionCollectionConnection) o;
return (
Objects.equals(this.key, v1DataSourcePartitionCollectionConnection.key) &&
Objects.equals(this.traversedProperties, v1DataSourcePartitionCollectionConnection.traversedProperties)
);
}
@Override
public int hashCode() {
return Objects.hash(key, traversedProperties);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class V1DataSourcePartitionCollectionConnection {\n");
sb.append(" key: ").append(toIndentedString(key)).append("\n");
sb.append(" traversedProperties: ").append(toIndentedString(traversedProperties)).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 ");
}
}