文档 AWS SDK 示例 GitHub 存储库中还有更多 S AWS DK 示例
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
与 AWS SDK createSignalCatalog
配合使用
以下代码示例演示如何使用 createSignalCatalog
。
- Java
-
- 适用于 Java 的 SDK 2.x
-
注意
还有更多相关信息 GitHub。在 AWS 代码示例存储库
中查找完整示例,了解如何进行设置和运行。 /** * Creates a signal catalog. * * @param signalCatalogName the name of the signal catalog to be created * @return a {@link CompletableFuture} that completes with the Amazon Resource Name (ARN) of the created signal catalog */ public CompletableFuture<String> createSignalCatalogAsync(String signalCatalogName) { return deleteSignalCatalogIfExistsAsync(signalCatalogName) .thenCompose(ignored -> delayAsync(2000)) // Wait for 2 seconds .thenCompose(ignored -> { List<Node> nodes = List.of( Node.builder().branch( Branch.builder() .fullyQualifiedName("Vehicle") .description("Root branch") .build() ).build(), Node.builder().branch( Branch.builder() .fullyQualifiedName("Vehicle.Powertrain") .description("Powertrain branch") .build() ).build(), Node.builder().sensor( Sensor.builder() .fullyQualifiedName("Vehicle.Powertrain.EngineRPM") .description("Engine RPM") .dataType(NodeDataType.DOUBLE) .unit("rpm") .build() ).build(), Node.builder().sensor( Sensor.builder() .fullyQualifiedName("Vehicle.Powertrain.VehicleSpeed") .description("Vehicle Speed") .dataType(NodeDataType.DOUBLE) .unit("km/h") .build() ).build() ); CreateSignalCatalogRequest request = CreateSignalCatalogRequest.builder() .name(signalCatalogName) .nodes(nodes) .build(); CompletableFuture<String> result = new CompletableFuture<>(); getAsyncClient().createSignalCatalog(request) .whenComplete((response, exception) -> { if (exception != null) { Throwable cause = exception.getCause() != null ? exception.getCause() : exception; if (cause instanceof ValidationException) { result.completeExceptionally(cause); } else { result.completeExceptionally(new RuntimeException("Error creating the catalog", cause)); } } else { result.complete(response.arn()); } }); return result; }); }
-
有关 API 的详细信息,请参阅 AWS SDK for Java 2.x API 参考createSignalCatalog中的。
-
- Kotlin
-
- 适用于 Kotlin 的 SDK
-
注意
还有更多相关信息 GitHub。在 AWS 代码示例存储库
中查找完整示例,了解如何进行设置和运行。 /** * Creates a signal catalog. * * @param signalCatalogName the name of the signal catalog to create the branch vehicle in * @return the ARN (Amazon Resource Name) of the created signal catalog */ suspend fun createbranchVehicle(signalCatalogName: String): String { delay(2000) // Wait for 2 seconds val branchVehicle = Branch { fullyQualifiedName = "Vehicle" description = "Root branch" } val branchPowertrain = Branch { fullyQualifiedName = "Vehicle.Powertrain" description = "Powertrain branch" } val sensorRPM = Sensor { fullyQualifiedName = "Vehicle.Powertrain.EngineRPM" description = "Engine RPM" dataType = NodeDataType.Double unit = "rpm" } val sensorKM = Sensor { fullyQualifiedName = "Vehicle.Powertrain.VehicleSpeed" description = "Vehicle Speed" dataType = NodeDataType.Double unit = "km/h" } // Wrap each specific node type (Branch and Sensor) into the sealed Node class // so they can be included in the CreateSignalCatalogRequest. val myNodes = listOf( Node.Branch(branchVehicle), Node.Branch(branchPowertrain), Node.Sensor(sensorRPM), Node.Sensor(sensorKM), ) val request = CreateSignalCatalogRequest { name = signalCatalogName nodes = myNodes } IotFleetWiseClient { region = "us-east-1" }.use { fleetwiseClient -> val response = fleetwiseClient.createSignalCatalog(request) return response.arn } }
-
有关 API 的详细信息,请参阅适用createSignalCatalog
于 K otlin 的AWS SDK API 参考。
-
createModelManifest
createVehicle