#23225 Updated the getSharedFolderMembers method
This commit is contained in:
parent
ad890bf313
commit
6ef3fe98bc
|
@ -13,6 +13,7 @@
|
|||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" path="src/test/resources"/>
|
||||
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
|
||||
<attributes>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
|
@ -32,6 +33,7 @@
|
|||
</classpathentry>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
|
||||
<attributes>
|
||||
<attribute name="module" value="true"/>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
|
|
|
@ -1,7 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
|
||||
|
||||
|
||||
<wb-module deploy-name="storagehub-client-wrapper">
|
||||
|
||||
|
||||
<wb-resource deploy-path="/" source-path="/src/main/java"/>
|
||||
|
||||
|
||||
<wb-resource deploy-path="/" source-path="/src/main/resources"/>
|
||||
|
||||
|
||||
<wb-resource deploy-path="/" source-path="/.apt_generated"/>
|
||||
|
||||
|
||||
</wb-module>
|
||||
|
||||
|
||||
</project-modules>
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
All notable changes to this project will be documented in this file.
|
||||
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [v1-1-1-SNAPSHOT] - 2022-03-08
|
||||
## [v1.1.2-SNAPSHOT] - 2022-04-28
|
||||
|
||||
#### Enhancements
|
||||
|
||||
[#22782] Moved to SHUB(1.x, 3.x)
|
||||
- [#23225] Updated the method to read the members of VREs
|
||||
|
||||
## [v1-1-0] - 2021-05-12
|
||||
|
||||
|
|
10
pom.xml
10
pom.xml
|
@ -1,5 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
|
@ -10,7 +11,7 @@
|
|||
</parent>
|
||||
<groupId>org.gcube.common</groupId>
|
||||
<artifactId>storagehub-client-wrapper</artifactId>
|
||||
<version>1.1.1-SNAPSHOT</version>
|
||||
<version>1.1.2-SNAPSHOT</version>
|
||||
<name>storagehub-client-wrapper</name>
|
||||
<description>This is a wrapper of storagehub-client library. It allows to interact with storagehub in a simplified way by exposing several utilities. Moreover, It exposes by another inteface java beans as defined in (the old) HL interfaces</description>
|
||||
<scm>
|
||||
|
@ -19,9 +20,12 @@
|
|||
<url>https://code-repo.d4science.org/gCubeSystem/${project.artifactId}</url>
|
||||
</scm>
|
||||
<properties>
|
||||
<maven.compiler.source>1.8</maven.compiler.source>
|
||||
<maven.compiler.target>1.8</maven.compiler.target>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<distroDirectory>distro</distroDirectory>
|
||||
</properties>
|
||||
|
||||
<dependencyManagement>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
|
@ -88,6 +92,7 @@
|
|||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
<version>1.6.4</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
|
@ -96,6 +101,7 @@
|
|||
<version>4.12</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
<build>
|
||||
<resources>
|
||||
|
|
|
@ -2,6 +2,7 @@ package org.gcube.common.storagehubwrapper.server;
|
|||
|
||||
import java.io.InputStream;
|
||||
import java.net.URL;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
@ -36,14 +37,12 @@ import org.gcube.common.storagehub.model.items.nodes.Accounting;
|
|||
import org.gcube.common.storagehub.model.items.nodes.ImageContent;
|
||||
import org.gcube.common.storagehub.model.service.Version;
|
||||
import org.gcube.common.storagehubwrapper.server.converter.HLMapper;
|
||||
import org.gcube.common.storagehubwrapper.server.converter.ObjectMapper;
|
||||
import org.gcube.common.storagehubwrapper.shared.ACLType;
|
||||
import org.gcube.common.storagehubwrapper.shared.tohl.WorkspaceSharedFolder;
|
||||
import org.gcube.common.storagehubwrapper.shared.tohl.exceptions.ItemNotFoundException;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
|
||||
// TODO: Auto-generated Javadoc
|
||||
/**
|
||||
* The Class StorageHubClientService.
|
||||
|
@ -53,7 +52,6 @@ import org.slf4j.LoggerFactory;
|
|||
*/
|
||||
public class StorageHubClientService {
|
||||
|
||||
|
||||
/** The logger. */
|
||||
private static Logger logger = LoggerFactory.getLogger(StorageHubClientService.class);
|
||||
|
||||
|
@ -66,10 +64,8 @@ public class StorageHubClientService {
|
|||
/** The authorization token. */
|
||||
private String authorizationToken;
|
||||
|
||||
|
||||
private StorageHubClient shClient;
|
||||
|
||||
|
||||
/**
|
||||
* Instantiates a new storage hub service util.
|
||||
*
|
||||
|
@ -83,7 +79,7 @@ public class StorageHubClientService {
|
|||
this.authorizationToken = authorizationToken;
|
||||
setContextProviders(scope, authorizationToken);
|
||||
shClient = new StorageHubClient();
|
||||
logger.info("Instancied the "+StorageHubClientService.class.getSimpleName()+" as: "+this.toString());
|
||||
logger.info("Instancied the " + StorageHubClientService.class.getSimpleName() + " as: " + this.toString());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -92,10 +88,11 @@ public class StorageHubClientService {
|
|||
* @param scope the scope
|
||||
* @param authorizationToken the authorization token
|
||||
*/
|
||||
private void setContextProviders(String scope, String authorizationToken){
|
||||
private void setContextProviders(String scope, String authorizationToken) {
|
||||
ScopeProvider.instance.set(scope);
|
||||
SecurityTokenProvider.instance.set(authorizationToken);
|
||||
logger.debug("Saved the contexts [scope: "+scope+", token: "+authorizationToken.substring(0,15)+"-MASKED]");
|
||||
logger.debug(
|
||||
"Saved the contexts [scope: " + scope + ", token: " + authorizationToken.substring(0, 15) + "-MASKED]");
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -122,7 +119,6 @@ public class StorageHubClientService {
|
|||
return trash;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the children.
|
||||
*
|
||||
|
@ -132,16 +128,18 @@ public class StorageHubClientService {
|
|||
* @return the children
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public List<? extends Item> getChildren(String id, boolean withAccounting, boolean withMapProperties) throws Exception{
|
||||
public List<? extends Item> getChildren(String id, boolean withAccounting, boolean withMapProperties)
|
||||
throws Exception {
|
||||
setContextProviders(scope, authorizationToken);
|
||||
logger.trace("Requesting getChildren for id: "+id+" [withAccounting: "+withAccounting+", withMapProperties: "+withMapProperties+"]");
|
||||
logger.trace("Requesting getChildren for id: " + id + " [withAccounting: " + withAccounting
|
||||
+ ", withMapProperties: " + withMapProperties + "]");
|
||||
ListResolverTyped resolverTyped = shClient.open(id).asFolder().list();
|
||||
ListResolver theResolver = resolverTyped.withContent();
|
||||
|
||||
if(withAccounting)
|
||||
if (withAccounting)
|
||||
theResolver = theResolver.withAccounting();
|
||||
|
||||
if(withMapProperties)
|
||||
if (withMapProperties)
|
||||
theResolver = theResolver.withMetadata();
|
||||
|
||||
return theResolver.getItems();
|
||||
|
@ -157,26 +155,27 @@ public class StorageHubClientService {
|
|||
* @return the children
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public List<? extends Item> getChildren(String id, boolean withAccounting, boolean withMapProperties, boolean includeHidden) throws Exception{
|
||||
public List<? extends Item> getChildren(String id, boolean withAccounting, boolean withMapProperties,
|
||||
boolean includeHidden) throws Exception {
|
||||
setContextProviders(scope, authorizationToken);
|
||||
logger.trace("Requesting getChildren for id: "+id+" [withAccounting: "+withAccounting+", withMapProperties: "+withMapProperties+"]");
|
||||
logger.trace("Requesting getChildren for id: " + id + " [withAccounting: " + withAccounting
|
||||
+ ", withMapProperties: " + withMapProperties + "]");
|
||||
if (!includeHidden) {
|
||||
return getChildren(id, withAccounting, withMapProperties);
|
||||
}
|
||||
|
||||
ListResolver theResolver = shClient.open(id).asFolder().list().includeHidden().withContent();
|
||||
|
||||
if(withAccounting)
|
||||
if (withAccounting)
|
||||
theResolver = theResolver.withAccounting();
|
||||
|
||||
if(withMapProperties)
|
||||
if (withMapProperties)
|
||||
theResolver = theResolver.withMetadata();
|
||||
|
||||
return theResolver.getItems();
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the filtered children.
|
||||
*
|
||||
|
@ -187,22 +186,22 @@ public class StorageHubClientService {
|
|||
* @return the filtered children
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public List<? extends Item> getFilteredChildren(String id, Class<? extends Item> aType, boolean withAccounting, boolean withMapProperties) throws Exception{
|
||||
public List<? extends Item> getFilteredChildren(String id, Class<? extends Item> aType, boolean withAccounting,
|
||||
boolean withMapProperties) throws Exception {
|
||||
setContextProviders(scope, authorizationToken);
|
||||
|
||||
ListResolver resolverTyped = shClient.open(id).asFolder().list().ofType(aType);
|
||||
ListResolver theResolver = resolverTyped.withContent();
|
||||
|
||||
if(withAccounting)
|
||||
if (withAccounting)
|
||||
theResolver = theResolver.withAccounting();
|
||||
|
||||
if(withMapProperties)
|
||||
if (withMapProperties)
|
||||
theResolver = theResolver.withMetadata();
|
||||
|
||||
return theResolver.getItems();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the item.
|
||||
*
|
||||
|
@ -212,22 +211,22 @@ public class StorageHubClientService {
|
|||
* @return the item
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public Item getItem(String itemId, boolean withAccounting, boolean withMetadata) throws Exception{
|
||||
public Item getItem(String itemId, boolean withAccounting, boolean withMetadata) throws Exception {
|
||||
setContextProviders(scope, authorizationToken);
|
||||
ItemContainer<Item> itemCont;
|
||||
|
||||
//I'M GOING TO REMAIN THESE OPTIONS FOR POSSIBLE FUTURE SUPPORTING ON SHUB
|
||||
if(withMetadata) {
|
||||
itemCont = shClient.open(itemId).asItem(); //TODO
|
||||
}else if(withAccounting){
|
||||
itemCont = shClient.open(itemId).asItem(); //TODO
|
||||
}
|
||||
else {
|
||||
// I'M GOING TO REMAIN THESE OPTIONS FOR POSSIBLE FUTURE SUPPORTING ON SHUB
|
||||
if (withMetadata) {
|
||||
itemCont = shClient.open(itemId).asItem(); // TODO
|
||||
} else if (withAccounting) {
|
||||
itemCont = shClient.open(itemId).asItem(); // TODO
|
||||
} else {
|
||||
itemCont = shClient.open(itemId).asItem();
|
||||
}
|
||||
|
||||
return itemCont.get();
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param folderId
|
||||
|
@ -256,12 +255,10 @@ public class StorageHubClientService {
|
|||
* @return the item
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public Item getItem(String itemId) throws Exception{
|
||||
return getItem(itemId,false,true);
|
||||
public Item getItem(String itemId) throws Exception {
|
||||
return getItem(itemId, false, true);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Sets the metadata and returns the Item with metadata updated.
|
||||
*
|
||||
|
@ -270,15 +267,13 @@ public class StorageHubClientService {
|
|||
* @return the item
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public Item setMetadata(String itemId, Metadata metadata) throws Exception{
|
||||
public Item setMetadata(String itemId, Metadata metadata) throws Exception {
|
||||
setContextProviders(scope, authorizationToken);
|
||||
ItemContainer<Item> itemCont = shClient.open(itemId).asItem();
|
||||
itemCont.setMetadata(metadata);
|
||||
return itemCont.get();
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Gets the metadata.
|
||||
*
|
||||
|
@ -286,17 +281,16 @@ public class StorageHubClientService {
|
|||
* @return the metadata
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public Map<String, Object> getMetadata(String itemId) throws Exception{
|
||||
public Map<String, Object> getMetadata(String itemId) throws Exception {
|
||||
setContextProviders(scope, authorizationToken);
|
||||
ItemContainer<Item> itemCont = shClient.open(itemId).asItem();
|
||||
Metadata metadata = shClient.open(itemId).asItem().get().getMetadata();
|
||||
if(metadata!=null)
|
||||
if (metadata != null)
|
||||
return metadata.getMap();
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the folder container.
|
||||
*
|
||||
|
@ -304,12 +298,11 @@ public class StorageHubClientService {
|
|||
* @return the folder container
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public FolderContainer getFolderContainer(String itemId) throws Exception{
|
||||
public FolderContainer getFolderContainer(String itemId) throws Exception {
|
||||
setContextProviders(scope, authorizationToken);
|
||||
return shClient.open(itemId).asFolder();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the parents.
|
||||
*
|
||||
|
@ -320,15 +313,14 @@ public class StorageHubClientService {
|
|||
public List<? extends Item> getParents(String itemId) throws Exception {
|
||||
setContextProviders(scope, authorizationToken);
|
||||
ListResolver toReturn = shClient.open(itemId).asItem().getAnchestors();
|
||||
if(toReturn==null || toReturn.getItems()==null){
|
||||
logger.warn("Parent List of item id "+itemId+" is null");
|
||||
if (toReturn == null || toReturn.getItems() == null) {
|
||||
logger.warn("Parent List of item id " + itemId + " is null");
|
||||
return null;
|
||||
}
|
||||
return toReturn.getItems();
|
||||
}
|
||||
|
||||
//TODO MAP OF SHARED ROOT ID
|
||||
|
||||
// TODO MAP OF SHARED ROOT ID
|
||||
|
||||
/**
|
||||
* Gets the id shared folder.
|
||||
|
@ -342,7 +334,6 @@ public class StorageHubClientService {
|
|||
return getRootSharedFolder(itemId).getId();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the root shared folder.
|
||||
*
|
||||
|
@ -356,7 +347,6 @@ public class StorageHubClientService {
|
|||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Checks if is item shared.
|
||||
*
|
||||
|
@ -370,7 +360,6 @@ public class StorageHubClientService {
|
|||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Can write.
|
||||
*
|
||||
|
@ -383,7 +372,6 @@ public class StorageHubClientService {
|
|||
return shClient.open(folderContainerId).asFolder().canWrite();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the root shared folder.
|
||||
*
|
||||
|
@ -395,12 +383,13 @@ public class StorageHubClientService {
|
|||
|
||||
FolderContainer rootSharedFolder = null;
|
||||
Item item = itemContainer.get();
|
||||
if(item.isShared()){
|
||||
if (item.isShared()) {
|
||||
rootSharedFolder = itemContainer.getRootSharedFolder();
|
||||
}else
|
||||
throw new Exception("The item with id: "+item.getId() +" is not shared");
|
||||
} else
|
||||
throw new Exception("The item with id: " + item.getId() + " is not shared");
|
||||
|
||||
Validate.notNull(rootSharedFolder, "The root shared folder with children id "+item.getId()+" does not exist");
|
||||
Validate.notNull(rootSharedFolder,
|
||||
"The root shared folder with children id " + item.getId() + " does not exist");
|
||||
return rootSharedFolder.get();
|
||||
}
|
||||
|
||||
|
@ -419,7 +408,6 @@ public class StorageHubClientService {
|
|||
return getItem(folderContainer.get().getId(), false, true);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the VRE folders id.
|
||||
*
|
||||
|
@ -433,21 +421,18 @@ public class StorageHubClientService {
|
|||
WorkspaceManagerClient wsclient = AbstractPlugin.workspace().build();
|
||||
try {
|
||||
List<? extends Item> list = wsclient.getVreFolders(ACCOUNTING_HL_NODE_NAME);
|
||||
toReturn =list.iterator().next().getParentId();
|
||||
toReturn = list.iterator().next().getParentId();
|
||||
} catch (Exception e) {
|
||||
logger.info("This user has no VRE Folders", e);
|
||||
return null;
|
||||
}
|
||||
}catch (Exception e) {
|
||||
logger.error("Get VRE Folders Id ",e);
|
||||
//e.printStackTrace();
|
||||
} catch (Exception e) {
|
||||
logger.error("Get VRE Folders Id ", e);
|
||||
// e.printStackTrace();
|
||||
}
|
||||
return toReturn;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Gets the user acl for folder id.
|
||||
*
|
||||
|
@ -468,7 +453,8 @@ public class StorageHubClientService {
|
|||
List<ACL> acls = client.getACL(folderId);
|
||||
SharedFolder sharedFolder = (SharedFolder) theFolder;
|
||||
|
||||
boolean found = false; //this is needed because in case o VRE Foder the permission is assigned to the group and not to the user.
|
||||
boolean found = false; // this is needed because in case o VRE Foder the permission is assigned to the
|
||||
// group and not to the user.
|
||||
for (ACL acl : acls) {
|
||||
if (acl.getPricipal().compareTo(userName) == 0) {
|
||||
found = true;
|
||||
|
@ -477,7 +463,8 @@ public class StorageHubClientService {
|
|||
}
|
||||
if (!found && sharedFolder.isVreFolder()) {
|
||||
for (ACL acl : acls) {
|
||||
if (acl.getPricipal().startsWith(infrastructureName));
|
||||
if (acl.getPricipal().startsWith(infrastructureName))
|
||||
;
|
||||
return acl.getAccessTypes().get(0).toString();
|
||||
}
|
||||
}
|
||||
|
@ -485,7 +472,6 @@ public class StorageHubClientService {
|
|||
return "UNDEFINED";
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the item children count.
|
||||
*
|
||||
|
@ -510,38 +496,38 @@ public class StorageHubClientService {
|
|||
* @return the item
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public Item uploadFile(String folderId, InputStream is, String fileName, String fileDescription) throws Exception{
|
||||
public Item uploadFile(String folderId, InputStream is, String fileName, String fileDescription) throws Exception {
|
||||
|
||||
setContextProviders(scope, authorizationToken);
|
||||
FileContainer fileCont = shClient.open(folderId).asFolder().uploadFile(is, fileName, fileDescription);
|
||||
return fileCont.get();
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Download file.
|
||||
*
|
||||
* @param itemId the item id
|
||||
* @param versionName the version name. If is null or empty returns the latest version of file
|
||||
* @param versionName the version name. If is null or empty returns the
|
||||
* latest version of file
|
||||
* @param nodeIdsToExclude the node ids to exclude
|
||||
* @return the stream descriptor
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public StreamDescriptor downloadFile(String itemId, String versionName, String... nodeIdsToExclude) throws Exception{
|
||||
public StreamDescriptor downloadFile(String itemId, String versionName, String... nodeIdsToExclude)
|
||||
throws Exception {
|
||||
|
||||
setContextProviders(scope, authorizationToken);
|
||||
StreamDescriptor streamDesc;
|
||||
if(versionName!=null && !versionName.isEmpty()){
|
||||
if (versionName != null && !versionName.isEmpty()) {
|
||||
streamDesc = shClient.open(itemId).asFile().downloadSpecificVersion(versionName);
|
||||
}else{
|
||||
} else {
|
||||
streamDesc = shClient.open(itemId).asFile().download(nodeIdsToExclude);
|
||||
}
|
||||
return new StreamDescriptor(streamDesc.getStream(), streamDesc.getFileName(), streamDesc.getContentType(), streamDesc.getContentLenght());
|
||||
return new StreamDescriptor(streamDesc.getStream(), streamDesc.getFileName(), streamDesc.getContentType(),
|
||||
streamDesc.getContentLenght());
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Download folder.
|
||||
*
|
||||
|
@ -550,16 +536,15 @@ public class StorageHubClientService {
|
|||
* @return the stream descriptor
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public StreamDescriptor downloadFolder(String folderId, String nodeIdsToExclude) throws Exception{
|
||||
public StreamDescriptor downloadFolder(String folderId, String nodeIdsToExclude) throws Exception {
|
||||
|
||||
setContextProviders(scope, authorizationToken);
|
||||
StreamDescriptor streamDesc = shClient.open(folderId).asFolder().download(nodeIdsToExclude);
|
||||
return new StreamDescriptor(streamDesc.getStream(), streamDesc.getFileName(), streamDesc.getContentType(), streamDesc.getContentLenght());
|
||||
return new StreamDescriptor(streamDesc.getStream(), streamDesc.getFileName(), streamDesc.getContentType(),
|
||||
streamDesc.getContentLenght());
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Upload archive.
|
||||
*
|
||||
|
@ -569,15 +554,13 @@ public class StorageHubClientService {
|
|||
* @return the item
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public Item uploadArchive(String folderId, InputStream is, String extractionFolderName) throws Exception{
|
||||
public Item uploadArchive(String folderId, InputStream is, String extractionFolderName) throws Exception {
|
||||
|
||||
setContextProviders(scope, authorizationToken);
|
||||
FolderContainer folderCont = shClient.open(folderId).asFolder().uploadArchive(is, extractionFolderName);
|
||||
return folderCont.get();
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Gets the shared folder members.
|
||||
*
|
||||
|
@ -589,13 +572,35 @@ public class StorageHubClientService {
|
|||
|
||||
setContextProviders(scope, authorizationToken);
|
||||
Item item = getItem(folderId, false, true);
|
||||
if(item instanceof SharedFolder){
|
||||
return ObjectMapper.toListLogins((SharedFolder)item);
|
||||
}else
|
||||
throw new Exception("The item with "+folderId+ " is not a Shared Folder");
|
||||
|
||||
List<String> users = null;
|
||||
if (item instanceof SharedFolder) {
|
||||
SharedFolder sharedFolder = (SharedFolder) item;
|
||||
if (sharedFolder.isVreFolder()) {
|
||||
logger.info("Reading users from VRE folder by shClient.getVreFolderManager");
|
||||
users = shClient.getVreFolderManager(sharedFolder.getTitle()).getUsers();
|
||||
if (users == null) {
|
||||
logger.warn("No users found, returning empty list of logins");
|
||||
return new ArrayList<String>(1);
|
||||
}
|
||||
} else {
|
||||
logger.info("Reading users from ACLs");
|
||||
List<ACL> listACL = shClient.open(folderId).asFolder().getAcls();
|
||||
if (listACL == null) {
|
||||
throw new Exception("The item with " + folderId + " has not a valid ACLs");
|
||||
}
|
||||
users = new ArrayList<String>(listACL.size());
|
||||
for (ACL acl : listACL) {
|
||||
users.add(acl.getPricipal());
|
||||
}
|
||||
}
|
||||
} else {
|
||||
throw new Exception("The item with " + folderId + " is not a Shared Folder");
|
||||
}
|
||||
|
||||
logger.info("Returning " + users.size() + " user/s");
|
||||
return users;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Find by name.
|
||||
|
@ -610,19 +615,17 @@ public class StorageHubClientService {
|
|||
Item item;
|
||||
try {
|
||||
item = getItem(folderId, false, true);
|
||||
}catch (Exception e) {
|
||||
logger.error("Error during get item with id: "+folderId,e);
|
||||
} catch (Exception e) {
|
||||
logger.error("Error during get item with id: " + folderId, e);
|
||||
throw new ItemNotFoundException(e.getMessage());
|
||||
}
|
||||
|
||||
if(item instanceof FolderItem || item instanceof SharedFolder || item instanceof VreFolder){
|
||||
if (item instanceof FolderItem || item instanceof SharedFolder || item instanceof VreFolder) {
|
||||
return shClient.open(folderId).asFolder().findByName(name).withContent().getItems();
|
||||
}else
|
||||
} else
|
||||
throw new Exception("The input folder id is not a folder");
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Search for text.
|
||||
*
|
||||
|
@ -636,27 +639,25 @@ public class StorageHubClientService {
|
|||
Item item;
|
||||
try {
|
||||
item = getItem(folderId, false, true);
|
||||
}catch (Exception e) {
|
||||
logger.error("Error during get item with id: "+folderId,e);
|
||||
} catch (Exception e) {
|
||||
logger.error("Error during get item with id: " + folderId, e);
|
||||
throw new ItemNotFoundException(e.getMessage());
|
||||
}
|
||||
|
||||
if(item instanceof FolderItem || item instanceof SharedFolder || item instanceof VreFolder){
|
||||
//this does not return the trashed items
|
||||
return shClient.open(folderId).asFolder().search(text,true).withContent().getItems();
|
||||
}else
|
||||
if (item instanceof FolderItem || item instanceof SharedFolder || item instanceof VreFolder) {
|
||||
// this does not return the trashed items
|
||||
return shClient.open(folderId).asFolder().search(text, true).withContent().getItems();
|
||||
} else
|
||||
throw new Exception("The input folder id is not a folder");
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Delete item by id.
|
||||
*
|
||||
* @param itemId the item id
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public void deleteItemById(String itemId) throws Exception{
|
||||
public void deleteItemById(String itemId) throws Exception {
|
||||
|
||||
Validate.notNull(itemId, "Bad request to deleteItemById, the itemId is null");
|
||||
setContextProviders(scope, authorizationToken);
|
||||
|
@ -664,36 +665,31 @@ public class StorageHubClientService {
|
|||
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Open trash.
|
||||
*
|
||||
* @return the item
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public Item openTrash() throws Exception{
|
||||
public Item openTrash() throws Exception {
|
||||
|
||||
setContextProviders(scope, authorizationToken);
|
||||
return shClient.openTrash().get();
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Empty trash.
|
||||
*
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public void emptyTrash() throws Exception{
|
||||
public void emptyTrash() throws Exception {
|
||||
|
||||
setContextProviders(scope, authorizationToken);
|
||||
shClient.emptyTrash();
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Restore thrash item.
|
||||
*
|
||||
|
@ -702,29 +698,28 @@ public class StorageHubClientService {
|
|||
* @return the item
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public Item restoreThrashItem(String itemId, String destinationFolderId) throws Exception{
|
||||
public Item restoreThrashItem(String itemId, String destinationFolderId) throws Exception {
|
||||
|
||||
Validate.notNull(itemId, "Bad request to restoreThrashItem, the itemId is null");
|
||||
setContextProviders(scope, authorizationToken);
|
||||
|
||||
GenericItemContainer container = null;
|
||||
if(destinationFolderId==null)
|
||||
if (destinationFolderId == null)
|
||||
container = shClient.restoreThrashItem(itemId);
|
||||
else
|
||||
container = shClient.restoreThrashItem(itemId, destinationFolderId);
|
||||
|
||||
if(container!=null){
|
||||
if (container != null) {
|
||||
Item item = container.get();
|
||||
if(item!=null){
|
||||
if (item != null) {
|
||||
return item;
|
||||
}else
|
||||
} else
|
||||
throw new Exception("Restoring failed, FolderItem is null");
|
||||
}else
|
||||
} else
|
||||
throw new Exception("Restoring failed, contanier is null");
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Move item.
|
||||
*
|
||||
|
@ -733,7 +728,7 @@ public class StorageHubClientService {
|
|||
* @return the abstract file item
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public Item moveItem(String itemId, FolderContainer destFolderContainer) throws Exception{
|
||||
public Item moveItem(String itemId, FolderContainer destFolderContainer) throws Exception {
|
||||
|
||||
Validate.notNull(itemId, "Bad request to moveItem, the itemId is null");
|
||||
Validate.notNull(destFolderContainer, "Bad request to moveItem, the itemId is null");
|
||||
|
@ -743,7 +738,6 @@ public class StorageHubClientService {
|
|||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Copy item.
|
||||
*
|
||||
|
@ -753,18 +747,19 @@ public class StorageHubClientService {
|
|||
* @return the abstract file item
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public AbstractFileItem copyFileItem(String fileItemId, FolderContainer destFolderContainer, String newFileName) throws Exception{
|
||||
public AbstractFileItem copyFileItem(String fileItemId, FolderContainer destFolderContainer, String newFileName)
|
||||
throws Exception {
|
||||
|
||||
Validate.notNull(fileItemId, "Bad request to copyFileItem, the fileItemId is null");
|
||||
Validate.notNull(destFolderContainer, "Bad request to copyFileItem, the destFolderContainer is null");
|
||||
setContextProviders(scope, authorizationToken);
|
||||
FileContainer copyingItem = shClient.open(fileItemId).asFile();
|
||||
String newName = newFileName!=null && !newFileName.isEmpty()?newFileName:"Copy of "+copyingItem.get().getName();
|
||||
String newName = newFileName != null && !newFileName.isEmpty() ? newFileName
|
||||
: "Copy of " + copyingItem.get().getName();
|
||||
FileContainer newItem = copyingItem.copy(destFolderContainer, newName);
|
||||
return newItem.get();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Rename item.
|
||||
*
|
||||
|
@ -773,7 +768,7 @@ public class StorageHubClientService {
|
|||
* @return the item
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public Item renameItem(String itemId, String newName) throws Exception{
|
||||
public Item renameItem(String itemId, String newName) throws Exception {
|
||||
|
||||
Validate.notNull(itemId, "Bad request to renameItem, the itemId is null");
|
||||
setContextProviders(scope, authorizationToken);
|
||||
|
@ -782,7 +777,6 @@ public class StorageHubClientService {
|
|||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the file public link.
|
||||
*
|
||||
|
@ -790,7 +784,7 @@ public class StorageHubClientService {
|
|||
* @return the file public link
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public URL getPublicLinkForFile(String fileItemId) throws Exception{
|
||||
public URL getPublicLinkForFile(String fileItemId) throws Exception {
|
||||
|
||||
Validate.notNull(fileItemId, "Bad request to getPublicLinkForFile, the fileItemId is null");
|
||||
setContextProviders(scope, authorizationToken);
|
||||
|
@ -798,7 +792,6 @@ public class StorageHubClientService {
|
|||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the public link for file version.
|
||||
*
|
||||
|
@ -807,7 +800,7 @@ public class StorageHubClientService {
|
|||
* @return the public link for file version
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public URL getPublicLinkForFileVersion(String fileItemId, String version) throws Exception{
|
||||
public URL getPublicLinkForFileVersion(String fileItemId, String version) throws Exception {
|
||||
|
||||
Validate.notNull(fileItemId, "Bad request to getPublicLinkForFile, the fileItemId is null");
|
||||
Validate.notNull(version, "Bad request to getPublicLinkForFileVersion, the version is null");
|
||||
|
@ -817,7 +810,6 @@ public class StorageHubClientService {
|
|||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the list versions.
|
||||
*
|
||||
|
@ -825,7 +817,7 @@ public class StorageHubClientService {
|
|||
* @return the list versions
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public List<Version> getListVersions(String fileItemId) throws Exception{
|
||||
public List<Version> getListVersions(String fileItemId) throws Exception {
|
||||
|
||||
Validate.notNull(fileItemId, "Bad request to getListVersions, the fileItemId is null");
|
||||
|
||||
|
@ -840,40 +832,38 @@ public class StorageHubClientService {
|
|||
* @return the image content
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public ImageContent getImageContent(String itemId) throws Exception{
|
||||
public ImageContent getImageContent(String itemId) throws Exception {
|
||||
|
||||
Validate.notNull(itemId, "Bad request to getImageContent, the itemId is null");
|
||||
setContextProviders(scope, authorizationToken);
|
||||
ItemContainer<Item> itemCont = shClient.open(itemId).asItem();
|
||||
Item item = itemCont.get();
|
||||
if(item instanceof org.gcube.common.storagehub.model.items.ImageFile){
|
||||
org.gcube.common.storagehub.model.items.ImageFile imgFI = (org.gcube.common.storagehub.model.items.ImageFile) item; //??
|
||||
if (item instanceof org.gcube.common.storagehub.model.items.ImageFile) {
|
||||
org.gcube.common.storagehub.model.items.ImageFile imgFI = (org.gcube.common.storagehub.model.items.ImageFile) item; // ??
|
||||
return imgFI.getContent();
|
||||
}else
|
||||
throw new Exception("Thumbnail Data is not available for type: "+item.getClass().getSimpleName());
|
||||
} else
|
||||
throw new Exception("Thumbnail Data is not available for type: " + item.getClass().getSimpleName());
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the total items.
|
||||
*
|
||||
* @return the total items
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public long getTotalItems() throws Exception{
|
||||
public long getTotalItems() throws Exception {
|
||||
|
||||
setContextProviders(scope, authorizationToken);
|
||||
return shClient.getTotalItemCount();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the disk usage.
|
||||
*
|
||||
* @return the disk usage
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public long getDiskUsage() throws Exception{
|
||||
public long getDiskUsage() throws Exception {
|
||||
setContextProviders(scope, authorizationToken);
|
||||
return shClient.getTotalVolume();
|
||||
}
|
||||
|
@ -885,7 +875,7 @@ public class StorageHubClientService {
|
|||
* @return the accounting
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public Accounting getAccounting(String itemId) throws Exception{
|
||||
public Accounting getAccounting(String itemId) throws Exception {
|
||||
|
||||
Validate.notNull(itemId, "Bad request to getAccounting, the itemId is null");
|
||||
setContextProviders(scope, authorizationToken);
|
||||
|
@ -894,7 +884,6 @@ public class StorageHubClientService {
|
|||
return item.getAccounting();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the gcube item properties.
|
||||
*
|
||||
|
@ -908,15 +897,14 @@ public class StorageHubClientService {
|
|||
ItemContainer<Item> itemCont = shClient.open(gcubeItemId).asItem();
|
||||
Item item = itemCont.get();
|
||||
|
||||
if(item instanceof GCubeItem) {
|
||||
if (item instanceof GCubeItem) {
|
||||
GCubeItem theGcubeItem = (GCubeItem) item;
|
||||
return theGcubeItem.getMetadata();
|
||||
}else
|
||||
throw new Exception("The item with id "+gcubeItemId+" is not an istance of "+GCubeItem.class.getSimpleName());
|
||||
} else
|
||||
throw new Exception(
|
||||
"The item with id " + gcubeItemId + " is not an istance of " + GCubeItem.class.getSimpleName());
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Sets the metadata.
|
||||
*
|
||||
|
@ -927,13 +915,12 @@ public class StorageHubClientService {
|
|||
public void setMetadata(String itemId, Map<String, Object> mapProperties) throws Exception {
|
||||
Validate.notNull(itemId, "Bad request to setMetadata the itemId is null");
|
||||
setContextProviders(scope, authorizationToken);
|
||||
//ItemContainer<Item> itemCont = shcClient.open(itemId).asItem();
|
||||
//itemCont.get().setMetadata(new Metadata(mapProperties));
|
||||
//item.setMetadata(new Metadata(mapProperties));
|
||||
// ItemContainer<Item> itemCont = shcClient.open(itemId).asItem();
|
||||
// itemCont.get().setMetadata(new Metadata(mapProperties));
|
||||
// item.setMetadata(new Metadata(mapProperties));
|
||||
shClient.open(itemId).asItem().setMetadata(new Metadata(mapProperties));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Sets the Folder As Hidden or visible .
|
||||
*
|
||||
|
@ -946,12 +933,11 @@ public class StorageHubClientService {
|
|||
setContextProviders(scope, authorizationToken);
|
||||
FolderContainer folderContainer = shClient.open(folderId).asFolder();
|
||||
if (hide)
|
||||
folderContainer.setHidden(); //will not appear in the workspace GUI
|
||||
folderContainer.setHidden(); // will not appear in the workspace GUI
|
||||
else
|
||||
folderContainer.setVisible(); //will appear in the workspace GUI
|
||||
folderContainer.setVisible(); // will appear in the workspace GUI
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @param folderId the folder id to share
|
||||
|
@ -1016,7 +1002,6 @@ public class StorageHubClientService {
|
|||
return folder.addUrl(URL, name, description).get();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Sets the folder as public.
|
||||
*
|
||||
|
@ -1030,18 +1015,17 @@ public class StorageHubClientService {
|
|||
setContextProviders(scope, authorizationToken);
|
||||
FolderContainer folderCont = shClient.open(folderId).asFolder();
|
||||
|
||||
if(setPublic) {
|
||||
if (setPublic) {
|
||||
folderCont.publish();
|
||||
logger.debug("Published the folder id: "+folderId);
|
||||
}else {
|
||||
logger.debug("Published the folder id: " + folderId);
|
||||
} else {
|
||||
folderCont.unpublish();
|
||||
logger.debug("Unpublished the folder id: "+folderId);
|
||||
logger.debug("Unpublished the folder id: " + folderId);
|
||||
}
|
||||
|
||||
return shClient.open(folderId).asFolder().get().isPublicItem();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Update description for item.
|
||||
*
|
||||
|
@ -1059,13 +1043,14 @@ public class StorageHubClientService {
|
|||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* To string.
|
||||
*
|
||||
* @return the string
|
||||
*/
|
||||
/* (non-Javadoc)
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see java.lang.Object#toString()
|
||||
*/
|
||||
@Override
|
||||
|
@ -1075,13 +1060,11 @@ public class StorageHubClientService {
|
|||
builder.append("StorageHubClientService [scope=");
|
||||
builder.append(scope);
|
||||
builder.append(", authorizationToken=");
|
||||
builder.append(authorizationToken.substring(0, authorizationToken.length()-5)+"XXXXX");
|
||||
builder.append(authorizationToken.substring(0, authorizationToken.length() - 5) + "XXXXX");
|
||||
builder.append(", itemManagerClient=");
|
||||
builder.append(shClient);
|
||||
builder.append("]");
|
||||
return builder.toString();
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -39,7 +39,6 @@ import org.gcube.common.storagehubwrapper.shared.tohl.items.FileItemType;
|
|||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
|
||||
/**
|
||||
* The Class HLMapper.
|
||||
*
|
||||
|
@ -50,19 +49,6 @@ public class HLMapper {
|
|||
|
||||
private static Logger logger = LoggerFactory.getLogger(HLMapper.class);
|
||||
|
||||
// public static Function<org.gcube.common.storagehub.model.items.nodes.accounting.AccountEntry, AccountingEntry> toAccountingEntry = new Function<org.gcube.common.storagehub.model.items.nodes.accounting.AccountEntry, AccountingEntry>() {
|
||||
//
|
||||
// public AccountingEntry apply(org.gcube.common.storagehub.model.items.nodes.accounting.AccountEntry accountingEntry) {
|
||||
//
|
||||
// return new AccountingEntry(
|
||||
// accountingEntry.getUser(),
|
||||
// accountingEntry.getDate(),
|
||||
// accountingEntry.getType(),
|
||||
// accountingEntry.getVersion(),
|
||||
// accountingEntry.getPrimaryType());
|
||||
// }
|
||||
// }
|
||||
|
||||
/**
|
||||
* To URL file.
|
||||
*
|
||||
|
@ -74,7 +60,6 @@ public class HLMapper {
|
|||
return (URLFile) toWorkspaceItem(extLink, false, false, false);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* To workspace item.
|
||||
*
|
||||
|
@ -83,69 +68,61 @@ public class HLMapper {
|
|||
* @return the t
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public static<T extends WorkspaceItem> T toWorkspaceItem(Item item) throws Exception{
|
||||
public static <T extends WorkspaceItem> T toWorkspaceItem(Item item) throws Exception {
|
||||
|
||||
return toWorkspaceItem(item, false, false, false);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* To accounting entries.
|
||||
*
|
||||
* @param item the item
|
||||
* @return the list
|
||||
*/
|
||||
public static List<AccountEntry> toAccountingEntries(Item item){
|
||||
public static List<AccountEntry> toAccountingEntries(Item item) {
|
||||
|
||||
List<AccountEntry> accountingEntries = null;
|
||||
|
||||
Accounting accounting = item.getAccounting();
|
||||
if(accounting!=null){
|
||||
if (accounting != null) {
|
||||
accountingEntries = accounting.getEntries();
|
||||
// for (AccountEntry ae : accounting.getEntries()) {
|
||||
// accountingEntries.add(toAccountingEntry.apply(ae));
|
||||
// }
|
||||
}
|
||||
|
||||
return accountingEntries;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* To property map.
|
||||
*
|
||||
* @param metadata the metadata
|
||||
* @return the property map
|
||||
*/
|
||||
public static PropertyMap toPropertyMap(Metadata metadata){
|
||||
public static PropertyMap toPropertyMap(Metadata metadata) {
|
||||
|
||||
PropertyMap pm = null;
|
||||
if(metadata!=null)
|
||||
if (metadata != null)
|
||||
pm = new PropertyMap(metadata.getMap());
|
||||
|
||||
//IN CASE OF EMPTY MAP RETURNS NULL
|
||||
if(pm!=null && pm.getValues()!=null && pm.getValues().isEmpty())
|
||||
// IN CASE OF EMPTY MAP RETURNS NULL
|
||||
if (pm != null && pm.getValues() != null && pm.getValues().isEmpty())
|
||||
pm = null;
|
||||
|
||||
return pm;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* To workspace file version.
|
||||
*
|
||||
* @param fileVersion the file version
|
||||
* @return the workspace file version
|
||||
*/
|
||||
public static WorkspaceFileVersion toWorkspaceFileVersion(Version fileVersion){
|
||||
public static WorkspaceFileVersion toWorkspaceFileVersion(Version fileVersion) {
|
||||
WorkspaceFileVersion wsFileVersion = new WorkspaceFileVersion();
|
||||
wsFileVersion.setId(fileVersion.getId());
|
||||
wsFileVersion.setName(fileVersion.getName());
|
||||
wsFileVersion.setCreated(fileVersion.getCreated());
|
||||
wsFileVersion.setCurrentVersion(fileVersion.isCurrent());
|
||||
//TODO MUST BE TERMINATED
|
||||
// TODO MUST BE TERMINATED
|
||||
return wsFileVersion;
|
||||
}
|
||||
|
||||
|
@ -160,12 +137,13 @@ public class HLMapper {
|
|||
* @return the t
|
||||
* @throws Exception the exception
|
||||
*/
|
||||
public static<T extends WorkspaceItem> T toWorkspaceItem(Item item, boolean withAccounting, boolean withFileDetails, boolean withMapProperties) throws Exception{
|
||||
public static <T extends WorkspaceItem> T toWorkspaceItem(Item item, boolean withAccounting,
|
||||
boolean withFileDetails, boolean withMapProperties) throws Exception {
|
||||
|
||||
try{
|
||||
try {
|
||||
List<AccountEntry> accountingEntries = null;
|
||||
|
||||
if(withAccounting)
|
||||
if (withAccounting)
|
||||
accountingEntries = toAccountingEntries(item);
|
||||
|
||||
org.gcube.common.storagehubwrapper.shared.tohl.impl.WorkspaceItem theItem = null;
|
||||
|
@ -175,48 +153,51 @@ public class HLMapper {
|
|||
String itemName = item.getName();
|
||||
boolean isRoot = false;
|
||||
|
||||
logger.trace("The item: "+item);
|
||||
logger.trace("Converting Item: "+item.getName() + " with id: "+item.getId());
|
||||
logger.trace("The item: " + item);
|
||||
logger.trace("Converting Item: " + item.getName() + " with id: " + item.getId());
|
||||
|
||||
//THE ITEM IS A KIND OF FOLDER
|
||||
if (item instanceof FolderItem){
|
||||
// THE ITEM IS A KIND OF FOLDER
|
||||
if (item instanceof FolderItem) {
|
||||
isFolder = true;
|
||||
FolderItem folderItem = (FolderItem) item; //??
|
||||
FolderItem folderItem = (FolderItem) item; // ??
|
||||
theItem = new WorkspaceFolder();
|
||||
type = WorkspaceItemType.FOLDER;
|
||||
if (item instanceof SharedFolder || item instanceof VreFolder) {
|
||||
SharedFolder sharedfolder = (SharedFolder) item; //??
|
||||
SharedFolder sharedfolder = (SharedFolder) item; // ??
|
||||
theItem = new WorkspaceSharedFolder();
|
||||
type = WorkspaceItemType.SHARED_FOLDER;
|
||||
itemName = sharedfolder.getTitle(); //IN CASE OF SHARED FOLDER THE NAME IS AN UUID, I'M USING THE TITLE
|
||||
itemName = sharedfolder.getTitle(); // IN CASE OF SHARED FOLDER THE NAME IS AN UUID, I'M USING THE
|
||||
// TITLE
|
||||
|
||||
if (sharedfolder.isVreFolder()){
|
||||
//logger.debug("Converting shared folder: "+theItem.getClass());
|
||||
//VreFolder vreFolder = (VreFolder) item;
|
||||
//theItem = new WorkspaceVREFolder(); //NEVER INSTANCE THE WorkspaceVREFolder because VreFolder is never used by HL/StorageHub
|
||||
itemName = sharedfolder.getDisplayName(); //IN CASE OF VRE FOLDER I'M USING THE DISPLAYNAME
|
||||
if (sharedfolder.isVreFolder()) {
|
||||
// logger.debug("Converting shared folder: "+theItem.getClass());
|
||||
// VreFolder vreFolder = (VreFolder) item;
|
||||
// theItem = new WorkspaceVREFolder(); //NEVER INSTANCE THE WorkspaceVREFolder
|
||||
// because VreFolder is never used by HL/StorageHub
|
||||
itemName = sharedfolder.getDisplayName(); // IN CASE OF VRE FOLDER I'M USING THE DISPLAYNAME
|
||||
((WorkspaceSharedFolder) theItem).setVreFolder(true);
|
||||
type = WorkspaceItemType.VRE_FOLDER;
|
||||
}
|
||||
}
|
||||
|
||||
boolean isPublicItem = folderItem.isPublicItem();
|
||||
//((WorkspaceFolder) theItem).setPublicFolder(folderItem.isPublicItem());
|
||||
//logger.debug("Wrapped as Folder");
|
||||
// ((WorkspaceFolder) theItem).setPublicFolder(folderItem.isPublicItem());
|
||||
// logger.debug("Wrapped as Folder");
|
||||
|
||||
//TODO THIS MUST BE REMOVED. Checking the old property isPublic added as "<boolean>true</boolean>" by HL
|
||||
if(!isPublicItem){
|
||||
try{
|
||||
//Map<String, Object> map = item.getPropertyMap().getValues();
|
||||
// TODO THIS MUST BE REMOVED. Checking the old property isPublic added as
|
||||
// "<boolean>true</boolean>" by HL
|
||||
if (!isPublicItem) {
|
||||
try {
|
||||
// Map<String, Object> map = item.getPropertyMap().getValues();
|
||||
// logger.debug("Property Map size: "+map.size());
|
||||
// for (String key : map.keySet()) {
|
||||
// logger.debug("Key: "+key+ "value: "+map.get(key));
|
||||
// }
|
||||
String isPublic = (String) item.getMetadata().getMap().get("isPublic");
|
||||
logger.debug("The item name: "+item.getName()+ " has isPublic property like: "+isPublic);
|
||||
isPublicItem = isPublic!=null?isPublic.toLowerCase().contains("true"):false;
|
||||
}catch(Exception e){
|
||||
//silent
|
||||
logger.debug("The item name: " + item.getName() + " has isPublic property like: " + isPublic);
|
||||
isPublicItem = isPublic != null ? isPublic.toLowerCase().contains("true") : false;
|
||||
} catch (Exception e) {
|
||||
// silent
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -224,21 +205,21 @@ public class HLMapper {
|
|||
|
||||
}
|
||||
|
||||
//THE ITEM IS A KIND OF FILE
|
||||
if(item instanceof AbstractFileItem){
|
||||
// THE ITEM IS A KIND OF FILE
|
||||
if (item instanceof AbstractFileItem) {
|
||||
theItem = new FileItem();
|
||||
type = WorkspaceItemType.FILE_ITEM;
|
||||
FileItemType fileItemType = null;
|
||||
if(item instanceof ExternalURL){
|
||||
if (item instanceof ExternalURL) {
|
||||
theItem = new URLFileItem();
|
||||
fileItemType = FileItemType.URL_DOCUMENT;
|
||||
}else if(item instanceof GenericFileItem){
|
||||
GenericFileItem gFI = (GenericFileItem) item; //??
|
||||
} else if (item instanceof GenericFileItem) {
|
||||
GenericFileItem gFI = (GenericFileItem) item; // ??
|
||||
fileItemType = FileItemType.DOCUMENT;
|
||||
}else if(item instanceof PDFFileItem){
|
||||
} else if (item instanceof PDFFileItem) {
|
||||
theItem = new PDFFile();
|
||||
fileItemType = FileItemType.PDF_DOCUMENT;
|
||||
if(withFileDetails){
|
||||
if (withFileDetails) {
|
||||
PDFFileItem pdfFI = (PDFFileItem) item;
|
||||
PDFContent pdfContent = pdfFI.getContent();
|
||||
PDFFile thePDFFileItem = (PDFFile) theItem;
|
||||
|
@ -248,11 +229,11 @@ public class HLMapper {
|
|||
thePDFFileItem.setTitle(pdfContent.getTitle());
|
||||
thePDFFileItem.setAuthor(pdfContent.getAuthor());
|
||||
}
|
||||
}else if(item instanceof org.gcube.common.storagehub.model.items.ImageFile){
|
||||
} else if (item instanceof org.gcube.common.storagehub.model.items.ImageFile) {
|
||||
theItem = new ImageFile();
|
||||
fileItemType = FileItemType.IMAGE_DOCUMENT;
|
||||
if(withFileDetails){
|
||||
org.gcube.common.storagehub.model.items.ImageFile imgFI = (org.gcube.common.storagehub.model.items.ImageFile) item; //??
|
||||
if (withFileDetails) {
|
||||
org.gcube.common.storagehub.model.items.ImageFile imgFI = (org.gcube.common.storagehub.model.items.ImageFile) item; // ??
|
||||
ImageFile theImageFileItem = (ImageFile) theItem;
|
||||
ImageContent content = imgFI.getContent();
|
||||
theImageFileItem.setHeight(content.getHeight());
|
||||
|
@ -267,26 +248,26 @@ public class HLMapper {
|
|||
FileItem theFileItem = (FileItem) theItem;
|
||||
theFileItem.setFileItemType(fileItemType);
|
||||
|
||||
if(aC!=null){
|
||||
logger.debug("The content is not null for item: "+itemAb.getId());
|
||||
if (aC != null) {
|
||||
logger.debug("The content is not null for item: " + itemAb.getId());
|
||||
theFileItem.setMimeType(aC.getMimeType());
|
||||
theFileItem.setSize(aC.getSize());
|
||||
}else
|
||||
logger.warn("The content is null for item: "+itemAb.getId());
|
||||
} else
|
||||
logger.warn("The content is null for item: " + itemAb.getId());
|
||||
|
||||
//TODO ADD VERSION NAME
|
||||
// TODO ADD VERSION NAME
|
||||
|
||||
}
|
||||
|
||||
//ADDING (GCUBE) PROPERTIES
|
||||
// ADDING (GCUBE) PROPERTIES
|
||||
PropertyMap pm = null;
|
||||
if(withMapProperties || isFolder){
|
||||
//System.out.println("Setting map: "+item.getPropertyMap().getValues());
|
||||
if (withMapProperties || isFolder) {
|
||||
// System.out.println("Setting map: "+item.getPropertyMap().getValues());
|
||||
pm = toPropertyMap(item.getMetadata());
|
||||
}
|
||||
|
||||
//CONVERTING EXTERNALLINK
|
||||
if(item instanceof ExternalLink) {
|
||||
// CONVERTING EXTERNALLINK
|
||||
if (item instanceof ExternalLink) {
|
||||
logger.trace("FOUND an ExternalLink...");
|
||||
type = WorkspaceItemType.URL_ITEM;
|
||||
ExternalLink extLink = (ExternalLink) item;
|
||||
|
@ -295,11 +276,11 @@ public class HLMapper {
|
|||
theURLFile.setValue(extLink.getValue());
|
||||
}
|
||||
|
||||
//CONVERTING TRASH ITEM
|
||||
if(item.isTrashed() && item instanceof TrashItem){
|
||||
// CONVERTING TRASH ITEM
|
||||
if (item.isTrashed() && item instanceof TrashItem) {
|
||||
type = WorkspaceItemType.TRASH_ITEM;
|
||||
TrashItem trashItem = (TrashItem) item;
|
||||
itemName = trashItem.getTitle(); //IN CASE OF TRASHED ITEM THE NAME IS THE ID, SO I'M USING THE TITLE
|
||||
itemName = trashItem.getTitle(); // IN CASE OF TRASHED ITEM THE NAME IS THE ID, SO I'M USING THE TITLE
|
||||
theItem = new org.gcube.common.storagehubwrapper.shared.tohl.impl.TrashItem();
|
||||
org.gcube.common.storagehubwrapper.shared.tohl.impl.TrashItem theTrashItem = (org.gcube.common.storagehubwrapper.shared.tohl.impl.TrashItem) theItem;
|
||||
theTrashItem.setDeletedBy(trashItem.getDeletedBy());
|
||||
|
@ -309,16 +290,16 @@ public class HLMapper {
|
|||
theTrashItem.setLenght(trashItem.getLenght());
|
||||
theTrashItem.setMimeType(trashItem.getMimeType());
|
||||
|
||||
isFolder = trashItem.isFolder(); //DO NOT MOVE THIS SET
|
||||
if(isFolder) //Avoiding null exception on
|
||||
isFolder = trashItem.isFolder(); // DO NOT MOVE THIS SET
|
||||
if (isFolder) // Avoiding null exception on
|
||||
type = WorkspaceItemType.TRASH_FOLDER;
|
||||
|
||||
logger.debug("Wrapped as TrashItem");
|
||||
}
|
||||
|
||||
if(item instanceof GCubeItem){
|
||||
if (item instanceof GCubeItem) {
|
||||
type = WorkspaceItemType.FILE_ITEM;
|
||||
GCubeItem gcubeItem = (GCubeItem) item; //??
|
||||
GCubeItem gcubeItem = (GCubeItem) item; // ??
|
||||
theItem = new GcubeItem();
|
||||
GcubeItem theGcubeItem = (GcubeItem) theItem;
|
||||
theGcubeItem.setFileItemType(FileItemType.GCUBE_ITEM);
|
||||
|
@ -326,7 +307,7 @@ public class HLMapper {
|
|||
theGcubeItem.setCreator(gcubeItem.getCreator());
|
||||
theGcubeItem.setItemType(gcubeItem.getItemType());
|
||||
theGcubeItem.setShared(gcubeItem.isShared());
|
||||
if(withMapProperties){
|
||||
if (withMapProperties) {
|
||||
PropertyMap property = toPropertyMap(gcubeItem.getProperty());
|
||||
theGcubeItem.setProperty(property);
|
||||
}
|
||||
|
@ -334,7 +315,7 @@ public class HLMapper {
|
|||
logger.debug("Wrapped as GcubeItem");
|
||||
}
|
||||
|
||||
if(theItem==null){
|
||||
if (theItem == null) {
|
||||
logger.info("Mapping unknown object as simple FileItem");
|
||||
theItem = new FileItem();
|
||||
type = WorkspaceItemType.FILE_ITEM;
|
||||
|
@ -359,23 +340,19 @@ public class HLMapper {
|
|||
theItem.setAccounting(accountingEntries);
|
||||
theItem.setType(type);
|
||||
theItem.setFolder(isFolder);
|
||||
theItem.setRoot(isRoot); //THIS IS ALWAYS FALSE. SHUB DOES NOT RETURN THIS INFORMATION
|
||||
theItem.setRoot(isRoot); // THIS IS ALWAYS FALSE. SHUB DOES NOT RETURN THIS INFORMATION
|
||||
theItem.setPropertyMap(pm);
|
||||
|
||||
logger.debug("Wrapped WsItem: "+theItem);
|
||||
logger.debug("Wrapped WsItem has type: "+theItem.getClass().getName());
|
||||
logger.debug("Wrapped WsItem: " + theItem);
|
||||
logger.debug("Wrapped WsItem has type: " + theItem.getClass().getName());
|
||||
|
||||
return (T) theItem;
|
||||
|
||||
}catch (Exception e){
|
||||
logger.error("Error on converting the item with id: "+item.getId(), e);
|
||||
} catch (Exception e) {
|
||||
logger.error("Error on converting the item with id: " + item.getId(), e);
|
||||
throw e;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
/resources/
|
|
@ -14,29 +14,24 @@ import org.gcube.common.storagehubwrapper.shared.tohl.exceptions.WrongItemTypeEx
|
|||
import org.gcube.common.storagehubwrapper.shared.tohl.impl.FileItem;
|
||||
import org.gcube.common.storagehubwrapper.shared.tohl.impl.ImageFile;
|
||||
import org.gcube.common.storagehubwrapper.shared.tohl.impl.PDFFile;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
/**
|
||||
*
|
||||
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
||||
* Jun 20, 2018
|
||||
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it Jun 20, 2018
|
||||
*/
|
||||
public class WorkspaceInstance {
|
||||
|
||||
public static String SCOPE = "/gcube";
|
||||
//public static String SCOPE = "/d4science.research-infrastructures.eu";
|
||||
// public static String SCOPE = "/gcube";
|
||||
public static String SCOPE = "/d4science.research-infrastructures.eu";
|
||||
|
||||
|
||||
//public static String USERNAME = "massimiliano.assante";
|
||||
// public static String USERNAME = "massimiliano.assante";
|
||||
public static String USERNAME = "francesco.mangiacrapa";
|
||||
|
||||
public static String TOKEN = System.getenv("TOKEN_gcube"); //YOU MUST SET THIS AS Environment variable
|
||||
|
||||
public static String TOKEN = System.getenv("TOKEN_gcube"); // YOU MUST SET THIS AS Environment variable
|
||||
|
||||
public static String FIND_FILE_NAME = "francesco";
|
||||
public static String rootId = null;
|
||||
|
@ -44,21 +39,20 @@ public class WorkspaceInstance {
|
|||
|
||||
private WorkspaceStorageHubClientService workspace;
|
||||
|
||||
//@Before
|
||||
public void init(){
|
||||
// @Before
|
||||
public void init() {
|
||||
|
||||
if(TOKEN==null) {
|
||||
if (TOKEN == null) {
|
||||
System.err.println("You must set the token as Environment variable");
|
||||
return;
|
||||
}
|
||||
|
||||
System.out.println("Read TOKEN_gcube: "+TOKEN);
|
||||
System.out.println("Read TOKEN_gcube: " + TOKEN);
|
||||
|
||||
//METHOD 1
|
||||
// METHOD 1
|
||||
storageHubWrapper = new StorageHubWrapper(SCOPE, TOKEN, false, false, true);
|
||||
//workspace = storageHubWrapper.getWorkspace();
|
||||
// workspace = storageHubWrapper.getWorkspace();
|
||||
|
||||
//METHOD 2
|
||||
// METHOD 2
|
||||
// StorageHubClientService storageHubClientService = new StorageHubClientService(SCOPE, TOKEN);
|
||||
// workspace = new WorkspaceStorageHubClientService.WorkspaceStorageHubClientServiceBuilder(storageHubClientService).
|
||||
// withAccounting(false).
|
||||
|
@ -66,41 +60,41 @@ public class WorkspaceInstance {
|
|||
// build();
|
||||
}
|
||||
|
||||
//@Test
|
||||
// @Test
|
||||
public void getRoot() {
|
||||
System.out.println("Get Root test");
|
||||
WorkspaceFolder root;
|
||||
try {
|
||||
root = storageHubWrapper.getWorkspace().getRoot();
|
||||
rootId = root.getId();
|
||||
System.out.println("The root is:"+root);
|
||||
}
|
||||
catch (Exception e) {
|
||||
System.out.println("The root is:" + root);
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//@Test
|
||||
public void getChildren() throws Exception{
|
||||
// @Test
|
||||
public void getChildren() throws Exception {
|
||||
System.out.println("Get children test");
|
||||
|
||||
WorkspaceFolder root = storageHubWrapper.getWorkspace().getRoot();
|
||||
List<? extends WorkspaceItem> children = storageHubWrapper.getWorkspace().getChildren(root.getId());
|
||||
|
||||
//WorkspaceFolder root = workspace.getRoot();
|
||||
//List<? extends WorkspaceItem> children = workspace.getChildren(root.getId());
|
||||
// WorkspaceFolder root = workspace.getRoot();
|
||||
// List<? extends WorkspaceItem> children = workspace.getChildren(root.getId());
|
||||
|
||||
int i = 0;
|
||||
for (WorkspaceItem workspaceItem : children) {
|
||||
System.out.println(++i+")"+workspaceItem.getId() + " name: "+workspaceItem.getName() + " type: "+workspaceItem.getType() +" class: "+workspaceItem.getClass());
|
||||
System.out.println(++i + ")" + workspaceItem.getId() + " name: " + workspaceItem.getName() + " type: "
|
||||
+ workspaceItem.getType() + " class: " + workspaceItem.getClass());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//@Test
|
||||
public void getPathOnShared() throws Exception{
|
||||
// @Test
|
||||
public void getPathOnShared() throws Exception {
|
||||
System.out.println("Get Path on Shared");
|
||||
|
||||
WorkspaceFolder root = storageHubWrapper.getWorkspace().getRoot();
|
||||
|
@ -108,30 +102,30 @@ public class WorkspaceInstance {
|
|||
|
||||
int i = 0;
|
||||
for (WorkspaceItem workspaceItem : children) {
|
||||
if(workspaceItem.isShared()) {
|
||||
System.out.println(++i+")"+workspaceItem.getId() + " name: "+workspaceItem.getName() + " type: "+workspaceItem.getPath());
|
||||
if (workspaceItem.isShared()) {
|
||||
System.out.println(++i + ")" + workspaceItem.getId() + " name: " + workspaceItem.getName() + " type: "
|
||||
+ workspaceItem.getPath());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
//@Test
|
||||
public void getFilteredChildren() throws Exception{
|
||||
// @Test
|
||||
public void getFilteredChildren() throws Exception {
|
||||
System.out.println("Get children test");
|
||||
|
||||
WorkspaceFolder root = storageHubWrapper.getWorkspace().getRoot();
|
||||
Class filterClass = org.gcube.common.storagehub.model.items.FolderItem.class;
|
||||
List<? extends WorkspaceItem> children = storageHubWrapper.getWorkspace().getFilteredChildren(root.getId(), filterClass);
|
||||
List<? extends WorkspaceItem> children = storageHubWrapper.getWorkspace().getFilteredChildren(root.getId(),
|
||||
filterClass);
|
||||
|
||||
//WorkspaceFolder root = workspace.getRoot();
|
||||
//List<? extends WorkspaceItem> children = workspace.getChildren(root.getId());
|
||||
// WorkspaceFolder root = workspace.getRoot();
|
||||
// List<? extends WorkspaceItem> children = workspace.getChildren(root.getId());
|
||||
|
||||
int i = 0;
|
||||
for (WorkspaceItem workspaceItem : children) {
|
||||
System.out.println(++i+")"+workspaceItem);
|
||||
System.out.println(workspaceItem.getType() +" "+workspaceItem.getClass());
|
||||
|
||||
System.out.println(++i + ")" + workspaceItem);
|
||||
System.out.println(workspaceItem.getType() + " " + workspaceItem.getClass());
|
||||
|
||||
// System.out.println(++i+")");
|
||||
// if(workspaceItem.isFolder()){
|
||||
|
@ -145,33 +139,50 @@ public class WorkspaceInstance {
|
|||
|
||||
}
|
||||
|
||||
public static void printMap(WorkspaceItem workspaceItem){
|
||||
if(workspaceItem.getPropertyMap()!=null){
|
||||
System.out.println(workspaceItem.getId() + " name: "+workspaceItem.getName() + " isFolder: "+workspaceItem.isFolder());
|
||||
System.out.println("Property Map: "+workspaceItem.getPropertyMap().getValues().toString());
|
||||
public static void printMap(WorkspaceItem workspaceItem) {
|
||||
if (workspaceItem.getPropertyMap() != null) {
|
||||
System.out.println(workspaceItem.getId() + " name: " + workspaceItem.getName() + " isFolder: "
|
||||
+ workspaceItem.isFolder());
|
||||
System.out.println("Property Map: " + workspaceItem.getPropertyMap().getValues().toString());
|
||||
}
|
||||
}
|
||||
|
||||
//@Test
|
||||
// @Test
|
||||
public void getWorkspaceId() {
|
||||
System.out.println("Getting the workspaceId test");
|
||||
try {
|
||||
|
||||
Workspace ws = storageHubWrapper.getWorkspace();
|
||||
|
||||
//Workspace ws = workspace;
|
||||
// Workspace ws = workspace;
|
||||
|
||||
if(ws!=null){
|
||||
if (ws != null) {
|
||||
WorkspaceFolder root = ws.getRoot();
|
||||
System.out.println("Retrieve the root "+root.getId()+" correctly");
|
||||
System.out.println("Retrieve the root " + root.getId() + " correctly");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
//@Test
|
||||
public void getChildrenPerWorkspaceItem() throws InternalErrorException{
|
||||
@Test
|
||||
public void getSharedFolderMembers() {
|
||||
System.out.println("Getting getSharedFolderMembers");
|
||||
try {
|
||||
|
||||
String sharedFolderId = "b679c6fe-894c-4c4c-aebc-4155321a373a";
|
||||
storageHubWrapper = new StorageHubWrapper(SCOPE, TOKEN);
|
||||
List<String> listLogins = storageHubWrapper.getWorkspace().getSharedFolderMembers(sharedFolderId);
|
||||
|
||||
System.out.println("List: " + listLogins);
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
// @Test
|
||||
public void getChildrenPerWorkspaceItem() throws InternalErrorException {
|
||||
System.out.println("Get children test per workspace item");
|
||||
|
||||
try {
|
||||
|
@ -183,11 +194,11 @@ public class WorkspaceInstance {
|
|||
// List<? extends WorkspaceItem> children = workspace.getChildren(root.getId());
|
||||
|
||||
int i = 0;
|
||||
Map<String, List<WorkspaceItem>> map = new HashMap<String,List<WorkspaceItem>>();
|
||||
Map<String, List<WorkspaceItem>> map = new HashMap<String, List<WorkspaceItem>>();
|
||||
for (WorkspaceItem workspaceItem : children) {
|
||||
String key = workspaceItem.getType().name();
|
||||
List<WorkspaceItem> list = map.get(key);
|
||||
if(list==null){
|
||||
if (list == null) {
|
||||
list = new ArrayList<WorkspaceItem>();
|
||||
}
|
||||
|
||||
|
@ -204,20 +215,20 @@ public class WorkspaceInstance {
|
|||
switch (fileItem.getFileItemType()) {
|
||||
case PDF_DOCUMENT:
|
||||
PDFFile pdfFile = (PDFFile) fileItem;
|
||||
System.out.println("PDF_DOCUMENT "+pdfFile);
|
||||
PDFFile completeItem = (PDFFile) storageHubWrapper.getWorkspace().getItem(fileItem.getId(), true, true, true);
|
||||
System.out.println("PDF_DOCUMENT " + pdfFile);
|
||||
PDFFile completeItem = (PDFFile) storageHubWrapper.getWorkspace().getItem(fileItem.getId(),
|
||||
true, true, true);
|
||||
System.out.println(completeItem);
|
||||
break;
|
||||
case IMAGE_DOCUMENT:
|
||||
ImageFile imageFile = (ImageFile) fileItem;
|
||||
System.out.println("IMAGE_DOCUMENT "+imageFile);
|
||||
System.out.println("IMAGE_DOCUMENT " + imageFile);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
System.out.println(fileItem.getFileItemType() +" "+workspaceItem.getClass());
|
||||
|
||||
System.out.println(fileItem.getFileItemType() + " " + workspaceItem.getClass());
|
||||
|
||||
break;
|
||||
default:
|
||||
|
@ -225,33 +236,32 @@ public class WorkspaceInstance {
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception e) {
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//@Test
|
||||
public void findFileName() throws InternalErrorException{
|
||||
// @Test
|
||||
public void findFileName() throws InternalErrorException {
|
||||
System.out.println("Find file name test");
|
||||
getRoot();
|
||||
try {
|
||||
//List<WorkspaceItem> foundItems = storageHubWrapper.getWorkspace().find(FIND_FILE_NAME,rootId);
|
||||
List<? extends WorkspaceItem> foundItems = workspace.find(FIND_FILE_NAME,rootId);
|
||||
// List<WorkspaceItem> foundItems =
|
||||
// storageHubWrapper.getWorkspace().find(FIND_FILE_NAME,rootId);
|
||||
List<? extends WorkspaceItem> foundItems = workspace.find(FIND_FILE_NAME, rootId);
|
||||
|
||||
if(foundItems==null || foundItems.size()==0){
|
||||
System.out.println("No Items found with name: "+FIND_FILE_NAME+ " in the parent: "+rootId);
|
||||
if (foundItems == null || foundItems.size() == 0) {
|
||||
System.out.println("No Items found with name: " + FIND_FILE_NAME + " in the parent: " + rootId);
|
||||
return;
|
||||
}
|
||||
|
||||
System.out.println("Items found with name: "+FIND_FILE_NAME+ " in the parent: "+rootId +" are:");
|
||||
System.out.println("Items found with name: " + FIND_FILE_NAME + " in the parent: " + rootId + " are:");
|
||||
for (WorkspaceItem workspaceItem : foundItems) {
|
||||
System.out.println(workspaceItem);
|
||||
}
|
||||
}
|
||||
catch (ItemNotFoundException | WrongItemTypeException e) {
|
||||
} catch (ItemNotFoundException | WrongItemTypeException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue