storagehub-client-library/src/main/java/org/gcube/common/storagehub/client/dsl/Util.java

28 lines
1.2 KiB
Java
Raw Normal View History

package org.gcube.common.storagehub.client.dsl;
2022-06-15 11:43:26 +02:00
import org.gcube.common.security.ContextBean;
import org.gcube.common.security.ContextBean.Type;
import org.gcube.common.storagehub.client.proxies.ItemManagerClient;
import org.gcube.common.storagehub.model.exceptions.BackendGenericError;
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 Util {
protected static ItemContainer<? extends Item> getContainerFromItem(Item item,ItemManagerClient itemClient){
if (item instanceof AbstractFileItem)
return new FileContainer(itemClient, (AbstractFileItem)item);
else if (item instanceof FolderItem)
return new FolderContainer(itemClient, (FolderItem)item);
else return new GenericItemContainer(itemClient, item);
}
public static String getVREGroupFromContext(String context) throws BackendGenericError{
2022-06-15 11:43:26 +02:00
ContextBean bean = new ContextBean(context);
if (!bean.is(Type.VRE)) throw new BackendGenericError(context+ " is not a VRE context");
String entireScopeName= bean.toString().replaceAll("^/(.*)/?$", "$1").replaceAll("/", "-");
return entireScopeName;
}
}