ref 11724: SAI - Update to StorageHUB

https://support.d4science.org/issues/11724

Updated to StorageHub 

git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/statistical-algorithms-importer@171310 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Giancarlo Panichi 2018-09-04 10:48:57 +00:00
parent e0ae472762
commit a825535370
1 changed files with 20 additions and 15 deletions

View File

@ -182,8 +182,6 @@ public class FilesStorage {
}
/**
* TODO
*
*
* @param user
* user
@ -195,23 +193,30 @@ public class FilesStorage {
* exception
*/
public void deleteFolder(String user, String parentId, String folderName) throws StatAlgoImporterServiceException {
Workspace ws;
try {
logger.info("Delete folder: [user=" + user + ", parentId=" + parentId + ", folderName=" + folderName + "]");
ws = HomeLibrary.getUserWorkspace(user);
StorageHubClient shc = new StorageHubClient();
OpenResolver openParentResolver = shc.open(parentId);
WorkspaceItem workSpaceItem = ws.getItem(parentId);
if (!workSpaceItem.isFolder()) {
throw new StatAlgoImporterServiceException("No valid project folder!");
FolderContainer parentFolderContainer = openParentResolver.asFolder();
ListResolver listResolver = parentFolderContainer.findByName(folderName);
List<? extends Item> items = listResolver.getItems();
if (items == null || items.isEmpty()) {
logger.debug("No folder found");
return;
} else {
Item item = items.get(0);
logger.debug("Item: " + item);
if (item != null) {
OpenResolver openResolver = shc.open(item.getId());
FolderContainer folderContainer = openResolver.asFolder();
folderContainer.delete();
return;
} else {
logger.debug("No folder found");
return;
}
}
WorkspaceItem target = ws.find(folderName, parentId);
if (target != null) {
ws.removeItems(target.getId());
}
return;
} catch (Throwable e) {
logger.error("Delete folder on workspace: " + e.getLocalizedMessage(), e);
throw new StatAlgoImporterServiceException(e.getLocalizedMessage());