From 6975c5648aa4231de015ad10d4f671924235422a Mon Sep 17 00:00:00 2001 From: Lucio Lelii Date: Thu, 21 Jun 2018 10:08:31 +0000 Subject: [PATCH] git-svn-id: https://svn.d4science-ii.research-infrastructures.eu/gcube/trunk/Common/storagehub-client@169378 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../common/storagehub/client/dsl/FolderContainer.java | 6 +++++- .../common/storagehub/client/dsl/ItemContainer.java | 11 +++++++++-- .../common/storagehub/client/dsl/OpenResolver.java | 3 +++ 3 files changed, 17 insertions(+), 3 deletions(-) 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 4214c54..69c975c 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 @@ -4,7 +4,6 @@ import java.io.InputStream; import java.util.List; import org.gcube.common.storagehub.client.proxies.ItemManagerClient; -import org.gcube.common.storagehub.model.items.AbstractFileItem; import org.gcube.common.storagehub.model.items.FolderItem; import org.gcube.common.storagehub.model.items.Item; @@ -37,4 +36,9 @@ public class FolderContainer extends ItemContainer{ return itemclient.uploadFile(stream, this.itemId , filename, description); } + public FolderContainer newFolder(String name, String description) throws Exception { + String newFolderId = itemclient.createFolder(this.itemId, name, description); + return new FolderContainer(itemclient, newFolderId); + } + } 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 f85c6f4..b59a8d8 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 @@ -1,10 +1,13 @@ package org.gcube.common.storagehub.client.dsl; +import java.util.List; + import org.gcube.common.storagehub.client.StreamDescriptor; import org.gcube.common.storagehub.client.proxies.ItemManagerClient; +import org.gcube.common.storagehub.model.NodeConstants; import org.gcube.common.storagehub.model.items.Item; -public abstract class ItemContainer { +public class ItemContainer { protected ItemManagerClient itemclient; @@ -28,5 +31,9 @@ public abstract class ItemContainer { public StreamDescriptor download() { return itemclient.download(this.itemId); } - + + public List getAnchestors() { + return itemclient.getAnchestors(this.itemId, NodeConstants.ACCOUNTING_NAME); + } + } diff --git a/src/main/java/org/gcube/common/storagehub/client/dsl/OpenResolver.java b/src/main/java/org/gcube/common/storagehub/client/dsl/OpenResolver.java index 48d6c70..1d345e4 100644 --- a/src/main/java/org/gcube/common/storagehub/client/dsl/OpenResolver.java +++ b/src/main/java/org/gcube/common/storagehub/client/dsl/OpenResolver.java @@ -21,5 +21,8 @@ public class OpenResolver { else throw new RuntimeException("this item is not a folder"); } + public ItemContainer asItem() { + return new ItemContainer(itemclient, item); + } }