
com.pulumi.azurenative.customerinsights.outputs.PropertyDefinitionResponse Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.azurenative.customerinsights.outputs;
import com.pulumi.azurenative.customerinsights.outputs.DataSourcePrecedenceResponse;
import com.pulumi.azurenative.customerinsights.outputs.ProfileEnumValidValuesFormatResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class PropertyDefinitionResponse {
/**
* @return Array value separator for properties with isArray set.
*
*/
private @Nullable String arrayValueSeparator;
/**
* @return This is specific to interactions modeled as activities. Data sources are used to determine where data is stored and also in precedence rules.
*
*/
private List dataSourcePrecedenceRules;
/**
* @return Describes valid values for an enum property.
*
*/
private @Nullable List enumValidValues;
/**
* @return Name of the property.
*
*/
private String fieldName;
/**
* @return Type of the property.
*
*/
private String fieldType;
/**
* @return Indicates if the property is actually an array of the fieldType above on the data api.
*
*/
private @Nullable Boolean isArray;
/**
* @return Whether property is available in graph or not.
*
*/
private @Nullable Boolean isAvailableInGraph;
/**
* @return Indicates if the property is an enum.
*
*/
private @Nullable Boolean isEnum;
/**
* @return Indicates if the property is an flag enum.
*
*/
private @Nullable Boolean isFlagEnum;
/**
* @return Whether the property is an Image.
*
*/
private @Nullable Boolean isImage;
/**
* @return Whether the property is a localized string.
*
*/
private @Nullable Boolean isLocalizedString;
/**
* @return Whether the property is a name or a part of name.
*
*/
private @Nullable Boolean isName;
/**
* @return Whether property value is required on instances, IsRequired field only for Interaction. Profile Instance will not check for required field.
*
*/
private @Nullable Boolean isRequired;
/**
* @return Max length of string. Used only if type is string.
*
*/
private @Nullable Integer maxLength;
/**
* @return The ID associated with the property.
*
*/
private @Nullable String propertyId;
/**
* @return URL encoded schema.org item prop link for the property.
*
*/
private @Nullable String schemaItemPropLink;
private PropertyDefinitionResponse() {}
/**
* @return Array value separator for properties with isArray set.
*
*/
public Optional arrayValueSeparator() {
return Optional.ofNullable(this.arrayValueSeparator);
}
/**
* @return This is specific to interactions modeled as activities. Data sources are used to determine where data is stored and also in precedence rules.
*
*/
public List dataSourcePrecedenceRules() {
return this.dataSourcePrecedenceRules;
}
/**
* @return Describes valid values for an enum property.
*
*/
public List enumValidValues() {
return this.enumValidValues == null ? List.of() : this.enumValidValues;
}
/**
* @return Name of the property.
*
*/
public String fieldName() {
return this.fieldName;
}
/**
* @return Type of the property.
*
*/
public String fieldType() {
return this.fieldType;
}
/**
* @return Indicates if the property is actually an array of the fieldType above on the data api.
*
*/
public Optional isArray() {
return Optional.ofNullable(this.isArray);
}
/**
* @return Whether property is available in graph or not.
*
*/
public Optional isAvailableInGraph() {
return Optional.ofNullable(this.isAvailableInGraph);
}
/**
* @return Indicates if the property is an enum.
*
*/
public Optional isEnum() {
return Optional.ofNullable(this.isEnum);
}
/**
* @return Indicates if the property is an flag enum.
*
*/
public Optional isFlagEnum() {
return Optional.ofNullable(this.isFlagEnum);
}
/**
* @return Whether the property is an Image.
*
*/
public Optional isImage() {
return Optional.ofNullable(this.isImage);
}
/**
* @return Whether the property is a localized string.
*
*/
public Optional isLocalizedString() {
return Optional.ofNullable(this.isLocalizedString);
}
/**
* @return Whether the property is a name or a part of name.
*
*/
public Optional isName() {
return Optional.ofNullable(this.isName);
}
/**
* @return Whether property value is required on instances, IsRequired field only for Interaction. Profile Instance will not check for required field.
*
*/
public Optional isRequired() {
return Optional.ofNullable(this.isRequired);
}
/**
* @return Max length of string. Used only if type is string.
*
*/
public Optional maxLength() {
return Optional.ofNullable(this.maxLength);
}
/**
* @return The ID associated with the property.
*
*/
public Optional propertyId() {
return Optional.ofNullable(this.propertyId);
}
/**
* @return URL encoded schema.org item prop link for the property.
*
*/
public Optional schemaItemPropLink() {
return Optional.ofNullable(this.schemaItemPropLink);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(PropertyDefinitionResponse defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable String arrayValueSeparator;
private List dataSourcePrecedenceRules;
private @Nullable List enumValidValues;
private String fieldName;
private String fieldType;
private @Nullable Boolean isArray;
private @Nullable Boolean isAvailableInGraph;
private @Nullable Boolean isEnum;
private @Nullable Boolean isFlagEnum;
private @Nullable Boolean isImage;
private @Nullable Boolean isLocalizedString;
private @Nullable Boolean isName;
private @Nullable Boolean isRequired;
private @Nullable Integer maxLength;
private @Nullable String propertyId;
private @Nullable String schemaItemPropLink;
public Builder() {}
public Builder(PropertyDefinitionResponse defaults) {
Objects.requireNonNull(defaults);
this.arrayValueSeparator = defaults.arrayValueSeparator;
this.dataSourcePrecedenceRules = defaults.dataSourcePrecedenceRules;
this.enumValidValues = defaults.enumValidValues;
this.fieldName = defaults.fieldName;
this.fieldType = defaults.fieldType;
this.isArray = defaults.isArray;
this.isAvailableInGraph = defaults.isAvailableInGraph;
this.isEnum = defaults.isEnum;
this.isFlagEnum = defaults.isFlagEnum;
this.isImage = defaults.isImage;
this.isLocalizedString = defaults.isLocalizedString;
this.isName = defaults.isName;
this.isRequired = defaults.isRequired;
this.maxLength = defaults.maxLength;
this.propertyId = defaults.propertyId;
this.schemaItemPropLink = defaults.schemaItemPropLink;
}
@CustomType.Setter
public Builder arrayValueSeparator(@Nullable String arrayValueSeparator) {
this.arrayValueSeparator = arrayValueSeparator;
return this;
}
@CustomType.Setter
public Builder dataSourcePrecedenceRules(List dataSourcePrecedenceRules) {
if (dataSourcePrecedenceRules == null) {
throw new MissingRequiredPropertyException("PropertyDefinitionResponse", "dataSourcePrecedenceRules");
}
this.dataSourcePrecedenceRules = dataSourcePrecedenceRules;
return this;
}
public Builder dataSourcePrecedenceRules(DataSourcePrecedenceResponse... dataSourcePrecedenceRules) {
return dataSourcePrecedenceRules(List.of(dataSourcePrecedenceRules));
}
@CustomType.Setter
public Builder enumValidValues(@Nullable List enumValidValues) {
this.enumValidValues = enumValidValues;
return this;
}
public Builder enumValidValues(ProfileEnumValidValuesFormatResponse... enumValidValues) {
return enumValidValues(List.of(enumValidValues));
}
@CustomType.Setter
public Builder fieldName(String fieldName) {
if (fieldName == null) {
throw new MissingRequiredPropertyException("PropertyDefinitionResponse", "fieldName");
}
this.fieldName = fieldName;
return this;
}
@CustomType.Setter
public Builder fieldType(String fieldType) {
if (fieldType == null) {
throw new MissingRequiredPropertyException("PropertyDefinitionResponse", "fieldType");
}
this.fieldType = fieldType;
return this;
}
@CustomType.Setter
public Builder isArray(@Nullable Boolean isArray) {
this.isArray = isArray;
return this;
}
@CustomType.Setter
public Builder isAvailableInGraph(@Nullable Boolean isAvailableInGraph) {
this.isAvailableInGraph = isAvailableInGraph;
return this;
}
@CustomType.Setter
public Builder isEnum(@Nullable Boolean isEnum) {
this.isEnum = isEnum;
return this;
}
@CustomType.Setter
public Builder isFlagEnum(@Nullable Boolean isFlagEnum) {
this.isFlagEnum = isFlagEnum;
return this;
}
@CustomType.Setter
public Builder isImage(@Nullable Boolean isImage) {
this.isImage = isImage;
return this;
}
@CustomType.Setter
public Builder isLocalizedString(@Nullable Boolean isLocalizedString) {
this.isLocalizedString = isLocalizedString;
return this;
}
@CustomType.Setter
public Builder isName(@Nullable Boolean isName) {
this.isName = isName;
return this;
}
@CustomType.Setter
public Builder isRequired(@Nullable Boolean isRequired) {
this.isRequired = isRequired;
return this;
}
@CustomType.Setter
public Builder maxLength(@Nullable Integer maxLength) {
this.maxLength = maxLength;
return this;
}
@CustomType.Setter
public Builder propertyId(@Nullable String propertyId) {
this.propertyId = propertyId;
return this;
}
@CustomType.Setter
public Builder schemaItemPropLink(@Nullable String schemaItemPropLink) {
this.schemaItemPropLink = schemaItemPropLink;
return this;
}
public PropertyDefinitionResponse build() {
final var _resultValue = new PropertyDefinitionResponse();
_resultValue.arrayValueSeparator = arrayValueSeparator;
_resultValue.dataSourcePrecedenceRules = dataSourcePrecedenceRules;
_resultValue.enumValidValues = enumValidValues;
_resultValue.fieldName = fieldName;
_resultValue.fieldType = fieldType;
_resultValue.isArray = isArray;
_resultValue.isAvailableInGraph = isAvailableInGraph;
_resultValue.isEnum = isEnum;
_resultValue.isFlagEnum = isFlagEnum;
_resultValue.isImage = isImage;
_resultValue.isLocalizedString = isLocalizedString;
_resultValue.isName = isName;
_resultValue.isRequired = isRequired;
_resultValue.maxLength = maxLength;
_resultValue.propertyId = propertyId;
_resultValue.schemaItemPropLink = schemaItemPropLink;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy