Utilizzare CreateSchemaMapping con un AWS SDK - AWS Esempi di codice SDK

Sono disponibili altri esempi AWS SDK nel repository AWS Doc SDK Examples. GitHub

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzare CreateSchemaMapping con un AWS SDK

Gli esempi di codice seguenti mostrano come utilizzare CreateSchemaMapping.

Java
SDK per Java 2.x
Nota

C'è altro da fare. GitHub Trova l'esempio completo e scopri di più sulla configurazione e l'esecuzione nel Repository di esempi di codice AWS.

/** * Creates a schema mapping asynchronously. * * @param schemaName the name of the schema to create * @return a {@link CompletableFuture} that represents the asynchronous creation of the schema mapping */ public CompletableFuture<CreateSchemaMappingResponse> createSchemaMappingAsync(String schemaName) { List<SchemaInputAttribute> schemaAttributes = null; if (schemaName.startsWith("json")) { schemaAttributes = List.of( SchemaInputAttribute.builder().matchKey("id").fieldName("id").type(SchemaAttributeType.UNIQUE_ID).build(), SchemaInputAttribute.builder().matchKey("name").fieldName("name").type(SchemaAttributeType.NAME).build(), SchemaInputAttribute.builder().matchKey("email").fieldName("email").type(SchemaAttributeType.EMAIL_ADDRESS).build() ); } else { schemaAttributes = List.of( SchemaInputAttribute.builder().matchKey("id").fieldName("id").type(SchemaAttributeType.UNIQUE_ID).build(), SchemaInputAttribute.builder().matchKey("name").fieldName("name").type(SchemaAttributeType.NAME).build(), SchemaInputAttribute.builder().matchKey("email").fieldName("email").type(SchemaAttributeType.EMAIL_ADDRESS).build(), SchemaInputAttribute.builder().fieldName("phone").type(SchemaAttributeType.PROVIDER_ID).subType("STRING").build() ); } CreateSchemaMappingRequest request = CreateSchemaMappingRequest.builder() .schemaName(schemaName) .mappedInputFields(schemaAttributes) .build(); return getResolutionAsyncClient().createSchemaMapping(request) .whenComplete((response, exception) -> { if (response != null) { logger.info("[{}] schema mapping Created Successfully!", schemaName); } else { if (exception == null) { throw new CompletionException("An unknown error occurred while creating the schema mapping.", null); } Throwable cause = exception.getCause(); if (cause instanceof ConflictException) { throw new CompletionException("A conflicting schema mapping already exists. Resolve conflicts before proceeding.", cause); } // Wrap other AWS exceptions in a CompletionException. throw new CompletionException("Failed to create schema mapping: " + exception.getMessage(), exception); } }); }
JavaScript
SDK per JavaScript (v3)
Nota

C'è altro da fare. GitHub Trova l'esempio completo e scopri di più sulla configurazione e l'esecuzione nel Repository di esempi di codice AWS.

//The default inputs for this demo are read from the ../inputs.json. import { fileURLToPath } from "node:url"; import { CreateSchemaMappingCommand, EntityResolutionClient, } from "@aws-sdk/client-entityresolution"; import data from "../inputs.json" with { type: "json" }; const region = "eu-west-1"; const erClient = new EntityResolutionClient({ region: region }); export const main = async () => { const createSchemaMappingParamsJson = { schemaName: `${data.inputs.schemaNameJson}`, mappedInputFields: [ { fieldName: "id", type: "UNIQUE_ID", }, { fieldName: "name", type: "NAME", }, { fieldName: "email", type: "EMAIL_ADDRESS", }, ], }; const createSchemaMappingParamsCSV = { schemaName: `${data.inputs.schemaNameCSV}`, mappedInputFields: [ { fieldName: "id", type: "UNIQUE_ID", }, { fieldName: "name", type: "NAME", }, { fieldName: "email", type: "EMAIL_ADDRESS", }, { fieldName: "phone", type: "PROVIDER_ID", subType: "STRING", }, ], }; try { const command = new CreateSchemaMappingCommand( createSchemaMappingParamsJson, ); const response = await erClient.send(command); console.log("The JSON schema mapping name is ", response.schemaName); } catch (error) { console.log("error ", error.message); } };