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

com.oracle.bmc.dataintegration.model.DataAssetFromAmazonS3 Maven / Gradle / Ivy

There is a newer version: 3.46.1
Show newest version
/**
 * Copyright (c) 2016, 2023, 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;

/**
 * Details for the MYSQL data asset type.
 * 
* 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 #__explicitlySet__}. The {@link #hashCode()} and {@link #equals(Object)} methods are implemented to take * {@link #__explicitlySet__} into account. The constructor, on the other hand, does not set {@link #__explicitlySet__} * (since the constructor cannot distinguish explicit {@code null} from unset {@code null}). **/ @javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20200430") @com.fasterxml.jackson.databind.annotation.JsonDeserialize( builder = DataAssetFromAmazonS3.Builder.class ) @com.fasterxml.jackson.annotation.JsonTypeInfo( use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, property = "modelType" ) @com.fasterxml.jackson.annotation.JsonFilter(com.oracle.bmc.http.internal.ExplicitlySetFilter.NAME) public final class DataAssetFromAmazonS3 extends DataAsset { @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { @com.fasterxml.jackson.annotation.JsonProperty("key") private String key; public Builder key(String key) { this.key = key; this.__explicitlySet__.add("key"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("modelVersion") private String modelVersion; public Builder modelVersion(String modelVersion) { this.modelVersion = modelVersion; this.__explicitlySet__.add("modelVersion"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; public Builder name(String name) { this.name = name; this.__explicitlySet__.add("name"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("description") private String description; public Builder description(String description) { this.description = description; this.__explicitlySet__.add("description"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("objectStatus") private Integer objectStatus; public Builder objectStatus(Integer objectStatus) { this.objectStatus = objectStatus; this.__explicitlySet__.add("objectStatus"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("identifier") private String identifier; public Builder identifier(String identifier) { this.identifier = identifier; this.__explicitlySet__.add("identifier"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("externalKey") private String externalKey; public Builder externalKey(String externalKey) { this.externalKey = externalKey; this.__explicitlySet__.add("externalKey"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("assetProperties") private java.util.Map assetProperties; public Builder assetProperties(java.util.Map assetProperties) { this.assetProperties = assetProperties; this.__explicitlySet__.add("assetProperties"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("nativeTypeSystem") private TypeSystem nativeTypeSystem; public Builder nativeTypeSystem(TypeSystem nativeTypeSystem) { this.nativeTypeSystem = nativeTypeSystem; this.__explicitlySet__.add("nativeTypeSystem"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("objectVersion") private Integer objectVersion; public Builder objectVersion(Integer objectVersion) { this.objectVersion = objectVersion; this.__explicitlySet__.add("objectVersion"); 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; } @com.fasterxml.jackson.annotation.JsonProperty("metadata") private ObjectMetadata metadata; public Builder metadata(ObjectMetadata metadata) { this.metadata = metadata; this.__explicitlySet__.add("metadata"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("keyMap") private java.util.Map keyMap; public Builder keyMap(java.util.Map keyMap) { this.keyMap = keyMap; this.__explicitlySet__.add("keyMap"); return this; } /** * The region for Amazon s3 **/ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The region for Amazon s3 * @param region the value to set * @return this builder **/ public Builder region(String region) { this.region = region; this.__explicitlySet__.add("region"); return this; } @com.fasterxml.jackson.annotation.JsonProperty("defaultConnection") private ConnectionSummaryFromAmazonS3 defaultConnection; public Builder defaultConnection(ConnectionSummaryFromAmazonS3 defaultConnection) { this.defaultConnection = defaultConnection; this.__explicitlySet__.add("defaultConnection"); return this; } @com.fasterxml.jackson.annotation.JsonIgnore private final java.util.Set __explicitlySet__ = new java.util.HashSet(); public DataAssetFromAmazonS3 build() { DataAssetFromAmazonS3 model = new DataAssetFromAmazonS3( this.key, this.modelVersion, this.name, this.description, this.objectStatus, this.identifier, this.externalKey, this.assetProperties, this.nativeTypeSystem, this.objectVersion, this.parentRef, this.metadata, this.keyMap, this.region, this.defaultConnection); for (String explicitlySetProperty : this.__explicitlySet__) { model.markPropertyAsExplicitlySet(explicitlySetProperty); } return model; } @com.fasterxml.jackson.annotation.JsonIgnore public Builder copy(DataAssetFromAmazonS3 model) { if (model.wasPropertyExplicitlySet("key")) { this.key(model.getKey()); } if (model.wasPropertyExplicitlySet("modelVersion")) { this.modelVersion(model.getModelVersion()); } if (model.wasPropertyExplicitlySet("name")) { this.name(model.getName()); } if (model.wasPropertyExplicitlySet("description")) { this.description(model.getDescription()); } if (model.wasPropertyExplicitlySet("objectStatus")) { this.objectStatus(model.getObjectStatus()); } if (model.wasPropertyExplicitlySet("identifier")) { this.identifier(model.getIdentifier()); } if (model.wasPropertyExplicitlySet("externalKey")) { this.externalKey(model.getExternalKey()); } if (model.wasPropertyExplicitlySet("assetProperties")) { this.assetProperties(model.getAssetProperties()); } if (model.wasPropertyExplicitlySet("nativeTypeSystem")) { this.nativeTypeSystem(model.getNativeTypeSystem()); } if (model.wasPropertyExplicitlySet("objectVersion")) { this.objectVersion(model.getObjectVersion()); } if (model.wasPropertyExplicitlySet("parentRef")) { this.parentRef(model.getParentRef()); } if (model.wasPropertyExplicitlySet("metadata")) { this.metadata(model.getMetadata()); } if (model.wasPropertyExplicitlySet("keyMap")) { this.keyMap(model.getKeyMap()); } if (model.wasPropertyExplicitlySet("region")) { this.region(model.getRegion()); } if (model.wasPropertyExplicitlySet("defaultConnection")) { this.defaultConnection(model.getDefaultConnection()); } return this; } } /** * Create a new builder. */ public static Builder builder() { return new Builder(); } public Builder toBuilder() { return new Builder().copy(this); } @Deprecated public DataAssetFromAmazonS3( String key, String modelVersion, String name, String description, Integer objectStatus, String identifier, String externalKey, java.util.Map assetProperties, TypeSystem nativeTypeSystem, Integer objectVersion, ParentReference parentRef, ObjectMetadata metadata, java.util.Map keyMap, String region, ConnectionSummaryFromAmazonS3 defaultConnection) { super( key, modelVersion, name, description, objectStatus, identifier, externalKey, assetProperties, nativeTypeSystem, objectVersion, parentRef, metadata, keyMap); this.region = region; this.defaultConnection = defaultConnection; } /** * The region for Amazon s3 **/ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The region for Amazon s3 * @return the value **/ public String getRegion() { return region; } @com.fasterxml.jackson.annotation.JsonProperty("defaultConnection") private final ConnectionSummaryFromAmazonS3 defaultConnection; public ConnectionSummaryFromAmazonS3 getDefaultConnection() { return defaultConnection; } @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("DataAssetFromAmazonS3("); sb.append("super=").append(super.toString(includeByteArrayContents)); sb.append(", region=").append(String.valueOf(this.region)); sb.append(", defaultConnection=").append(String.valueOf(this.defaultConnection)); sb.append(")"); return sb.toString(); } @Override public boolean equals(Object o) { if (this == o) { return true; } if (!(o instanceof DataAssetFromAmazonS3)) { return false; } DataAssetFromAmazonS3 other = (DataAssetFromAmazonS3) o; return java.util.Objects.equals(this.region, other.region) && java.util.Objects.equals(this.defaultConnection, other.defaultConnection) && super.equals(other); } @Override public int hashCode() { final int PRIME = 59; int result = super.hashCode(); result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); result = (result * PRIME) + (this.defaultConnection == null ? 43 : this.defaultConnection.hashCode()); return result; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy