/** * This private method uses the root directory or the original container to * list blobs under the directory or container given a specified prefix for * the directory depending on whether the original file system object was * constructed with a short- or long-form URI. It also uses the specified flat * or hierarchical option, listing details options, request options, and * operation context. * * @param aPrefix * string name representing the prefix of containing blobs. * @param useFlatBlobListing * - the list is flat if true, or hierarchical otherwise. * @param listingDetails * - determine whether snapshots, metadata, committed/uncommitted * data * @param options * - object specifying additional options for the request. null = * default options * @param opContext * - context of the current operation * @returns blobItems : iterable collection of blob items. * @throws URISyntaxException * */ private Iterable<ListBlobItem> listRootBlobs(String aPrefix, boolean useFlatBlobListing, EnumSet<BlobListingDetails> listingDetails, BlobRequestOptions options, OperationContext opContext) throws StorageException, URISyntaxException { CloudBlobDirectoryWrapper directory = this.container.getDirectoryReference(aPrefix); return directory.listBlobs( null, useFlatBlobListing, listingDetails, options, opContext); }
/** * This private method normalizes the key by stripping the container name from * the path and returns a path relative to the root directory of the * container. * * @param directory * - adjust the key to this directory to a path relative to the root * directory * * @returns normKey */ private String normalizeKey(CloudBlobDirectoryWrapper directory) { String dirKey = normalizeKey(directory.getUri()); // Strip the last delimiter if (dirKey.endsWith(PATH_DELIMITER)) { dirKey = dirKey.substring(0, dirKey.length() - 1); } return dirKey; }
/** * This private method normalizes the key by stripping the container name from * the path and returns a path relative to the root directory of the * container. * * @param blob * - adjust the key to this directory to a path relative to the root * directory * * @returns normKey */ private String normalizeKey(CloudBlobDirectoryWrapper directory) { String dirKey = normalizeKey(directory.getUri()); // Strip the last delimiter if (dirKey.endsWith(PATH_DELIMITER)) { dirKey = dirKey.substring(0, dirKey.length() - 1); } return dirKey; }