private Storage.Objects.List createListRequest(
String bucketName,
String objectNamePrefix,
String delimiter,
boolean includeTrailingDelimiter,
long maxResults)
throws IOException {
logger.atFine().log(
"createListRequest(%s, %s, %s, %s, %d)",
bucketName, objectNamePrefix, delimiter, includeTrailingDelimiter, maxResults);
checkArgument(!Strings.isNullOrEmpty(bucketName), "bucketName must not be null or empty");
Storage.Objects.List listObject = configureRequest(gcs.objects().list(bucketName), bucketName);
if (delimiter != null) {
listObject.setDelimiter(delimiter);
listObject.setIncludeTrailingDelimiter(includeTrailingDelimiter);
}
if (maxResults <= 0 || maxResults + 1 >= storageOptions.getMaxListItemsPerCall()) {
listObject.setMaxResults(storageOptions.getMaxListItemsPerCall());
} else {
listObject.setMaxResults(maxResults + 1);
}
if (!Strings.isNullOrEmpty(objectNamePrefix)) {
listObject.setPrefix(objectNamePrefix);
}
return listObject;
}