public static LinkedService fromJson()

in sdk/synapse/azure-analytics-synapse-artifacts/src/main/java/com/azure/analytics/synapse/artifacts/models/LinkedService.java [224:483]


    public static LinkedService 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 ("AzureStorage".equals(discriminatorValue)) {
                    return AzureStorageLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureBlobStorage".equals(discriminatorValue)) {
                    return AzureBlobStorageLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureTableStorage".equals(discriminatorValue)) {
                    return AzureTableStorageLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureSqlDW".equals(discriminatorValue)) {
                    return AzureSqlDWLinkedService.fromJson(readerToUse.reset());
                } else if ("SqlServer".equals(discriminatorValue)) {
                    return SqlServerLinkedService.fromJson(readerToUse.reset());
                } else if ("AmazonRdsForSqlServer".equals(discriminatorValue)) {
                    return AmazonRdsForSqlServerLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureSqlDatabase".equals(discriminatorValue)) {
                    return AzureSqlDatabaseLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureSqlMI".equals(discriminatorValue)) {
                    return AzureSqlMILinkedService.fromJson(readerToUse.reset());
                } else if ("AzureBatch".equals(discriminatorValue)) {
                    return AzureBatchLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureKeyVault".equals(discriminatorValue)) {
                    return AzureKeyVaultLinkedService.fromJson(readerToUse.reset());
                } else if ("CosmosDb".equals(discriminatorValue)) {
                    return CosmosDbLinkedService.fromJson(readerToUse.reset());
                } else if ("Dynamics".equals(discriminatorValue)) {
                    return DynamicsLinkedService.fromJson(readerToUse.reset());
                } else if ("DynamicsCrm".equals(discriminatorValue)) {
                    return DynamicsCrmLinkedService.fromJson(readerToUse.reset());
                } else if ("CommonDataServiceForApps".equals(discriminatorValue)) {
                    return CommonDataServiceForAppsLinkedService.fromJson(readerToUse.reset());
                } else if ("HDInsight".equals(discriminatorValue)) {
                    return HDInsightLinkedService.fromJson(readerToUse.reset());
                } else if ("FileServer".equals(discriminatorValue)) {
                    return FileServerLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureFileStorage".equals(discriminatorValue)) {
                    return AzureFileStorageLinkedService.fromJson(readerToUse.reset());
                } else if ("GoogleCloudStorage".equals(discriminatorValue)) {
                    return GoogleCloudStorageLinkedService.fromJson(readerToUse.reset());
                } else if ("Oracle".equals(discriminatorValue)) {
                    return OracleLinkedService.fromJson(readerToUse.reset());
                } else if ("AmazonRdsForOracle".equals(discriminatorValue)) {
                    return AmazonRdsForOracleLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureMySql".equals(discriminatorValue)) {
                    return AzureMySqlLinkedService.fromJson(readerToUse.reset());
                } else if ("MySql".equals(discriminatorValue)) {
                    return MySqlLinkedService.fromJson(readerToUse.reset());
                } else if ("PostgreSql".equals(discriminatorValue)) {
                    return PostgreSqlLinkedService.fromJson(readerToUse.reset());
                } else if ("PostgreSqlV2".equals(discriminatorValue)) {
                    return PostgreSqlV2LinkedService.fromJson(readerToUse.reset());
                } else if ("Sybase".equals(discriminatorValue)) {
                    return SybaseLinkedService.fromJson(readerToUse.reset());
                } else if ("Db2".equals(discriminatorValue)) {
                    return Db2LinkedService.fromJson(readerToUse.reset());
                } else if ("Teradata".equals(discriminatorValue)) {
                    return TeradataLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureML".equals(discriminatorValue)) {
                    return AzureMLLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureMLService".equals(discriminatorValue)) {
                    return AzureMLServiceLinkedService.fromJson(readerToUse.reset());
                } else if ("Odbc".equals(discriminatorValue)) {
                    return OdbcLinkedService.fromJson(readerToUse.reset());
                } else if ("Informix".equals(discriminatorValue)) {
                    return InformixLinkedService.fromJson(readerToUse.reset());
                } else if ("MicrosoftAccess".equals(discriminatorValue)) {
                    return MicrosoftAccessLinkedService.fromJson(readerToUse.reset());
                } else if ("Hdfs".equals(discriminatorValue)) {
                    return HdfsLinkedService.fromJson(readerToUse.reset());
                } else if ("OData".equals(discriminatorValue)) {
                    return ODataLinkedService.fromJson(readerToUse.reset());
                } else if ("Web".equals(discriminatorValue)) {
                    return WebLinkedService.fromJson(readerToUse.reset());
                } else if ("Cassandra".equals(discriminatorValue)) {
                    return CassandraLinkedService.fromJson(readerToUse.reset());
                } else if ("MongoDb".equals(discriminatorValue)) {
                    return MongoDbLinkedService.fromJson(readerToUse.reset());
                } else if ("MongoDbAtlas".equals(discriminatorValue)) {
                    return MongoDbAtlasLinkedService.fromJson(readerToUse.reset());
                } else if ("MongoDbV2".equals(discriminatorValue)) {
                    return MongoDbV2LinkedService.fromJson(readerToUse.reset());
                } else if ("CosmosDbMongoDbApi".equals(discriminatorValue)) {
                    return CosmosDbMongoDbApiLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureDataLakeStore".equals(discriminatorValue)) {
                    return AzureDataLakeStoreLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureBlobFS".equals(discriminatorValue)) {
                    return AzureBlobFSLinkedService.fromJson(readerToUse.reset());
                } else if ("Office365".equals(discriminatorValue)) {
                    return Office365LinkedService.fromJson(readerToUse.reset());
                } else if ("Salesforce".equals(discriminatorValue)) {
                    return SalesforceLinkedService.fromJson(readerToUse.reset());
                } else if ("SalesforceServiceCloud".equals(discriminatorValue)) {
                    return SalesforceServiceCloudLinkedService.fromJson(readerToUse.reset());
                } else if ("SapCloudForCustomer".equals(discriminatorValue)) {
                    return SapCloudForCustomerLinkedService.fromJson(readerToUse.reset());
                } else if ("SapEcc".equals(discriminatorValue)) {
                    return SapEccLinkedService.fromJson(readerToUse.reset());
                } else if ("SapOpenHub".equals(discriminatorValue)) {
                    return SapOpenHubLinkedService.fromJson(readerToUse.reset());
                } else if ("SapOdp".equals(discriminatorValue)) {
                    return SapOdpLinkedService.fromJson(readerToUse.reset());
                } else if ("RestService".equals(discriminatorValue)) {
                    return RestServiceLinkedService.fromJson(readerToUse.reset());
                } else if ("TeamDesk".equals(discriminatorValue)) {
                    return TeamDeskLinkedService.fromJson(readerToUse.reset());
                } else if ("Quickbase".equals(discriminatorValue)) {
                    return QuickbaseLinkedService.fromJson(readerToUse.reset());
                } else if ("Smartsheet".equals(discriminatorValue)) {
                    return SmartsheetLinkedService.fromJson(readerToUse.reset());
                } else if ("Zendesk".equals(discriminatorValue)) {
                    return ZendeskLinkedService.fromJson(readerToUse.reset());
                } else if ("Dataworld".equals(discriminatorValue)) {
                    return DataworldLinkedService.fromJson(readerToUse.reset());
                } else if ("AppFigures".equals(discriminatorValue)) {
                    return AppFiguresLinkedService.fromJson(readerToUse.reset());
                } else if ("Asana".equals(discriminatorValue)) {
                    return AsanaLinkedService.fromJson(readerToUse.reset());
                } else if ("Twilio".equals(discriminatorValue)) {
                    return TwilioLinkedService.fromJson(readerToUse.reset());
                } else if ("GoogleSheets".equals(discriminatorValue)) {
                    return GoogleSheetsLinkedService.fromJson(readerToUse.reset());
                } else if ("AmazonS3".equals(discriminatorValue)) {
                    return AmazonS3LinkedService.fromJson(readerToUse.reset());
                } else if ("AmazonRedshift".equals(discriminatorValue)) {
                    return AmazonRedshiftLinkedService.fromJson(readerToUse.reset());
                } else if ("CustomDataSource".equals(discriminatorValue)) {
                    return CustomDataSourceLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureSearch".equals(discriminatorValue)) {
                    return AzureSearchLinkedService.fromJson(readerToUse.reset());
                } else if ("HttpServer".equals(discriminatorValue)) {
                    return HttpLinkedService.fromJson(readerToUse.reset());
                } else if ("FtpServer".equals(discriminatorValue)) {
                    return FtpServerLinkedService.fromJson(readerToUse.reset());
                } else if ("Sftp".equals(discriminatorValue)) {
                    return SftpServerLinkedService.fromJson(readerToUse.reset());
                } else if ("SapBW".equals(discriminatorValue)) {
                    return SapBWLinkedService.fromJson(readerToUse.reset());
                } else if ("SapHana".equals(discriminatorValue)) {
                    return SapHanaLinkedService.fromJson(readerToUse.reset());
                } else if ("AmazonMWS".equals(discriminatorValue)) {
                    return AmazonMWSLinkedService.fromJson(readerToUse.reset());
                } else if ("AzurePostgreSql".equals(discriminatorValue)) {
                    return AzurePostgreSqlLinkedService.fromJson(readerToUse.reset());
                } else if ("Concur".equals(discriminatorValue)) {
                    return ConcurLinkedService.fromJson(readerToUse.reset());
                } else if ("Couchbase".equals(discriminatorValue)) {
                    return CouchbaseLinkedService.fromJson(readerToUse.reset());
                } else if ("Drill".equals(discriminatorValue)) {
                    return DrillLinkedService.fromJson(readerToUse.reset());
                } else if ("Eloqua".equals(discriminatorValue)) {
                    return EloquaLinkedService.fromJson(readerToUse.reset());
                } else if ("GoogleBigQuery".equals(discriminatorValue)) {
                    return GoogleBigQueryLinkedService.fromJson(readerToUse.reset());
                } else if ("GoogleBigQueryV2".equals(discriminatorValue)) {
                    return GoogleBigQueryV2LinkedService.fromJson(readerToUse.reset());
                } else if ("Greenplum".equals(discriminatorValue)) {
                    return GreenplumLinkedService.fromJson(readerToUse.reset());
                } else if ("HBase".equals(discriminatorValue)) {
                    return HBaseLinkedService.fromJson(readerToUse.reset());
                } else if ("Hive".equals(discriminatorValue)) {
                    return HiveLinkedService.fromJson(readerToUse.reset());
                } else if ("Hubspot".equals(discriminatorValue)) {
                    return HubspotLinkedService.fromJson(readerToUse.reset());
                } else if ("Impala".equals(discriminatorValue)) {
                    return ImpalaLinkedService.fromJson(readerToUse.reset());
                } else if ("Jira".equals(discriminatorValue)) {
                    return JiraLinkedService.fromJson(readerToUse.reset());
                } else if ("Magento".equals(discriminatorValue)) {
                    return MagentoLinkedService.fromJson(readerToUse.reset());
                } else if ("MariaDB".equals(discriminatorValue)) {
                    return MariaDBLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureMariaDB".equals(discriminatorValue)) {
                    return AzureMariaDBLinkedService.fromJson(readerToUse.reset());
                } else if ("Marketo".equals(discriminatorValue)) {
                    return MarketoLinkedService.fromJson(readerToUse.reset());
                } else if ("Paypal".equals(discriminatorValue)) {
                    return PaypalLinkedService.fromJson(readerToUse.reset());
                } else if ("Phoenix".equals(discriminatorValue)) {
                    return PhoenixLinkedService.fromJson(readerToUse.reset());
                } else if ("Presto".equals(discriminatorValue)) {
                    return PrestoLinkedService.fromJson(readerToUse.reset());
                } else if ("QuickBooks".equals(discriminatorValue)) {
                    return QuickBooksLinkedService.fromJson(readerToUse.reset());
                } else if ("ServiceNow".equals(discriminatorValue)) {
                    return ServiceNowLinkedService.fromJson(readerToUse.reset());
                } else if ("Shopify".equals(discriminatorValue)) {
                    return ShopifyLinkedService.fromJson(readerToUse.reset());
                } else if ("Spark".equals(discriminatorValue)) {
                    return SparkLinkedService.fromJson(readerToUse.reset());
                } else if ("Square".equals(discriminatorValue)) {
                    return SquareLinkedService.fromJson(readerToUse.reset());
                } else if ("Xero".equals(discriminatorValue)) {
                    return XeroLinkedService.fromJson(readerToUse.reset());
                } else if ("Zoho".equals(discriminatorValue)) {
                    return ZohoLinkedService.fromJson(readerToUse.reset());
                } else if ("Vertica".equals(discriminatorValue)) {
                    return VerticaLinkedService.fromJson(readerToUse.reset());
                } else if ("Netezza".equals(discriminatorValue)) {
                    return NetezzaLinkedService.fromJson(readerToUse.reset());
                } else if ("SalesforceMarketingCloud".equals(discriminatorValue)) {
                    return SalesforceMarketingCloudLinkedService.fromJson(readerToUse.reset());
                } else if ("HDInsightOnDemand".equals(discriminatorValue)) {
                    return HDInsightOnDemandLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureDataLakeAnalytics".equals(discriminatorValue)) {
                    return AzureDataLakeAnalyticsLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureDatabricks".equals(discriminatorValue)) {
                    return AzureDatabricksLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureDatabricksDeltaLake".equals(discriminatorValue)) {
                    return AzureDatabricksDeltaLakeLinkedService.fromJson(readerToUse.reset());
                } else if ("Responsys".equals(discriminatorValue)) {
                    return ResponsysLinkedService.fromJson(readerToUse.reset());
                } else if ("DynamicsAX".equals(discriminatorValue)) {
                    return DynamicsAXLinkedService.fromJson(readerToUse.reset());
                } else if ("OracleServiceCloud".equals(discriminatorValue)) {
                    return OracleServiceCloudLinkedService.fromJson(readerToUse.reset());
                } else if ("GoogleAdWords".equals(discriminatorValue)) {
                    return GoogleAdWordsLinkedService.fromJson(readerToUse.reset());
                } else if ("SapTable".equals(discriminatorValue)) {
                    return SapTableLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureDataExplorer".equals(discriminatorValue)) {
                    return AzureDataExplorerLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureFunction".equals(discriminatorValue)) {
                    return AzureFunctionLinkedService.fromJson(readerToUse.reset());
                } else if ("Snowflake".equals(discriminatorValue)) {
                    return SnowflakeLinkedService.fromJson(readerToUse.reset());
                } else if ("SnowflakeV2".equals(discriminatorValue)) {
                    return SnowflakeV2LinkedService.fromJson(readerToUse.reset());
                } else if ("SharePointOnlineList".equals(discriminatorValue)) {
                    return SharePointOnlineListLinkedService.fromJson(readerToUse.reset());
                } else if ("AzureSynapseArtifacts".equals(discriminatorValue)) {
                    return AzureSynapseArtifactsLinkedService.fromJson(readerToUse.reset());
                } else if ("Lakehouse".equals(discriminatorValue)) {
                    return LakeHouseLinkedService.fromJson(readerToUse.reset());
                } else if ("PowerBIWorkspace".equals(discriminatorValue)) {
                    return PowerBIWorkspaceLinkedService.fromJson(readerToUse.reset());
                } else if ("SalesforceV2".equals(discriminatorValue)) {
                    return SalesforceV2LinkedService.fromJson(readerToUse.reset());
                } else if ("SalesforceServiceCloudV2".equals(discriminatorValue)) {
                    return SalesforceServiceCloudV2LinkedService.fromJson(readerToUse.reset());
                } else if ("Warehouse".equals(discriminatorValue)) {
                    return WarehouseLinkedService.fromJson(readerToUse.reset());
                } else {
                    return fromJsonKnownDiscriminator(readerToUse.reset());
                }
            }
        });
    }