![JAR search and dependency download from the Maven repository](/logo.png)
com.oracle.bmc.dataintegration.model.CreateUserDefinedFunctionValidationDetails Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of oci-java-sdk-shaded-full Show documentation
Show all versions of oci-java-sdk-shaded-full Show documentation
This project contains the SDK distribution used for Oracle Cloud Infrastructure, and all the dependencies that can be shaded. It also has Maven dependencies that cannot be shaded. Therefore, use this module to depend on the shaded distribution via Maven -- it will shade everything that can be shaded, and automatically pull in the other dependencies.
/**
* Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
* This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
*/
package com.oracle.bmc.dataintegration.model;
/**
* The properties used in create UserDefinedFunction validation operations.
* Note: Objects should always be created or deserialized using the {@link Builder}. This model
* distinguishes fields that are {@code null} because they are unset from fields that are explicitly
* set to {@code null}. This is done in the setter methods of the {@link Builder}, which maintain a
* set of all explicitly set fields called {@link Builder#__explicitlySet__}. The {@link
* #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set
* fields into account. The constructor, on the other hand, does not take the explicitly set fields
* into account (since the constructor cannot distinguish explicit {@code null} from unset {@code
* null}).
*/
@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20200430")
@com.fasterxml.jackson.databind.annotation.JsonDeserialize(
builder = CreateUserDefinedFunctionValidationDetails.Builder.class)
@com.fasterxml.jackson.annotation.JsonFilter(
com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME)
public final class CreateUserDefinedFunctionValidationDetails
extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel {
@Deprecated
@java.beans.ConstructorProperties({
"key",
"modelType",
"modelVersion",
"parentRef",
"name",
"identifier",
"objectVersion",
"signatures",
"expr",
"description",
"objectStatus",
"metadata",
"keyMap"
})
public CreateUserDefinedFunctionValidationDetails(
String key,
ModelType modelType,
String modelVersion,
ParentReference parentRef,
String name,
String identifier,
Integer objectVersion,
java.util.List signatures,
Expression expr,
String description,
Integer objectStatus,
ObjectMetadata metadata,
java.util.Map keyMap) {
super();
this.key = key;
this.modelType = modelType;
this.modelVersion = modelVersion;
this.parentRef = parentRef;
this.name = name;
this.identifier = identifier;
this.objectVersion = objectVersion;
this.signatures = signatures;
this.expr = expr;
this.description = description;
this.objectStatus = objectStatus;
this.metadata = metadata;
this.keyMap = keyMap;
}
@com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "")
public static class Builder {
/**
* Generated key that can be used in API calls to identify user defined function. On
* scenarios where reference to the user defined function is needed, a value can be passed
* in create.
*/
@com.fasterxml.jackson.annotation.JsonProperty("key")
private String key;
/**
* Generated key that can be used in API calls to identify user defined function. On
* scenarios where reference to the user defined function is needed, a value can be passed
* in create.
*
* @param key the value to set
* @return this builder
*/
public Builder key(String key) {
this.key = key;
this.__explicitlySet__.add("key");
return this;
}
/** The type of the object. */
@com.fasterxml.jackson.annotation.JsonProperty("modelType")
private ModelType modelType;
/**
* The type of the object.
*
* @param modelType the value to set
* @return this builder
*/
public Builder modelType(ModelType modelType) {
this.modelType = modelType;
this.__explicitlySet__.add("modelType");
return this;
}
/** The model version of an object. */
@com.fasterxml.jackson.annotation.JsonProperty("modelVersion")
private String modelVersion;
/**
* The model version of an object.
*
* @param modelVersion the value to set
* @return this builder
*/
public Builder modelVersion(String modelVersion) {
this.modelVersion = modelVersion;
this.__explicitlySet__.add("modelVersion");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("parentRef")
private ParentReference parentRef;
public Builder parentRef(ParentReference parentRef) {
this.parentRef = parentRef;
this.__explicitlySet__.add("parentRef");
return this;
}
/**
* Free form text without any restriction on permitted characters. Name can have letters,
* numbers, and special characters. The value is editable and is restricted to 1000
* characters.
*/
@com.fasterxml.jackson.annotation.JsonProperty("name")
private String name;
/**
* Free form text without any restriction on permitted characters. Name can have letters,
* numbers, and special characters. The value is editable and is restricted to 1000
* characters.
*
* @param name the value to set
* @return this builder
*/
public Builder name(String name) {
this.name = name;
this.__explicitlySet__.add("name");
return this;
}
/**
* Value can only contain upper case letters, underscore, and numbers. It should begin with
* upper case letter or underscore. The value can be modified.
*/
@com.fasterxml.jackson.annotation.JsonProperty("identifier")
private String identifier;
/**
* Value can only contain upper case letters, underscore, and numbers. It should begin with
* upper case letter or underscore. The value can be modified.
*
* @param identifier the value to set
* @return this builder
*/
public Builder identifier(String identifier) {
this.identifier = identifier;
this.__explicitlySet__.add("identifier");
return this;
}
/** The version of the object that is used to track changes in the object instance. */
@com.fasterxml.jackson.annotation.JsonProperty("objectVersion")
private Integer objectVersion;
/**
* The version of the object that is used to track changes in the object instance.
*
* @param objectVersion the value to set
* @return this builder
*/
public Builder objectVersion(Integer objectVersion) {
this.objectVersion = objectVersion;
this.__explicitlySet__.add("objectVersion");
return this;
}
/** An array of function signature. */
@com.fasterxml.jackson.annotation.JsonProperty("signatures")
private java.util.List signatures;
/**
* An array of function signature.
*
* @param signatures the value to set
* @return this builder
*/
public Builder signatures(java.util.List signatures) {
this.signatures = signatures;
this.__explicitlySet__.add("signatures");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("expr")
private Expression expr;
public Builder expr(Expression expr) {
this.expr = expr;
this.__explicitlySet__.add("expr");
return this;
}
/** Detailed description for the object. */
@com.fasterxml.jackson.annotation.JsonProperty("description")
private String description;
/**
* Detailed description for the object.
*
* @param description the value to set
* @return this builder
*/
public Builder description(String description) {
this.description = description;
this.__explicitlySet__.add("description");
return this;
}
/**
* The status of an object that can be set to value 1 for shallow references across objects,
* other values reserved.
*/
@com.fasterxml.jackson.annotation.JsonProperty("objectStatus")
private Integer objectStatus;
/**
* The status of an object that can be set to value 1 for shallow references across objects,
* other values reserved.
*
* @param objectStatus the value to set
* @return this builder
*/
public Builder objectStatus(Integer objectStatus) {
this.objectStatus = objectStatus;
this.__explicitlySet__.add("objectStatus");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("metadata")
private ObjectMetadata metadata;
public Builder metadata(ObjectMetadata metadata) {
this.metadata = metadata;
this.__explicitlySet__.add("metadata");
return this;
}
/**
* A key map. If provided, key is replaced with generated key. This structure provides
* mapping between user provided key and generated key.
*/
@com.fasterxml.jackson.annotation.JsonProperty("keyMap")
private java.util.Map keyMap;
/**
* A key map. If provided, key is replaced with generated key. This structure provides
* mapping between user provided key and generated key.
*
* @param keyMap the value to set
* @return this builder
*/
public Builder keyMap(java.util.Map keyMap) {
this.keyMap = keyMap;
this.__explicitlySet__.add("keyMap");
return this;
}
@com.fasterxml.jackson.annotation.JsonIgnore
private final java.util.Set __explicitlySet__ = new java.util.HashSet();
public CreateUserDefinedFunctionValidationDetails build() {
CreateUserDefinedFunctionValidationDetails model =
new CreateUserDefinedFunctionValidationDetails(
this.key,
this.modelType,
this.modelVersion,
this.parentRef,
this.name,
this.identifier,
this.objectVersion,
this.signatures,
this.expr,
this.description,
this.objectStatus,
this.metadata,
this.keyMap);
for (String explicitlySetProperty : this.__explicitlySet__) {
model.markPropertyAsExplicitlySet(explicitlySetProperty);
}
return model;
}
@com.fasterxml.jackson.annotation.JsonIgnore
public Builder copy(CreateUserDefinedFunctionValidationDetails model) {
if (model.wasPropertyExplicitlySet("key")) {
this.key(model.getKey());
}
if (model.wasPropertyExplicitlySet("modelType")) {
this.modelType(model.getModelType());
}
if (model.wasPropertyExplicitlySet("modelVersion")) {
this.modelVersion(model.getModelVersion());
}
if (model.wasPropertyExplicitlySet("parentRef")) {
this.parentRef(model.getParentRef());
}
if (model.wasPropertyExplicitlySet("name")) {
this.name(model.getName());
}
if (model.wasPropertyExplicitlySet("identifier")) {
this.identifier(model.getIdentifier());
}
if (model.wasPropertyExplicitlySet("objectVersion")) {
this.objectVersion(model.getObjectVersion());
}
if (model.wasPropertyExplicitlySet("signatures")) {
this.signatures(model.getSignatures());
}
if (model.wasPropertyExplicitlySet("expr")) {
this.expr(model.getExpr());
}
if (model.wasPropertyExplicitlySet("description")) {
this.description(model.getDescription());
}
if (model.wasPropertyExplicitlySet("objectStatus")) {
this.objectStatus(model.getObjectStatus());
}
if (model.wasPropertyExplicitlySet("metadata")) {
this.metadata(model.getMetadata());
}
if (model.wasPropertyExplicitlySet("keyMap")) {
this.keyMap(model.getKeyMap());
}
return this;
}
}
/** Create a new builder. */
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder().copy(this);
}
/**
* Generated key that can be used in API calls to identify user defined function. On scenarios
* where reference to the user defined function is needed, a value can be passed in create.
*/
@com.fasterxml.jackson.annotation.JsonProperty("key")
private final String key;
/**
* Generated key that can be used in API calls to identify user defined function. On scenarios
* where reference to the user defined function is needed, a value can be passed in create.
*
* @return the value
*/
public String getKey() {
return key;
}
/** The type of the object. */
public enum ModelType implements com.oracle.bmc.http.internal.BmcEnum {
DisUserDefinedFunction("DIS_USER_DEFINED_FUNCTION"),
;
private final String value;
private static java.util.Map map;
static {
map = new java.util.HashMap<>();
for (ModelType v : ModelType.values()) {
map.put(v.getValue(), v);
}
}
ModelType(String value) {
this.value = value;
}
@com.fasterxml.jackson.annotation.JsonValue
public String getValue() {
return value;
}
@com.fasterxml.jackson.annotation.JsonCreator
public static ModelType create(String key) {
if (map.containsKey(key)) {
return map.get(key);
}
throw new IllegalArgumentException("Invalid ModelType: " + key);
}
};
/** The type of the object. */
@com.fasterxml.jackson.annotation.JsonProperty("modelType")
private final ModelType modelType;
/**
* The type of the object.
*
* @return the value
*/
public ModelType getModelType() {
return modelType;
}
/** The model version of an object. */
@com.fasterxml.jackson.annotation.JsonProperty("modelVersion")
private final String modelVersion;
/**
* The model version of an object.
*
* @return the value
*/
public String getModelVersion() {
return modelVersion;
}
@com.fasterxml.jackson.annotation.JsonProperty("parentRef")
private final ParentReference parentRef;
public ParentReference getParentRef() {
return parentRef;
}
/**
* Free form text without any restriction on permitted characters. Name can have letters,
* numbers, and special characters. The value is editable and is restricted to 1000 characters.
*/
@com.fasterxml.jackson.annotation.JsonProperty("name")
private final String name;
/**
* Free form text without any restriction on permitted characters. Name can have letters,
* numbers, and special characters. The value is editable and is restricted to 1000 characters.
*
* @return the value
*/
public String getName() {
return name;
}
/**
* Value can only contain upper case letters, underscore, and numbers. It should begin with
* upper case letter or underscore. The value can be modified.
*/
@com.fasterxml.jackson.annotation.JsonProperty("identifier")
private final String identifier;
/**
* Value can only contain upper case letters, underscore, and numbers. It should begin with
* upper case letter or underscore. The value can be modified.
*
* @return the value
*/
public String getIdentifier() {
return identifier;
}
/** The version of the object that is used to track changes in the object instance. */
@com.fasterxml.jackson.annotation.JsonProperty("objectVersion")
private final Integer objectVersion;
/**
* The version of the object that is used to track changes in the object instance.
*
* @return the value
*/
public Integer getObjectVersion() {
return objectVersion;
}
/** An array of function signature. */
@com.fasterxml.jackson.annotation.JsonProperty("signatures")
private final java.util.List signatures;
/**
* An array of function signature.
*
* @return the value
*/
public java.util.List getSignatures() {
return signatures;
}
@com.fasterxml.jackson.annotation.JsonProperty("expr")
private final Expression expr;
public Expression getExpr() {
return expr;
}
/** Detailed description for the object. */
@com.fasterxml.jackson.annotation.JsonProperty("description")
private final String description;
/**
* Detailed description for the object.
*
* @return the value
*/
public String getDescription() {
return description;
}
/**
* The status of an object that can be set to value 1 for shallow references across objects,
* other values reserved.
*/
@com.fasterxml.jackson.annotation.JsonProperty("objectStatus")
private final Integer objectStatus;
/**
* The status of an object that can be set to value 1 for shallow references across objects,
* other values reserved.
*
* @return the value
*/
public Integer getObjectStatus() {
return objectStatus;
}
@com.fasterxml.jackson.annotation.JsonProperty("metadata")
private final ObjectMetadata metadata;
public ObjectMetadata getMetadata() {
return metadata;
}
/**
* A key map. If provided, key is replaced with generated key. This structure provides mapping
* between user provided key and generated key.
*/
@com.fasterxml.jackson.annotation.JsonProperty("keyMap")
private final java.util.Map keyMap;
/**
* A key map. If provided, key is replaced with generated key. This structure provides mapping
* between user provided key and generated key.
*
* @return the value
*/
public java.util.Map getKeyMap() {
return keyMap;
}
@Override
public String toString() {
return this.toString(true);
}
/**
* Return a string representation of the object.
*
* @param includeByteArrayContents true to include the full contents of byte arrays
* @return string representation
*/
public String toString(boolean includeByteArrayContents) {
java.lang.StringBuilder sb = new java.lang.StringBuilder();
sb.append("CreateUserDefinedFunctionValidationDetails(");
sb.append("super=").append(super.toString());
sb.append("key=").append(String.valueOf(this.key));
sb.append(", modelType=").append(String.valueOf(this.modelType));
sb.append(", modelVersion=").append(String.valueOf(this.modelVersion));
sb.append(", parentRef=").append(String.valueOf(this.parentRef));
sb.append(", name=").append(String.valueOf(this.name));
sb.append(", identifier=").append(String.valueOf(this.identifier));
sb.append(", objectVersion=").append(String.valueOf(this.objectVersion));
sb.append(", signatures=").append(String.valueOf(this.signatures));
sb.append(", expr=").append(String.valueOf(this.expr));
sb.append(", description=").append(String.valueOf(this.description));
sb.append(", objectStatus=").append(String.valueOf(this.objectStatus));
sb.append(", metadata=").append(String.valueOf(this.metadata));
sb.append(", keyMap=").append(String.valueOf(this.keyMap));
sb.append(")");
return sb.toString();
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (!(o instanceof CreateUserDefinedFunctionValidationDetails)) {
return false;
}
CreateUserDefinedFunctionValidationDetails other =
(CreateUserDefinedFunctionValidationDetails) o;
return java.util.Objects.equals(this.key, other.key)
&& java.util.Objects.equals(this.modelType, other.modelType)
&& java.util.Objects.equals(this.modelVersion, other.modelVersion)
&& java.util.Objects.equals(this.parentRef, other.parentRef)
&& java.util.Objects.equals(this.name, other.name)
&& java.util.Objects.equals(this.identifier, other.identifier)
&& java.util.Objects.equals(this.objectVersion, other.objectVersion)
&& java.util.Objects.equals(this.signatures, other.signatures)
&& java.util.Objects.equals(this.expr, other.expr)
&& java.util.Objects.equals(this.description, other.description)
&& java.util.Objects.equals(this.objectStatus, other.objectStatus)
&& java.util.Objects.equals(this.metadata, other.metadata)
&& java.util.Objects.equals(this.keyMap, other.keyMap)
&& super.equals(other);
}
@Override
public int hashCode() {
final int PRIME = 59;
int result = 1;
result = (result * PRIME) + (this.key == null ? 43 : this.key.hashCode());
result = (result * PRIME) + (this.modelType == null ? 43 : this.modelType.hashCode());
result = (result * PRIME) + (this.modelVersion == null ? 43 : this.modelVersion.hashCode());
result = (result * PRIME) + (this.parentRef == null ? 43 : this.parentRef.hashCode());
result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode());
result = (result * PRIME) + (this.identifier == null ? 43 : this.identifier.hashCode());
result =
(result * PRIME)
+ (this.objectVersion == null ? 43 : this.objectVersion.hashCode());
result = (result * PRIME) + (this.signatures == null ? 43 : this.signatures.hashCode());
result = (result * PRIME) + (this.expr == null ? 43 : this.expr.hashCode());
result = (result * PRIME) + (this.description == null ? 43 : this.description.hashCode());
result = (result * PRIME) + (this.objectStatus == null ? 43 : this.objectStatus.hashCode());
result = (result * PRIME) + (this.metadata == null ? 43 : this.metadata.hashCode());
result = (result * PRIME) + (this.keyMap == null ? 43 : this.keyMap.hashCode());
result = (result * PRIME) + super.hashCode();
return result;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy