package org.gcube.common.storagehub.client.dsl; 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 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{ 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; } }