与 AWS SDK getVehicle 配合使用 - AWS SDK 代码示例

文档 AWS SDK 示例 GitHub 存储库中还有更多 S AWS DK 示例

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

与 AWS SDK getVehicle 配合使用

以下代码示例演示如何使用 getVehicle

Java
适用于 Java 的 SDK 2.x
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

/** * Fetches the details of a vehicle. * * @param vehicleName the name of the vehicle to fetch details for * @return a {@link CompletableFuture} that completes when the vehicle details have been fetched */ public CompletableFuture<Void> getVehicleDetailsAsync(String vehicleName) { GetVehicleRequest request = GetVehicleRequest.builder() .vehicleName(vehicleName) .build(); CompletableFuture<Void> result = new CompletableFuture<>(); getAsyncClient().getVehicle(request) .whenComplete((response, exception) -> { if (exception != null) { Throwable cause = exception instanceof CompletionException ? exception.getCause() : exception; if (cause instanceof ResourceNotFoundException) { result.completeExceptionally(cause); // don't rewrap } else { result.completeExceptionally(new RuntimeException("Failed to fetch vehicle details: " + cause.getMessage(), cause)); } } else { Map<String, Object> details = new HashMap<>(); details.put("vehicleName", response.vehicleName()); details.put("arn", response.arn()); details.put("modelManifestArn", response.modelManifestArn()); details.put("decoderManifestArn", response.decoderManifestArn()); details.put("attributes", response.attributes()); details.put("creationTime", response.creationTime().toString()); details.put("lastModificationTime", response.lastModificationTime().toString()); logger.info("Vehicle Details:"); details.forEach((key, value) -> logger.info("• {} : {}", key, value)); result.complete(null); // mark as successful } }); return result; }
  • 有关 API 的详细信息,请参阅 API 参考中的 getVe h AWS SDK for Java 2.x ic le。

Kotlin
适用于 Kotlin 的 SDK
注意

还有更多相关信息 GitHub。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

suspend fun getVehicleDetails(vehicleNameVal: String) { val request = GetVehicleRequest { vehicleName = vehicleNameVal } IotFleetWiseClient { region = "us-east-1" }.use { fleetwiseClient -> val response = fleetwiseClient.getVehicle(request) val details = mapOf( "vehicleName" to response.vehicleName, "arn" to response.arn, "modelManifestArn" to response.modelManifestArn, "decoderManifestArn" to response.decoderManifestArn, "attributes" to response.attributes.toString(), "creationTime" to response.creationTime.toString(), "lastModificationTime" to response.lastModificationTime.toString(), ) println("Vehicle Details:") for ((key, value) in details) { println("• %-20s : %s".format(key, value)) } } }
  • 有关 API 的详细信息,请参阅适用于 K otlin 的AWS SDK 中的 getVe hicle API 参考。