docs: private void findProgressivelyWithPartialMatch(String bucketName,
  			Set<Resource> resources, String prefix, String keyPattern) {
  		ListObjectsRequest listObjectsRequest = new ListObjectsRequest()
  				.withBucketName(bucketName).withDelimiter("/").withPrefix(prefix);
  		ObjectListing objectListing = null;
  
  		do {
  			if (objectListing == null) {
  				objectListing = this.amazonS3.listObjects(listObjectsRequest);
  			}
  			else {
  				objectListing = this.amazonS3.listNextBatchOfObjects(objectListing);
  			}
  
  			Set<Resource> newResources = getResourcesFromObjectSummaries(bucketName,
  					keyPattern, objectListing.getObjectSummaries());
  			if (!newResources.isEmpty()) {
  				resources.addAll(newResources);
  			}
  
  			for (String commonPrefix : objectListing.getCommonPrefixes()) {
  				if (isKeyPathMatchesPartially(keyPattern, commonPrefix)) {
  					findPathMatchingKeyInBucket(bucketName, resources, commonPrefix,
  							keyPattern);
  				}
  			}
  		}
  		while (objectListing.isTruncated());
  	}