From 3a0dd2c4616e4661147ba9107cc57846f3146637 Mon Sep 17 00:00:00 2001 From: Page Asgardius Date: Wed, 12 Oct 2022 12:36:22 -0700 Subject: [PATCH] optimized object list --- .idea/deploymentTargetDropDown.xml | 17 ++++++++++++++++ .../asgardius/page/s3manager/ObjectInfo.java | 15 +++++++------- .../page/s3manager/ObjectSelect.java | 20 ++++++++++++------- 3 files changed, 37 insertions(+), 15 deletions(-) create mode 100644 .idea/deploymentTargetDropDown.xml diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml new file mode 100644 index 0000000..fe1fb99 --- /dev/null +++ b/.idea/deploymentTargetDropDown.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/java/asgardius/page/s3manager/ObjectInfo.java b/app/src/main/java/asgardius/page/s3manager/ObjectInfo.java index 4f13a83..ede3762 100644 --- a/app/src/main/java/asgardius/page/s3manager/ObjectInfo.java +++ b/app/src/main/java/asgardius/page/s3manager/ObjectInfo.java @@ -92,14 +92,13 @@ public class ObjectInfo extends AppCompatActivity { } ObjectListing result = s3client.listObjects(orequest); List objects = result.getObjectSummaries(); - boolean nextbatch = false; - while (result.isTruncated() || !nextbatch) { - if (nextbatch) { - result = s3client.listNextBatchOfObjects (result); - objects = result.getObjectSummaries(); - } else { - nextbatch = true; - } + for (S3ObjectSummary os : objects) { + totalSize += os.getSize(); + totalItems++; + } + while (result.isTruncated()) { + result = s3client.listNextBatchOfObjects (result); + objects = result.getObjectSummaries(); for (S3ObjectSummary os : objects) { totalSize += os.getSize(); totalItems++; diff --git a/app/src/main/java/asgardius/page/s3manager/ObjectSelect.java b/app/src/main/java/asgardius/page/s3manager/ObjectSelect.java index b81c7bf..d5560df 100644 --- a/app/src/main/java/asgardius/page/s3manager/ObjectSelect.java +++ b/app/src/main/java/asgardius/page/s3manager/ObjectSelect.java @@ -115,14 +115,20 @@ public class ObjectSelect extends AppCompatActivity { //System.out.println("Buckets:"); //int i=0; List objects = result.getObjectSummaries(); - boolean nextbatch = false; - while (result.isTruncated() || !nextbatch) { - if (nextbatch) { - result = s3client.listNextBatchOfObjects (result); - objects = result.getObjectSummaries(); - } else { - nextbatch = true; + for (S3ObjectSummary os : objects) { + filename = os.getKey().split("/"); + if (filename.length == treelevel+1) { + object.add(filename[treelevel]); } + else { + object.add(filename[treelevel]+"/"); + } + + //i++; + } + while (result.isTruncated()) { + result = s3client.listNextBatchOfObjects (result); + objects = result.getObjectSummaries(); for (S3ObjectSummary os : objects) { filename = os.getKey().split("/"); if (filename.length == treelevel+1) {