@Override public String getPrefix() { return delegate.getPrefix(); }
@Override public String getPrefix() { return delegate.getPrefix(); }
@Override public String getPrefix() { return delegate.getPrefix(); }
@Override public String getPrefix() { return delegate.getPrefix(); }
public boolean apply(StorageMetadata o) { return o != null && o.getName().replace(File.separatorChar, '/').startsWith(options.getPrefix()); } }));
public boolean apply(StorageMetadata o) { return o != null && o.getName().replace(File.separatorChar, '/').startsWith(options.getPrefix()); } }));
public boolean apply(StorageMetadata o) { return o != null && o.getName().replace(File.separatorChar, '/').startsWith(options.getPrefix()); } }));
public boolean apply(StorageMetadata o) { return o != null && o.getName().replace(File.separatorChar, '/').startsWith(options.getPrefix()); } }));
/** * This implementation invokes {@link AtmosClient#listDirectory} */ @Override public PageSet<? extends StorageMetadata> list(String container, org.jclouds.blobstore.options.ListContainerOptions options) { // TODO: recursive? if (!Strings.nullToEmpty(options.getDelimiter()).equals("/") && !Strings.isNullOrEmpty(options.getPrefix())) { throw new IllegalArgumentException("Atmos can only list via prefix if delimiter is / and the prefix matches an existing directory"); } container = AtmosUtils.adjustContainerIfDirOptionPresent(container, options); if (!Strings.isNullOrEmpty(options.getPrefix())) { // this only works when the prefix exactly matches a directory, the common usage container += "/" + options.getPrefix(); } ListOptions nativeOptions = container2ContainerListOptions.apply(options); // until includeMeta() option works for namespace interface PageSet<? extends StorageMetadata> list = container2ResourceList.apply(sync.listDirectory(container, nativeOptions)); return options.isDetailed() ? fetchBlobMetadataProvider.get().setContainerName(container).apply(list) : list; }
/** * This implementation invokes {@link AtmosClient#listDirectory} */ @Override public PageSet<? extends StorageMetadata> list(String container, org.jclouds.blobstore.options.ListContainerOptions options) { // TODO: recursive? if (!Strings.nullToEmpty(options.getDelimiter()).equals("/") && !Strings.isNullOrEmpty(options.getPrefix())) { throw new IllegalArgumentException("Atmos can only list via prefix if delimiter is / and the prefix matches an existing directory"); } container = AtmosUtils.adjustContainerIfDirOptionPresent(container, options); if (!Strings.isNullOrEmpty(options.getPrefix())) { // this only works when the prefix exactly matches a directory, the common usage container += "/" + options.getPrefix(); } ListOptions nativeOptions = container2ContainerListOptions.apply(options); // until includeMeta() option works for namespace interface PageSet<? extends StorageMetadata> list = container2ResourceList.apply(sync.listDirectory(container, nativeOptions)); return options.isDetailed() ? fetchBlobMetadataProvider.get().setContainerName(container).apply(list) : list; }
private SortedSet<StorageMetadata> filterPrefix(SortedSet<StorageMetadata> contents, final ListContainerOptions options) { contents = newTreeSet(filter(contents, new Predicate<StorageMetadata>() { public boolean apply(StorageMetadata o) { return o != null && o.getName().replace(File.separatorChar, '/').startsWith(options.getPrefix()); } })); if (options.getDelimiter() != null) { return extractCommonPrefixes(contents, options.getDelimiter(), options.getPrefix()); } return contents; }
private SortedSet<StorageMetadata> filterPrefix(SortedSet<StorageMetadata> contents, final ListContainerOptions options) { contents = newTreeSet(filter(contents, new Predicate<StorageMetadata>() { public boolean apply(StorageMetadata o) { return o != null && o.getName().replace(File.separatorChar, '/').startsWith(options.getPrefix()); } })); if (options.getDelimiter() != null) { return extractCommonPrefixes(contents, options.getDelimiter(), options.getPrefix()); } return contents; }
private SortedSet<StorageMetadata> filterPrefix(SortedSet<StorageMetadata> contents, final ListContainerOptions options) { contents = newTreeSet(filter(contents, new Predicate<StorageMetadata>() { public boolean apply(StorageMetadata o) { return o != null && o.getName().replace(File.separatorChar, '/').startsWith(options.getPrefix()); } })); if (options.getDelimiter() != null || !options.isRecursive()) { String delimiter = options.getDelimiter() == null ? storageStrategy.getSeparator() : options.getDelimiter(); return extractCommonPrefixes(contents, delimiter, options.getPrefix()); } return contents; }
private SortedSet<StorageMetadata> filterPrefix(SortedSet<StorageMetadata> contents, final ListContainerOptions options) { contents = newTreeSet(filter(contents, new Predicate<StorageMetadata>() { public boolean apply(StorageMetadata o) { return o != null && o.getName().replace(File.separatorChar, '/').startsWith(options.getPrefix()); } })); if (options.getDelimiter() != null || !options.isRecursive()) { String delimiter = options.getDelimiter() == null ? storageStrategy.getSeparator() : options.getDelimiter(); return extractCommonPrefixes(contents, delimiter, options.getPrefix()); } return contents; }
public ListObjectOptions apply(ListContainerOptions from) { if (from.getDir() != null && (from.getPrefix() != null || from.getDelimiter() != null)) { throw new IllegalArgumentException("Cannot pass both directory and prefix/delimiter"); httpOptions = httpOptions.prefix(path); if (from.getPrefix() != null) { httpOptions.prefix(from.getPrefix());
public ListObjectOptions apply(ListContainerOptions from) { if (from.getDir() != null && (from.getPrefix() != null || from.getDelimiter() != null)) { throw new IllegalArgumentException("Cannot pass both directory and prefix/delimiter"); httpOptions = httpOptions.prefix(path); if (from.getPrefix() != null) { httpOptions.prefix(from.getPrefix());
public ListBlobsOptions apply(ListContainerOptions from) { checkNotNull(from, "set options to instance NONE instead of passing null"); if (from.getDir() != null && from.getPrefix() != null) { throw new IllegalArgumentException("Cannot set both directory and prefix"); httpOptions.prefix(from.getDir().endsWith("/") ? from.getDir() : from.getDir() + "/"); if (from.getPrefix() != null) { httpOptions.prefix(from.getPrefix());
B2ObjectList list = api.getObjectApi().listFileNames(bucket.bucketId(), options.getMarker(), options.getMaxResults(), options.getPrefix(), Strings.emptyToNull(delimiter)); for (B2ObjectList.Entry entry : list.files()) { if (entry.action() == Action.FOLDER) {
B2ObjectList list = api.getObjectApi().listFileNames(bucket.bucketId(), options.getMarker(), options.getMaxResults(), options.getPrefix(), Strings.emptyToNull(delimiter)); for (B2ObjectList.Entry entry : list.files()) { if (entry.action() == Action.FOLDER) {
B2ObjectList list = api.getObjectApi().listFileNames(bucket.bucketId(), options.getMarker(), options.getMaxResults(), options.getPrefix(), delimiter); for (B2ObjectList.Entry entry : list.files()) { if (entry.action() == Action.FOLDER) {