Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.azure.resourcemanager.datafactory.models.Dataset Maven / Gradle / Ivy
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
package com.azure.resourcemanager.datafactory.models;
import com.azure.core.annotation.Fluent;
import com.azure.core.util.logging.ClientLogger;
import com.azure.json.JsonReader;
import com.azure.json.JsonSerializable;
import com.azure.json.JsonToken;
import com.azure.json.JsonWriter;
import java.io.IOException;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
* The Azure Data Factory nested object which identifies data within different data stores, such as tables, files,
* folders, and documents.
*/
@Fluent
public class Dataset implements JsonSerializable {
/*
* Type of dataset.
*/
private String type = "Dataset";
/*
* Dataset description.
*/
private String description;
/*
* Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType:
* DatasetDataElement.
*/
private Object structure;
/*
* Columns that define the physical type schema of the dataset. Type: array (or Expression with resultType array),
* itemType: DatasetSchemaDataElement.
*/
private Object schema;
/*
* Linked service reference.
*/
private LinkedServiceReference linkedServiceName;
/*
* Parameters for dataset.
*/
private Map parameters;
/*
* List of tags that can be used for describing the Dataset.
*/
private List annotations;
/*
* The folder that this Dataset is in. If not specified, Dataset will appear at the root level.
*/
private DatasetFolder folder;
/*
* The Azure Data Factory nested object which identifies data within different data stores, such as tables, files,
* folders, and documents.
*/
private Map additionalProperties;
/**
* Creates an instance of Dataset class.
*/
public Dataset() {
}
/**
* Get the type property: Type of dataset.
*
* @return the type value.
*/
public String type() {
return this.type;
}
/**
* Get the description property: Dataset description.
*
* @return the description value.
*/
public String description() {
return this.description;
}
/**
* Set the description property: Dataset description.
*
* @param description the description value to set.
* @return the Dataset object itself.
*/
public Dataset withDescription(String description) {
this.description = description;
return this;
}
/**
* Get the structure property: Columns that define the structure of the dataset. Type: array (or Expression with
* resultType array), itemType: DatasetDataElement.
*
* @return the structure value.
*/
public Object structure() {
return this.structure;
}
/**
* Set the structure property: Columns that define the structure of the dataset. Type: array (or Expression with
* resultType array), itemType: DatasetDataElement.
*
* @param structure the structure value to set.
* @return the Dataset object itself.
*/
public Dataset withStructure(Object structure) {
this.structure = structure;
return this;
}
/**
* Get the schema property: Columns that define the physical type schema of the dataset. Type: array (or Expression
* with resultType array), itemType: DatasetSchemaDataElement.
*
* @return the schema value.
*/
public Object schema() {
return this.schema;
}
/**
* Set the schema property: Columns that define the physical type schema of the dataset. Type: array (or Expression
* with resultType array), itemType: DatasetSchemaDataElement.
*
* @param schema the schema value to set.
* @return the Dataset object itself.
*/
public Dataset withSchema(Object schema) {
this.schema = schema;
return this;
}
/**
* Get the linkedServiceName property: Linked service reference.
*
* @return the linkedServiceName value.
*/
public LinkedServiceReference linkedServiceName() {
return this.linkedServiceName;
}
/**
* Set the linkedServiceName property: Linked service reference.
*
* @param linkedServiceName the linkedServiceName value to set.
* @return the Dataset object itself.
*/
public Dataset withLinkedServiceName(LinkedServiceReference linkedServiceName) {
this.linkedServiceName = linkedServiceName;
return this;
}
/**
* Get the parameters property: Parameters for dataset.
*
* @return the parameters value.
*/
public Map parameters() {
return this.parameters;
}
/**
* Set the parameters property: Parameters for dataset.
*
* @param parameters the parameters value to set.
* @return the Dataset object itself.
*/
public Dataset withParameters(Map parameters) {
this.parameters = parameters;
return this;
}
/**
* Get the annotations property: List of tags that can be used for describing the Dataset.
*
* @return the annotations value.
*/
public List annotations() {
return this.annotations;
}
/**
* Set the annotations property: List of tags that can be used for describing the Dataset.
*
* @param annotations the annotations value to set.
* @return the Dataset object itself.
*/
public Dataset withAnnotations(List annotations) {
this.annotations = annotations;
return this;
}
/**
* Get the folder property: The folder that this Dataset is in. If not specified, Dataset will appear at the root
* level.
*
* @return the folder value.
*/
public DatasetFolder folder() {
return this.folder;
}
/**
* Set the folder property: The folder that this Dataset is in. If not specified, Dataset will appear at the root
* level.
*
* @param folder the folder value to set.
* @return the Dataset object itself.
*/
public Dataset withFolder(DatasetFolder folder) {
this.folder = folder;
return this;
}
/**
* Get the additionalProperties property: The Azure Data Factory nested object which identifies data within
* different data stores, such as tables, files, folders, and documents.
*
* @return the additionalProperties value.
*/
public Map additionalProperties() {
return this.additionalProperties;
}
/**
* Set the additionalProperties property: The Azure Data Factory nested object which identifies data within
* different data stores, such as tables, files, folders, and documents.
*
* @param additionalProperties the additionalProperties value to set.
* @return the Dataset object itself.
*/
public Dataset withAdditionalProperties(Map additionalProperties) {
this.additionalProperties = additionalProperties;
return this;
}
/**
* Validates the instance.
*
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
public void validate() {
if (linkedServiceName() == null) {
throw LOGGER.atError()
.log(new IllegalArgumentException("Missing required property linkedServiceName in model Dataset"));
} else {
linkedServiceName().validate();
}
if (parameters() != null) {
parameters().values().forEach(e -> {
if (e != null) {
e.validate();
}
});
}
if (folder() != null) {
folder().validate();
}
}
private static final ClientLogger LOGGER = new ClientLogger(Dataset.class);
/**
* {@inheritDoc}
*/
@Override
public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
jsonWriter.writeStartObject();
jsonWriter.writeJsonField("linkedServiceName", this.linkedServiceName);
jsonWriter.writeStringField("type", this.type);
jsonWriter.writeStringField("description", this.description);
jsonWriter.writeUntypedField("structure", this.structure);
jsonWriter.writeUntypedField("schema", this.schema);
jsonWriter.writeMapField("parameters", this.parameters, (writer, element) -> writer.writeJson(element));
jsonWriter.writeArrayField("annotations", this.annotations, (writer, element) -> writer.writeUntyped(element));
jsonWriter.writeJsonField("folder", this.folder);
if (additionalProperties != null) {
for (Map.Entry additionalProperty : additionalProperties.entrySet()) {
jsonWriter.writeUntypedField(additionalProperty.getKey(), additionalProperty.getValue());
}
}
return jsonWriter.writeEndObject();
}
/**
* Reads an instance of Dataset from the JsonReader.
*
* @param jsonReader The JsonReader being read.
* @return An instance of Dataset if the JsonReader was pointing to an instance of it, or null if it was pointing to
* JSON null.
* @throws IllegalStateException If the deserialized JSON object was missing any required properties.
* @throws IOException If an error occurs while reading the Dataset.
*/
public static Dataset fromJson(JsonReader jsonReader) throws IOException {
return jsonReader.readObject(reader -> {
String discriminatorValue = null;
try (JsonReader readerToUse = reader.bufferObject()) {
readerToUse.nextToken(); // Prepare for reading
while (readerToUse.nextToken() != JsonToken.END_OBJECT) {
String fieldName = readerToUse.getFieldName();
readerToUse.nextToken();
if ("type".equals(fieldName)) {
discriminatorValue = readerToUse.getString();
break;
} else {
readerToUse.skipChildren();
}
}
// Use the discriminator value to determine which subtype should be deserialized.
if ("AmazonS3Object".equals(discriminatorValue)) {
return AmazonS3Dataset.fromJson(readerToUse.reset());
} else if ("Avro".equals(discriminatorValue)) {
return AvroDataset.fromJson(readerToUse.reset());
} else if ("Excel".equals(discriminatorValue)) {
return ExcelDataset.fromJson(readerToUse.reset());
} else if ("Parquet".equals(discriminatorValue)) {
return ParquetDataset.fromJson(readerToUse.reset());
} else if ("DelimitedText".equals(discriminatorValue)) {
return DelimitedTextDataset.fromJson(readerToUse.reset());
} else if ("Json".equals(discriminatorValue)) {
return JsonDataset.fromJson(readerToUse.reset());
} else if ("Xml".equals(discriminatorValue)) {
return XmlDataset.fromJson(readerToUse.reset());
} else if ("Orc".equals(discriminatorValue)) {
return OrcDataset.fromJson(readerToUse.reset());
} else if ("Binary".equals(discriminatorValue)) {
return BinaryDataset.fromJson(readerToUse.reset());
} else if ("Iceberg".equals(discriminatorValue)) {
return IcebergDataset.fromJson(readerToUse.reset());
} else if ("AzureBlob".equals(discriminatorValue)) {
return AzureBlobDataset.fromJson(readerToUse.reset());
} else if ("AzureTable".equals(discriminatorValue)) {
return AzureTableDataset.fromJson(readerToUse.reset());
} else if ("AzureSqlTable".equals(discriminatorValue)) {
return AzureSqlTableDataset.fromJson(readerToUse.reset());
} else if ("AzureSqlMITable".equals(discriminatorValue)) {
return AzureSqlMITableDataset.fromJson(readerToUse.reset());
} else if ("AzureSqlDWTable".equals(discriminatorValue)) {
return AzureSqlDWTableDataset.fromJson(readerToUse.reset());
} else if ("CassandraTable".equals(discriminatorValue)) {
return CassandraTableDataset.fromJson(readerToUse.reset());
} else if ("CustomDataset".equals(discriminatorValue)) {
return CustomDataset.fromJson(readerToUse.reset());
} else if ("CosmosDbSqlApiCollection".equals(discriminatorValue)) {
return CosmosDbSqlApiCollectionDataset.fromJson(readerToUse.reset());
} else if ("DocumentDbCollection".equals(discriminatorValue)) {
return DocumentDbCollectionDataset.fromJson(readerToUse.reset());
} else if ("DynamicsEntity".equals(discriminatorValue)) {
return DynamicsEntityDataset.fromJson(readerToUse.reset());
} else if ("DynamicsCrmEntity".equals(discriminatorValue)) {
return DynamicsCrmEntityDataset.fromJson(readerToUse.reset());
} else if ("CommonDataServiceForAppsEntity".equals(discriminatorValue)) {
return CommonDataServiceForAppsEntityDataset.fromJson(readerToUse.reset());
} else if ("AzureDataLakeStoreFile".equals(discriminatorValue)) {
return AzureDataLakeStoreDataset.fromJson(readerToUse.reset());
} else if ("AzureBlobFSFile".equals(discriminatorValue)) {
return AzureBlobFSDataset.fromJson(readerToUse.reset());
} else if ("Office365Table".equals(discriminatorValue)) {
return Office365Dataset.fromJson(readerToUse.reset());
} else if ("FileShare".equals(discriminatorValue)) {
return FileShareDataset.fromJson(readerToUse.reset());
} else if ("MongoDbCollection".equals(discriminatorValue)) {
return MongoDbCollectionDataset.fromJson(readerToUse.reset());
} else if ("MongoDbAtlasCollection".equals(discriminatorValue)) {
return MongoDbAtlasCollectionDataset.fromJson(readerToUse.reset());
} else if ("MongoDbV2Collection".equals(discriminatorValue)) {
return MongoDbV2CollectionDataset.fromJson(readerToUse.reset());
} else if ("CosmosDbMongoDbApiCollection".equals(discriminatorValue)) {
return CosmosDbMongoDbApiCollectionDataset.fromJson(readerToUse.reset());
} else if ("ODataResource".equals(discriminatorValue)) {
return ODataResourceDataset.fromJson(readerToUse.reset());
} else if ("OracleTable".equals(discriminatorValue)) {
return OracleTableDataset.fromJson(readerToUse.reset());
} else if ("AmazonRdsForOracleTable".equals(discriminatorValue)) {
return AmazonRdsForOracleTableDataset.fromJson(readerToUse.reset());
} else if ("TeradataTable".equals(discriminatorValue)) {
return TeradataTableDataset.fromJson(readerToUse.reset());
} else if ("AzureMySqlTable".equals(discriminatorValue)) {
return AzureMySqlTableDataset.fromJson(readerToUse.reset());
} else if ("AmazonRedshiftTable".equals(discriminatorValue)) {
return AmazonRedshiftTableDataset.fromJson(readerToUse.reset());
} else if ("Db2Table".equals(discriminatorValue)) {
return Db2TableDataset.fromJson(readerToUse.reset());
} else if ("RelationalTable".equals(discriminatorValue)) {
return RelationalTableDataset.fromJson(readerToUse.reset());
} else if ("InformixTable".equals(discriminatorValue)) {
return InformixTableDataset.fromJson(readerToUse.reset());
} else if ("OdbcTable".equals(discriminatorValue)) {
return OdbcTableDataset.fromJson(readerToUse.reset());
} else if ("MySqlTable".equals(discriminatorValue)) {
return MySqlTableDataset.fromJson(readerToUse.reset());
} else if ("PostgreSqlTable".equals(discriminatorValue)) {
return PostgreSqlTableDataset.fromJson(readerToUse.reset());
} else if ("PostgreSqlV2Table".equals(discriminatorValue)) {
return PostgreSqlV2TableDataset.fromJson(readerToUse.reset());
} else if ("MicrosoftAccessTable".equals(discriminatorValue)) {
return MicrosoftAccessTableDataset.fromJson(readerToUse.reset());
} else if ("SalesforceObject".equals(discriminatorValue)) {
return SalesforceObjectDataset.fromJson(readerToUse.reset());
} else if ("SalesforceServiceCloudObject".equals(discriminatorValue)) {
return SalesforceServiceCloudObjectDataset.fromJson(readerToUse.reset());
} else if ("SybaseTable".equals(discriminatorValue)) {
return SybaseTableDataset.fromJson(readerToUse.reset());
} else if ("SapBwCube".equals(discriminatorValue)) {
return SapBwCubeDataset.fromJson(readerToUse.reset());
} else if ("SapCloudForCustomerResource".equals(discriminatorValue)) {
return SapCloudForCustomerResourceDataset.fromJson(readerToUse.reset());
} else if ("SapEccResource".equals(discriminatorValue)) {
return SapEccResourceDataset.fromJson(readerToUse.reset());
} else if ("SapHanaTable".equals(discriminatorValue)) {
return SapHanaTableDataset.fromJson(readerToUse.reset());
} else if ("SapOpenHubTable".equals(discriminatorValue)) {
return SapOpenHubTableDataset.fromJson(readerToUse.reset());
} else if ("SqlServerTable".equals(discriminatorValue)) {
return SqlServerTableDataset.fromJson(readerToUse.reset());
} else if ("AmazonRdsForSqlServerTable".equals(discriminatorValue)) {
return AmazonRdsForSqlServerTableDataset.fromJson(readerToUse.reset());
} else if ("RestResource".equals(discriminatorValue)) {
return RestResourceDataset.fromJson(readerToUse.reset());
} else if ("SapTableResource".equals(discriminatorValue)) {
return SapTableResourceDataset.fromJson(readerToUse.reset());
} else if ("SapOdpResource".equals(discriminatorValue)) {
return SapOdpResourceDataset.fromJson(readerToUse.reset());
} else if ("WebTable".equals(discriminatorValue)) {
return WebTableDataset.fromJson(readerToUse.reset());
} else if ("AzureSearchIndex".equals(discriminatorValue)) {
return AzureSearchIndexDataset.fromJson(readerToUse.reset());
} else if ("HttpFile".equals(discriminatorValue)) {
return HttpDataset.fromJson(readerToUse.reset());
} else if ("AmazonMWSObject".equals(discriminatorValue)) {
return AmazonMwsObjectDataset.fromJson(readerToUse.reset());
} else if ("AzurePostgreSqlTable".equals(discriminatorValue)) {
return AzurePostgreSqlTableDataset.fromJson(readerToUse.reset());
} else if ("ConcurObject".equals(discriminatorValue)) {
return ConcurObjectDataset.fromJson(readerToUse.reset());
} else if ("CouchbaseTable".equals(discriminatorValue)) {
return CouchbaseTableDataset.fromJson(readerToUse.reset());
} else if ("DrillTable".equals(discriminatorValue)) {
return DrillTableDataset.fromJson(readerToUse.reset());
} else if ("EloquaObject".equals(discriminatorValue)) {
return EloquaObjectDataset.fromJson(readerToUse.reset());
} else if ("GoogleBigQueryObject".equals(discriminatorValue)) {
return GoogleBigQueryObjectDataset.fromJson(readerToUse.reset());
} else if ("GoogleBigQueryV2Object".equals(discriminatorValue)) {
return GoogleBigQueryV2ObjectDataset.fromJson(readerToUse.reset());
} else if ("GreenplumTable".equals(discriminatorValue)) {
return GreenplumTableDataset.fromJson(readerToUse.reset());
} else if ("HBaseObject".equals(discriminatorValue)) {
return HBaseObjectDataset.fromJson(readerToUse.reset());
} else if ("HiveObject".equals(discriminatorValue)) {
return HiveObjectDataset.fromJson(readerToUse.reset());
} else if ("HubspotObject".equals(discriminatorValue)) {
return HubspotObjectDataset.fromJson(readerToUse.reset());
} else if ("ImpalaObject".equals(discriminatorValue)) {
return ImpalaObjectDataset.fromJson(readerToUse.reset());
} else if ("JiraObject".equals(discriminatorValue)) {
return JiraObjectDataset.fromJson(readerToUse.reset());
} else if ("MagentoObject".equals(discriminatorValue)) {
return MagentoObjectDataset.fromJson(readerToUse.reset());
} else if ("MariaDBTable".equals(discriminatorValue)) {
return MariaDBTableDataset.fromJson(readerToUse.reset());
} else if ("AzureMariaDBTable".equals(discriminatorValue)) {
return AzureMariaDBTableDataset.fromJson(readerToUse.reset());
} else if ("MarketoObject".equals(discriminatorValue)) {
return MarketoObjectDataset.fromJson(readerToUse.reset());
} else if ("PaypalObject".equals(discriminatorValue)) {
return PaypalObjectDataset.fromJson(readerToUse.reset());
} else if ("PhoenixObject".equals(discriminatorValue)) {
return PhoenixObjectDataset.fromJson(readerToUse.reset());
} else if ("PrestoObject".equals(discriminatorValue)) {
return PrestoObjectDataset.fromJson(readerToUse.reset());
} else if ("QuickBooksObject".equals(discriminatorValue)) {
return QuickBooksObjectDataset.fromJson(readerToUse.reset());
} else if ("ServiceNowObject".equals(discriminatorValue)) {
return ServiceNowObjectDataset.fromJson(readerToUse.reset());
} else if ("ShopifyObject".equals(discriminatorValue)) {
return ShopifyObjectDataset.fromJson(readerToUse.reset());
} else if ("SparkObject".equals(discriminatorValue)) {
return SparkObjectDataset.fromJson(readerToUse.reset());
} else if ("SquareObject".equals(discriminatorValue)) {
return SquareObjectDataset.fromJson(readerToUse.reset());
} else if ("XeroObject".equals(discriminatorValue)) {
return XeroObjectDataset.fromJson(readerToUse.reset());
} else if ("ZohoObject".equals(discriminatorValue)) {
return ZohoObjectDataset.fromJson(readerToUse.reset());
} else if ("NetezzaTable".equals(discriminatorValue)) {
return NetezzaTableDataset.fromJson(readerToUse.reset());
} else if ("VerticaTable".equals(discriminatorValue)) {
return VerticaTableDataset.fromJson(readerToUse.reset());
} else if ("SalesforceMarketingCloudObject".equals(discriminatorValue)) {
return SalesforceMarketingCloudObjectDataset.fromJson(readerToUse.reset());
} else if ("ResponsysObject".equals(discriminatorValue)) {
return ResponsysObjectDataset.fromJson(readerToUse.reset());
} else if ("DynamicsAXResource".equals(discriminatorValue)) {
return DynamicsAXResourceDataset.fromJson(readerToUse.reset());
} else if ("OracleServiceCloudObject".equals(discriminatorValue)) {
return OracleServiceCloudObjectDataset.fromJson(readerToUse.reset());
} else if ("AzureDataExplorerTable".equals(discriminatorValue)) {
return AzureDataExplorerTableDataset.fromJson(readerToUse.reset());
} else if ("GoogleAdWordsObject".equals(discriminatorValue)) {
return GoogleAdWordsObjectDataset.fromJson(readerToUse.reset());
} else if ("SnowflakeTable".equals(discriminatorValue)) {
return SnowflakeDataset.fromJson(readerToUse.reset());
} else if ("SnowflakeV2Table".equals(discriminatorValue)) {
return SnowflakeV2Dataset.fromJson(readerToUse.reset());
} else if ("SharePointOnlineListResource".equals(discriminatorValue)) {
return SharePointOnlineListResourceDataset.fromJson(readerToUse.reset());
} else if ("AzureDatabricksDeltaLakeDataset".equals(discriminatorValue)) {
return AzureDatabricksDeltaLakeDataset.fromJson(readerToUse.reset());
} else if ("LakeHouseTable".equals(discriminatorValue)) {
return LakeHouseTableDataset.fromJson(readerToUse.reset());
} else if ("SalesforceV2Object".equals(discriminatorValue)) {
return SalesforceV2ObjectDataset.fromJson(readerToUse.reset());
} else if ("SalesforceServiceCloudV2Object".equals(discriminatorValue)) {
return SalesforceServiceCloudV2ObjectDataset.fromJson(readerToUse.reset());
} else if ("WarehouseTable".equals(discriminatorValue)) {
return WarehouseTableDataset.fromJson(readerToUse.reset());
} else if ("ServiceNowV2Object".equals(discriminatorValue)) {
return ServiceNowV2ObjectDataset.fromJson(readerToUse.reset());
} else {
return fromJsonKnownDiscriminator(readerToUse.reset());
}
}
});
}
static Dataset fromJsonKnownDiscriminator(JsonReader jsonReader) throws IOException {
return jsonReader.readObject(reader -> {
Dataset deserializedDataset = new Dataset();
Map additionalProperties = null;
while (reader.nextToken() != JsonToken.END_OBJECT) {
String fieldName = reader.getFieldName();
reader.nextToken();
if ("linkedServiceName".equals(fieldName)) {
deserializedDataset.linkedServiceName = LinkedServiceReference.fromJson(reader);
} else if ("type".equals(fieldName)) {
deserializedDataset.type = reader.getString();
} else if ("description".equals(fieldName)) {
deserializedDataset.description = reader.getString();
} else if ("structure".equals(fieldName)) {
deserializedDataset.structure = reader.readUntyped();
} else if ("schema".equals(fieldName)) {
deserializedDataset.schema = reader.readUntyped();
} else if ("parameters".equals(fieldName)) {
Map parameters
= reader.readMap(reader1 -> ParameterSpecification.fromJson(reader1));
deserializedDataset.parameters = parameters;
} else if ("annotations".equals(fieldName)) {
List annotations = reader.readArray(reader1 -> reader1.readUntyped());
deserializedDataset.annotations = annotations;
} else if ("folder".equals(fieldName)) {
deserializedDataset.folder = DatasetFolder.fromJson(reader);
} else {
if (additionalProperties == null) {
additionalProperties = new LinkedHashMap<>();
}
additionalProperties.put(fieldName, reader.readUntyped());
}
}
deserializedDataset.additionalProperties = additionalProperties;
return deserializedDataset;
});
}
}