Skip to content

Commit

Permalink
Refactored getFiles
Browse files Browse the repository at this point in the history
  • Loading branch information
giampieroferrara committed Dec 10, 2024
1 parent 9d2af63 commit b054007
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,7 @@ public interface AzureBlobClient {

BlobProperties getProperties(String filePath);

List<String> getFiles();

List<String> getFiles(String path);
}
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ public AzureBlobClientDefault(String connectionString, String containerName) {
log.trace("it.pagopa.selfcare.azurestorage.AzureBlobClient.it.pagopa.selfcare.azurestorage.AzureBlobClient");
this.containerName = containerName;
this.blobClient = new BlobServiceClientBuilder()
.connectionString(connectionString)
.buildClient();
.connectionString(connectionString)
.buildClient();
}

@Override
Expand Down Expand Up @@ -155,21 +155,34 @@ public BlobProperties getProperties(String filePath) {
}
}

@Override
public List<String> getFiles() {
log.debug("START - getFiles");
List<String> listOfResource = new ArrayList<>();

final BlobContainerClient blobContainer = blobClient.getBlobContainerClient(containerName);
blobContainer.listBlobs().forEach(blob -> listOfResource.add(blob.getName()));

log.debug("Results: {}", listOfResource.size());
log.debug("END - getFiles");
return listOfResource;
}

@Override
public List<String> getFiles(String path) {
log.debug("START - getFiles by given path: {}", path);
String sanitizePath = StringUtils.replace(path, "\n", StringUtils.EMPTY).replace("\r", StringUtils.EMPTY);
log.debug("START - getFiles");
List<String> listOfResource = new ArrayList<>();
final BlobContainerClient blobContainer = blobClient.getBlobContainerClient(containerName);

if (StringUtils.isNotEmpty(sanitizePath)) {
if (StringUtils.isNotEmpty(path)) {
String sanitizePath = StringUtils.replace(path, "\n", StringUtils.EMPTY).replace("\r", StringUtils.EMPTY);
log.debug("getFiles by given path: {}", sanitizePath);

ListBlobsOptions options = new ListBlobsOptions()
.setPrefix(sanitizePath)
.setDetails(new BlobListDetails()
.setRetrieveDeletedBlobs(true)
.setRetrieveSnapshots(true));

blobContainer.listBlobs(options, null).forEach(blob -> listOfResource.add(blob.getName()));
}

Expand Down

0 comments on commit b054007

Please sign in to comment.