/** * @see ListContainerOptions#inDirectory(String) */ public static ListContainerOptions inDirectory(String directory) { ListContainerOptions options = new ListContainerOptions(); return options.inDirectory(directory); }
/** * @see ListContainerOptions#inDirectory(String) */ public static ListContainerOptions inDirectory(String directory) { ListContainerOptions options = new ListContainerOptions(); return options.inDirectory(directory); }
/** * @see ListContainerOptions#inDirectory(String) * @deprecated superseded by ListContainerOptions.prefix and ListContainerOptions.delimiter. */ @Deprecated public static ListContainerOptions inDirectory(String directory) { ListContainerOptions options = new ListContainerOptions(); return options.inDirectory(directory); }
/** * @see ListContainerOptions#inDirectory(String) */ public static ListContainerOptions inDirectory(String directory) { ListContainerOptions options = new ListContainerOptions(); return options.inDirectory(directory); }
/** * @see ListContainerOptions#inDirectory(String) * @deprecated superseded by ListContainerOptions.prefix and ListContainerOptions.delimiter. */ @Deprecated public static ListContainerOptions inDirectory(String directory) { ListContainerOptions options = new ListContainerOptions(); return options.inDirectory(directory); }
/** * @see ListContainerOptions#inDirectory(String) * @deprecated superseded by ListContainerOptions.prefix and ListContainerOptions.delimiter. */ @Deprecated public static ListContainerOptions inDirectory(String directory) { ListContainerOptions options = new ListContainerOptions(); return options.inDirectory(directory); }
/** * @see ListContainerOptions#inDirectory(String) * @deprecated superseded by ListContainerOptions.prefix and ListContainerOptions.delimiter. */ @Deprecated public static ListContainerOptions inDirectory(String directory) { ListContainerOptions options = new ListContainerOptions(); return options.inDirectory(directory); }
@Override public Set<? extends BlobMetadata> execute(final String containerName, final ListContainerOptions options) { final List<Iterable<? extends BlobMetadata>> lists = newArrayList(); Iterable<? extends StorageMetadata> pwdList = lister.execute(containerName, options); for (StorageMetadata md : filter(pwdList, new Predicate<StorageMetadata>() { @Override public boolean apply(StorageMetadata input) { return (input.getType() == StorageType.FOLDER || input.getType() == StorageType.RELATIVE_PATH) && options.isRecursive(); } })) { String directory = (options.getDir() != null) ? options.getDir() + "/" + md.getName() : md.getName(); lists.add(execute(containerName, options.clone().inDirectory(directory))); } lists.add(transform(filter(pwdList, new Predicate<StorageMetadata>() { @Override public boolean apply(StorageMetadata input) { return input.getType() == StorageType.BLOB; } }), new Function<StorageMetadata, BlobMetadata>() { @Override public BlobMetadata apply(StorageMetadata from) { return (BlobMetadata) from; } })); return newLinkedHashSet(concat(lists)); } }
@Override public Set<? extends BlobMetadata> execute(final String containerName, final ListContainerOptions options) { final List<Iterable<? extends BlobMetadata>> lists = newArrayList(); Iterable<? extends StorageMetadata> pwdList = lister.execute(containerName, options); for (StorageMetadata md : filter(pwdList, new Predicate<StorageMetadata>() { @Override public boolean apply(StorageMetadata input) { return (input.getType() == StorageType.FOLDER || input.getType() == StorageType.RELATIVE_PATH) && options.isRecursive(); } })) { String directory = (options.getDir() != null) ? options.getDir() + "/" + md.getName() : md.getName(); lists.add(execute(containerName, options.clone().inDirectory(directory))); } lists.add(transform(filter(pwdList, new Predicate<StorageMetadata>() { @Override public boolean apply(StorageMetadata input) { return input.getType() == StorageType.BLOB; } }), new Function<StorageMetadata, BlobMetadata>() { @Override public BlobMetadata apply(StorageMetadata from) { return (BlobMetadata) from; } })); return newLinkedHashSet(concat(lists)); } }
@Override public ListenableFuture<BoundedSet<? extends DirectoryEntry>> listDirectory(String directoryName, ListOptions... optionsList) { org.jclouds.blobstore.options.ListContainerOptions options = container2ContainerListOptions.apply(optionsList); String container = directoryName; if (directoryName.indexOf('/') != -1) { container = directoryName.substring(0, directoryName.indexOf('/')); String path = directoryName.substring(directoryName.indexOf('/') + 1); if (!path.equals("")) options.inDirectory(path); } return Futures.transform(blobStore.list(container, options), resource2ObjectList, userExecutor); }
@Test public void testPath() { ListContainerOptions options = new ListContainerOptions(); options.inDirectory("test"); assertEquals(options.getDir(), "test"); }
@Test public void testPath() { ListContainerOptions options = new ListContainerOptions(); options.inDirectory("test"); assertEquals(options.getDir(), "test"); }
@Test public void testTwoOptions() { ListContainerOptions options = new ListContainerOptions(); options.inDirectory("test").maxResults(1); assertEquals(options.getDir(), "test"); assertEquals(options.getMaxResults(), Integer.valueOf(1)); }
@Test public void testTwoOptions() { ListContainerOptions options = new ListContainerOptions(); options.inDirectory("test").maxResults(1); assertEquals(options.getDir(), "test"); assertEquals(options.getMaxResults(), Integer.valueOf(1)); }
@Test public void testList_RootNonRecursive() throws IOException { blobStore.createContainerInLocation(null, CONTAINER_NAME); // Testing list for an empty container checkForContainerContent(CONTAINER_NAME, null); TestUtils.createBlobsInContainer(CONTAINER_NAME, "a"); ListContainerOptions options = ListContainerOptions.Builder .withDetails() .inDirectory(""); PageSet<? extends StorageMetadata> res = blobStore.list(CONTAINER_NAME, options); assertTrue(res.size() == 1); assertEquals(res.iterator().next().getName(), "a"); }
@Test(dataProvider = "ignoreOnMacOSX") public void testListDirectoryBlobsS3FS() { blobStore.createContainerInLocation(null, CONTAINER_NAME); checkForContainerContent(CONTAINER_NAME, null); String d = TestUtils.createRandomBlobKey("directory-", ""); blobStore.putBlob(CONTAINER_NAME, createDirBlob(d + File.separator)); assertTrue(blobStore.blobExists(CONTAINER_NAME, d + File.separator)); ListContainerOptions options = ListContainerOptions.Builder .withDetails() .inDirectory(""); PageSet<? extends StorageMetadata> res = blobStore.list(CONTAINER_NAME, options); assertTrue(res.size() == 1); assertEquals(res.iterator().next().getName(), d + File.separator); }
public ListContainerOptions apply( org.jclouds.openstack.swift.options.ListContainerOptions[] optionsList) { ListContainerOptions options = new ListContainerOptions(); if (optionsList.length != 0) { if (optionsList[0].getPath() != null && !optionsList[0].getPath().equals("")) { options.inDirectory(optionsList[0].getPath()); } if (optionsList[0].getPrefix() != null && !optionsList[0].getPrefix().equals("")) { options.inDirectory(optionsList[0].getPrefix()); options.recursive(); } if (optionsList[0].getMarker() != null) { options.afterMarker(optionsList[0].getMarker()); } options.maxResults(optionsList[0].getMaxResults()); } return options; } }
public ListContainerOptions apply(ListBucketOptions[] optionsList) { ListContainerOptions options = new ListContainerOptions(); if (optionsList.length != 0) { if (optionsList[0].getDelimiter() == null) { options.recursive(); } else if (!optionsList[0].getDelimiter().equals("/")) { throw new IllegalArgumentException("only '/' is allowed as a blobstore delimiter"); } if (optionsList[0].getMarker() != null) { options.afterMarker(optionsList[0].getMarker()); } if (optionsList[0].getMaxResults() != null) { options.maxResults(optionsList[0].getMaxResults()); } if (optionsList[0].getPrefix() != null) { options.inDirectory(optionsList[0].getPrefix()); } } return options; } }
public ListContainerOptions apply(ListBlobsOptions[] optionsList) { ListContainerOptions options = new ListContainerOptions(); if (optionsList.length != 0) { if (optionsList[0].getDelimiter() == null) { options.recursive(); } else if (!optionsList[0].getDelimiter().equals("/")) { throw new IllegalArgumentException("only '/' is allowed as a blobstore delimiter"); } if (optionsList[0].getMarker() != null) { options.afterMarker(optionsList[0].getMarker()); } if (optionsList[0].getMaxResults() != null) { options.maxResults(optionsList[0].getMaxResults()); } if (optionsList[0].getPrefix() != null) { options.inDirectory(optionsList[0].getPrefix()); } if (optionsList[0].getIncludeMetadata()) { options.withDetails(); } } return options; } }
public ListContainerOptions apply(ListBucketOptions[] optionsList) { ListContainerOptions options = new ListContainerOptions(); if (optionsList.length != 0) { if (optionsList[0].getDelimiter() == null) { options.recursive(); } else { options.delimiter(optionsList[0].getDelimiter()); } if (optionsList[0].getMarker() != null) { options.afterMarker(optionsList[0].getMarker()); } if (optionsList[0].getMaxResults() != null) { options.maxResults(optionsList[0].getMaxResults()); } if (optionsList[0].getPrefix() != null) { options.inDirectory(optionsList[0].getPrefix()); } } return options; } }