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 a2beb13..0f0f7ad 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 @@ -27,8 +27,11 @@ public abstract class ItemContainer { this.itemId = item.getId(); } + protected String getId() { + return this.itemId; + } + public abstract ContainerType getType(); - @SuppressWarnings("unchecked") @@ -37,6 +40,11 @@ public abstract class ItemContainer { else return item; } + private I get(boolean reset) { + this.item = (I)itemclient.get(itemId); + return this.item; + } + public StreamDescriptor download(String ... nodeIdsToExclude) { return itemclient.download(this.itemId, nodeIdsToExclude); } @@ -49,12 +57,14 @@ public abstract class ItemContainer { itemclient.delete(this.itemId); } - public void rename(String newName) { - itemclient.rename(this.itemId, newName); + public OpenResolver rename(String newName) { + return new OpenResolver(this.get(true), itemclient); } - public void move(FolderContainer folder) { - itemclient.move(this.itemId, folder.get().getId()); + public OpenResolver move(FolderContainer folder) { + return new OpenResolver(this.get(true), itemclient); + + } public FolderContainer getRootSharedFolder() {