文件 AWS 開發套件範例 GitHub 儲存庫中有更多可用的 AWS SDK 範例。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
文件 AWS 開發套件範例 GitHub 儲存庫中有更多可用的 AWS SDK 範例。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
ListKeyspaces
搭配 AWS SDK 使用
下列程式碼範例示範如何使用 ListKeyspaces
。
動作範例是大型程式的程式碼摘錄,必須在內容中執行。您可以在下列程式碼範例的內容中看到此動作:
- .NET
-
- 適用於 .NET 的 SDK
-
public async Task ListKeyspaces()
{
var paginator = _amazonKeyspaces.Paginators.ListKeyspaces(new ListKeyspacesRequest());
Console.WriteLine("{0, -30}\t{1}", "Keyspace name", "Keyspace ARN");
Console.WriteLine(new string('-', Console.WindowWidth));
await foreach (var keyspace in paginator.Keyspaces)
{
Console.WriteLine($"{keyspace.KeyspaceName,-30}\t{keyspace.ResourceArn}");
}
}
- Java
-
- SDK for Java 2.x
-
public static void listKeyspacesPaginator(KeyspacesClient keyClient) {
try {
ListKeyspacesRequest keyspacesRequest = ListKeyspacesRequest.builder()
.maxResults(10)
.build();
ListKeyspacesIterable listRes = keyClient.listKeyspacesPaginator(keyspacesRequest);
listRes.stream()
.flatMap(r -> r.keyspaces().stream())
.forEach(content -> System.out.println(" Name: " + content.keyspaceName()));
} catch (KeyspacesException e) {
System.err.println(e.awsErrorDetails().errorMessage());
System.exit(1);
}
}
- Kotlin
-
- SDK for Kotlin
-
suspend fun listKeyspacesPaginator() {
KeyspacesClient { region = "us-east-1" }.use { keyClient ->
keyClient
.listKeyspacesPaginated(ListKeyspacesRequest {})
.transform { it.keyspaces?.forEach { obj -> emit(obj) } }
.collect { obj ->
println("Name: ${obj.keyspaceName}")
}
}
}
- Python
-
- SDK for Python (Boto3)
-
class KeyspaceWrapper:
"""Encapsulates Amazon Keyspaces (for Apache Cassandra) keyspace and table actions."""
def __init__(self, keyspaces_client):
"""
:param keyspaces_client: A Boto3 Amazon Keyspaces client.
"""
self.keyspaces_client = keyspaces_client
self.ks_name = None
self.ks_arn = None
self.table_name = None
@classmethod
def from_client(cls):
keyspaces_client = boto3.client("keyspaces")
return cls(keyspaces_client)
def list_keyspaces(self, limit):
"""
Lists the keyspaces in your account.
:param limit: The maximum number of keyspaces to list.
"""
try:
ks_paginator = self.keyspaces_client.get_paginator("list_keyspaces")
for page in ks_paginator.paginate(PaginationConfig={"MaxItems": limit}):
for ks in page["keyspaces"]:
print(ks["keyspaceName"])
print(f"\t{ks['resourceArn']}")
except ClientError as err:
logger.error(
"Couldn't list keyspaces. Here's why: %s: %s",
err.response["Error"]["Code"],
err.response["Error"]["Message"],
)
raise