diff --git a/src/main/java/org/gcube/common/storagehub/client/dsl/ContainerType.java b/src/main/java/org/gcube/common/storagehub/client/dsl/ContainerType.java new file mode 100644 index 0000000..b4f4669 --- /dev/null +++ b/src/main/java/org/gcube/common/storagehub/client/dsl/ContainerType.java @@ -0,0 +1,9 @@ +package org.gcube.common.storagehub.client.dsl; + +public enum ContainerType { + + FOLDER, + FILE, + GENERIC_ITEM + +} diff --git a/src/main/java/org/gcube/common/storagehub/client/dsl/FileContainer.java b/src/main/java/org/gcube/common/storagehub/client/dsl/FileContainer.java index c505aae..23d311b 100644 --- a/src/main/java/org/gcube/common/storagehub/client/dsl/FileContainer.java +++ b/src/main/java/org/gcube/common/storagehub/client/dsl/FileContainer.java @@ -13,4 +13,8 @@ public class FileContainer extends ItemContainer { super(itemclient, fileId); } + public ContainerType getType() { + return ContainerType.FILE; + } + } diff --git a/src/main/java/org/gcube/common/storagehub/client/dsl/FolderContainer.java b/src/main/java/org/gcube/common/storagehub/client/dsl/FolderContainer.java index 01e5e83..09573cc 100644 --- a/src/main/java/org/gcube/common/storagehub/client/dsl/FolderContainer.java +++ b/src/main/java/org/gcube/common/storagehub/client/dsl/FolderContainer.java @@ -1,11 +1,9 @@ package org.gcube.common.storagehub.client.dsl; import java.io.InputStream; -import java.util.List; import org.gcube.common.storagehub.client.proxies.ItemManagerClient; import org.gcube.common.storagehub.model.items.FolderItem; -import org.gcube.common.storagehub.model.items.Item; public class FolderContainer extends ItemContainer{ @@ -19,6 +17,10 @@ public class FolderContainer extends ItemContainer{ super(itemclient, folderId); } + public ContainerType getType() { + return ContainerType.FOLDER; + } + public ListResolver list() { return new ListResolver(itemclient, itemId); } diff --git a/src/main/java/org/gcube/common/storagehub/client/dsl/ItemContainer.java b/src/main/java/org/gcube/common/storagehub/client/dsl/ItemContainer.java index 141f61c..26dfa33 100644 --- a/src/main/java/org/gcube/common/storagehub/client/dsl/ItemContainer.java +++ b/src/main/java/org/gcube/common/storagehub/client/dsl/ItemContainer.java @@ -28,6 +28,12 @@ public class ItemContainer { this.itemId = item.getId(); } + public ContainerType getType() { + return ContainerType.GENERIC_ITEM; + } + + + @SuppressWarnings("unchecked") public I get() throws Exception { if (item==null) return (I)itemclient.get(itemId); diff --git a/src/main/java/org/gcube/common/storagehub/client/dsl/ListResolver.java b/src/main/java/org/gcube/common/storagehub/client/dsl/ListResolver.java index 4ae7f08..e2ac214 100644 --- a/src/main/java/org/gcube/common/storagehub/client/dsl/ListResolver.java +++ b/src/main/java/org/gcube/common/storagehub/client/dsl/ListResolver.java @@ -8,8 +8,6 @@ import java.util.stream.Collectors; import org.gcube.common.storagehub.client.proxies.ItemManagerClient; import org.gcube.common.storagehub.model.NodeConstants; -import org.gcube.common.storagehub.model.items.AbstractFileItem; -import org.gcube.common.storagehub.model.items.FolderItem; import org.gcube.common.storagehub.model.items.Item; public class ListResolver {