import com.volcengine.tos.TOSV2;
import com.volcengine.tos.TOSV2ClientBuilder;
import com.volcengine.tos.TosClientException;
import com.volcengine.tos.TosServerException;
import com.volcengine.tos.model.object.*;
public class ListObjectsBasicExample {
public static void main(String[] args) {
String endpoint = "your endpoint";
String region = "your region";
String accessKey = System.getenv("TOS_ACCESS_KEY");
String secretKey = System.getenv("TOS_SECRET_KEY");
String bucketName = "your bucket name";
TOSV2 tos = new TOSV2ClientBuilder().build(region, endpoint, accessKey, secretKey);
ListObjectsType2Input input = new ListObjectsType2Input().setBucket(bucketName);
ListObjectsType2Output output = tos.listObjectsType2(input);
System.out.printf("listObjectsType2 succeed, is truncated? %b, next continuation token is %s.\n",
output.isTruncated(), output.getNextContinuationToken());
if (output.getContents() != null) {
for (int i = 0; i < output.getContents().size(); i++) {
ListedObjectV2 object = output.getContents().get(i);
System.out.printf("Listed object, key is %s, size is %d, storageClass is %s, ETag is %s, " +
"last modified is %s, crc64 value is %s.\n", object.getKey(), object.getSize(),
object.getStorageClass(), object.getEtag(), object.getLastModified().toString(), object.getHashCrc64ecma());
if (output.getCommonPrefixes() != null) {
for (int i = 0; i < output.getCommonPrefixes().size(); i++) {
ListedCommonPrefix commonPrefix = output.getCommonPrefixes().get(i);
System.out.println("Listed commonPrefix is " + commonPrefix.getPrefix());
if (output.isTruncated()) {
input.setContinuationToken(output.getNextContinuationToken());
output = tos.listObjectsType2(input);
System.out.printf("listObjectsType2 succeed, is truncated? %b, next continuation token is %s.\n",
output.isTruncated(), output.getNextContinuationToken());
if (output.getContents() != null) {
for (int i = 0; i < output.getContents().size(); i++) {
ListedObjectV2 object = output.getContents().get(i);
System.out.printf("Listed object, key is %s, size is %d, storageClass is %s, ETag is %s, " +
"last modified is %s, crc64 value is %s.\n", object.getKey(), object.getSize(),
object.getStorageClass(), object.getEtag(), object.getLastModified().toString(), object.getHashCrc64ecma());
if (output.getCommonPrefixes() != null) {
for (int i = 0; i < output.getCommonPrefixes().size(); i++) {
ListedCommonPrefix commonPrefix = output.getCommonPrefixes().get(i);
System.out.println("Listed commonPrefix is " + commonPrefix.getPrefix());
} catch (TosClientException e) {
System.out.println("listObjectsType2 failed");
System.out.println("Message: " + e.getMessage());
if (e.getCause() != null) {
e.getCause().printStackTrace();
} catch (TosServerException e) {
System.out.println("listObjectsType2 failed");
System.out.println("StatusCode: " + e.getStatusCode());
System.out.println("Code: " + e.getCode());
System.out.println("Message: " + e.getMessage());
System.out.println("RequestID: " + e.getRequestID());
System.out.println("listObjectsType2 failed");
System.out.println("unexpected exception, message: " + t.getMessage());