diff --git a/distro/README b/distro/README index ba1c76c..f3dba90 100644 --- a/distro/README +++ b/distro/README @@ -16,7 +16,7 @@ Author Version and Release Date ------------------------ -v. 6.10.1 December 2015 +v. 6.11.0 January 2016 Description diff --git a/distro/changelog.xml b/distro/changelog.xml index 80cf0e6..09794c3 100644 --- a/distro/changelog.xml +++ b/distro/changelog.xml @@ -1,4 +1,8 @@ + + [Feature #1925] New public link available + Bug Fixing - #1804; #1808; #1822; #1333 diff --git a/pom.xml b/pom.xml index d497449..b63112e 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ org.gcube.portlets.user workspace-tree-widget - 6.10.1-SNAPSHOT + 6.11.0-SNAPSHOT gCube Workspace Tree Widget gCube Workspace Tree Widget. diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java b/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java index 280e71b..2e1afb9 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java @@ -57,7 +57,7 @@ import org.gcube.portlets.user.workspace.client.workspace.GWTWorkspaceItem; import org.gcube.portlets.user.workspace.client.workspace.folder.item.gcube.WorkspaceHandledException; import org.gcube.portlets.user.workspace.server.notifications.NotificationsProducer; import org.gcube.portlets.user.workspace.server.notifications.NotificationsUtil; -import org.gcube.portlets.user.workspace.server.resolver.UriResolverReaderParameter; +import org.gcube.portlets.user.workspace.server.resolver.UriResolverReaderParameterForResolverIndex; import org.gcube.portlets.user.workspace.server.shortener.UrlShortener; import org.gcube.portlets.user.workspace.server.util.AclTypeComparator; import org.gcube.portlets.user.workspace.server.util.DifferenceBetweenInfoContactModel; @@ -172,7 +172,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT * * @return the uri resolver */ - protected UriResolverReaderParameter getUriResolver() { + protected UriResolverReaderParameterForResolverIndex getUriResolver() { return WsUtil.getUriResolver(this.getThreadLocalRequest().getSession()); } @@ -2343,19 +2343,22 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT if(storageID==null || storageID.isEmpty()) throw new Exception("Sorry, public link on "+wsItem.getName() +" is not available"); - UriResolverReaderParameter uriResolver = getUriResolver(); + UriResolverReaderParameterForResolverIndex uriResolver = getUriResolver(); String uriRequest = ""; if(uriResolver!=null && uriResolver.isAvailable()){ - String itemName = StringUtil.removeSpecialCharacters(folderItem.getName()); + /*String itemName = StringUtil.removeSpecialCharacters(folderItem.getName()); itemName = StringUtil.replaceAllWhiteSpace(itemName, "_"); - uriRequest = uriResolver.resolveAsUriRequest(storageID, itemName, folderItem.getMimeType(), true); - + uriRequest = uriResolver.resolveAsUriRequest(storageID, itemName, folderItem.getMimeType(), true);*/ + + uriRequest = uriResolver.resolveAsStorageIdRequest(storageID, true); + + /* //VALIDATE CONNECTION if(!HttpRequestUtil.urlExists(uriRequest+"&validation=true")) throw new Exception("Sorry, The Public Link for selected file is unavailable"); - + */ String shortURL = null; if(shortenUrl) diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/resolver/UriResolverReaderParameter.java b/src/main/java/org/gcube/portlets/user/workspace/server/resolver/UriResolverReaderParameterForResolverIndex.java similarity index 60% rename from src/main/java/org/gcube/portlets/user/workspace/server/resolver/UriResolverReaderParameter.java rename to src/main/java/org/gcube/portlets/user/workspace/server/resolver/UriResolverReaderParameterForResolverIndex.java index 36285b8..5ebeb8e 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/resolver/UriResolverReaderParameter.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/resolver/UriResolverReaderParameterForResolverIndex.java @@ -6,7 +6,6 @@ package org.gcube.portlets.user.workspace.server.resolver; import static org.gcube.resources.discovery.icclient.ICFactory.clientFor; import static org.gcube.resources.discovery.icclient.ICFactory.queryFor; -import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; @@ -23,81 +22,94 @@ import org.gcube.portlets.user.workspace.server.util.scope.ScopeUtilFilter; import org.gcube.resources.discovery.client.api.DiscoveryClient; import org.gcube.resources.discovery.client.queries.impl.XQuery; + /** - * @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it - * @Jun 26, 2013 + * The Class UriResolverReaderParameter. * + * @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it + * Jan 12, 2016 */ -public class UriResolverReaderParameter { +public class UriResolverReaderParameterForResolverIndex { + + protected static final String CONTENT_TYPE_PARAMETER = "contentType_parameter"; + protected static final String FILE_NAME_PARAMETER = "fileName_parameter"; + protected static final String SMP_ID_PARAMETER = "SMP_ID_parameter"; //Base Address -// private String uri = ""; private String baseUri = ""; - //Query URL parameter private String storageIDParameter = ""; private String fileNameParameter = ""; private String contentTypeParameter = ""; - private String query = ""; private boolean isAvailable = false; - public static Logger logger = Logger.getLogger(UriResolverReaderParameter.class); - + public static Logger logger = Logger.getLogger(UriResolverReaderParameterForResolverIndex.class); /** - * @throws Exception - * + * The Enum RESOLVER_TYPE. + * + * @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it + * Jan 12, 2016 */ - public UriResolverReaderParameter(String scope) throws Exception { + public static enum RESOLVER_TYPE {SMP_URI, SMP_ID}; + + /** + * Instantiates a new uri resolver reader parameter for resolver index. + * + * @param scope the scope + * @param resolverType the resolver type + * @throws Exception the exception + */ + public UriResolverReaderParameterForResolverIndex(String scope, RESOLVER_TYPE resolverType) throws Exception { logger.trace("UriResolverReaderParameter is istancing with scope: "+scope); - ScopeUtilFilter scopeUtil = new ScopeUtilFilter(scope,true); - ScopeProvider.instance.set(scopeUtil.getScopeRoot()); - XQuery query = queryFor(ServiceEndpoint.class); - query.addCondition("$resource/Profile/Name/text() eq 'HTTP-URI-Resolver'").setResult("$resource/Profile/AccessPoint"); DiscoveryClient client = clientFor(AccessPoint.class); - List endpoints = client.submit(query); if (endpoints.size() == 0) throw new Exception("No Resolver available"); - - //Base Address - + //THE FIRST ACCESS POINT (endpoints.get(0)) IS SMP-URI, THE SECOND (endpoints.get(1)) IS SMP-ID - AccessPoint ap2 = endpoints.get(1); - baseUri = ap2!=null?endpoints.get(1).address():""; - + int useResolverIndex; + + switch(resolverType){ + case SMP_ID: + useResolverIndex = 1; + break; + case SMP_URI: + useResolverIndex = 0; + break; + default: + useResolverIndex = 1; + } + + AccessPoint ap2 = endpoints.get(useResolverIndex); + baseUri = ap2!=null?endpoints.get(useResolverIndex).address():""; if(ap2!=null){ - - storageIDParameter = ap2.propertyMap()!=null?ap2.propertyMap().get("SMP_ID_parameter").value():""; - fileNameParameter = ap2.propertyMap()!=null?ap2.propertyMap().get("fileName_parameter").value():""; - contentTypeParameter = ap2.propertyMap()!=null?ap2.propertyMap().get("contentType_parameter").value():""; + storageIDParameter = ap2.propertyMap()!=null?ap2.propertyMap().get(SMP_ID_PARAMETER).value():""; + fileNameParameter = ap2.propertyMap()!=null?ap2.propertyMap().get(FILE_NAME_PARAMETER).value():""; + contentTypeParameter = ap2.propertyMap()!=null?ap2.propertyMap().get(CONTENT_TYPE_PARAMETER).value():""; } - -// uriRequest = uri+"?"+smpParameter; - isAvailable = true; - //Query URL parameter -// System.out.println(endpoints.get(0).propertyMap().get("parameter").value()); - } /** - * Resolve - open stream with http get method - * @param smp - * @return - * @throws IOException + * Resolve - open stream with http get method. + * + * @param smp the smp + * @param fileName the file name + * @param contentType the content type + * @return the input stream + * @throws Exception the exception */ public InputStream resolveAsInputStream(String smp, String fileName, String contentType) throws Exception{ String query = resolveAsUriRequest(smp, fileName, contentType, true); - URL url = new URL(query); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setDoOutput(true); @@ -107,19 +119,19 @@ public class UriResolverReaderParameter { connection.setRequestProperty("charset", "utf-8"); connection.connect(); return connection.getInputStream(); - } /** - * - * @param storageID - * @param fileName - * @param contentType + * Resolve as uri request. + * + * @param storageID the storage id + * @param fileName the file name + * @param contentType the content type * @param encodeParams - if true, translates a string into application/x-www-form-urlencoded - * format using a specific encoding scheme + * format using a specific encoding scheme * @return the http url to get file - * @throws Exception + * @throws Exception the exception */ public String resolveAsUriRequest(String storageID, String fileName, String contentType, boolean encodeParams) throws Exception{ @@ -136,27 +148,53 @@ public class UriResolverReaderParameter { query+="&"+contentTypeParameter+"="+contentType; } else{ - Map hashParameters = getHashParemeters(storageID, fileName, contentType); - query = UrlEncoderUtil.encodeQuery(hashParameters); + Map hashParameters = getHashParameters(storageID, fileName, contentType); + query = UrlEncoderUtil.encodeQueryValues(hashParameters); } - String uriRequest = baseUri+"?"+query; - logger.trace("resolve url request: "+uriRequest); - return uriRequest; - } + + /** - * - * @param storageID - * @param fileName - * @param contentType - * @return - * @throws Exception + * Resolve as storage id request. + * + * @param storageID the storage id + * @param encodeParams the encode params + * @return the string + * @throws Exception the exception */ - public Map getHashParemeters(String storageID, String fileName, String contentType) throws Exception{ + public String resolveAsStorageIdRequest(String storageID, boolean encodeParams) throws Exception{ + + if(storageID==null || storageID.isEmpty()) + throw new Exception("storage ID is null or empty"); + + if(!encodeParams)//ENCODE URI + query = storageID; + else + query = UrlEncoderUtil.encodeQueryValue(storageID); + + if(baseUri.endsWith("/id")) + baseUri = baseUri.substring(0, baseUri.length()-3); + + String uriRequest = baseUri+"/"+query; + logger.trace("resolve storageID request: "+uriRequest); + return uriRequest; + } + + + /** + * Gets the hash parameters. + * + * @param storageID the storage id + * @param fileName the file name + * @param contentType the content type + * @return the hash parameters + * @throws Exception the exception + */ + public Map getHashParameters(String storageID, String fileName, String contentType) throws Exception{ Map hashParameters = new HashMap(); @@ -175,12 +213,64 @@ public class UriResolverReaderParameter { } + /** + * Checks if is available. + * + * @return true, if is available + */ public boolean isAvailable() { return isAvailable; } - - + /** + * Gets the base uri. + * + * @return the base uri + */ + public String getBaseUri() { + return baseUri; + } + + /** + * Gets the storage id parameter. + * + * @return the storageIDParameter + */ + public String getStorageIDParameter() { + return storageIDParameter; + } + + /** + * Gets the file name parameter. + * + * @return the file name parameter + */ + public String getFileNameParameter() { + return fileNameParameter; + } + + /** + * Gets the content type parameter. + * + * @return the content type parameter + */ + public String getContentTypeParameter() { + return contentTypeParameter; + } + + /** + * Gets the query. + * + * @return the query + */ + public String getQuery() { + return query; + } + + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ @Override public String toString() { StringBuilder builder = new StringBuilder(); @@ -198,55 +288,20 @@ public class UriResolverReaderParameter { return builder.toString(); } - public String getBaseUri() { - return baseUri; - } - /** - * @return the storageIDParameter - */ - public String getStorageIDParameter() { - return storageIDParameter; - } - - public String getFileNameParameter() { - return fileNameParameter; - } - - public String getContentTypeParameter() { - return contentTypeParameter; - } - - + /* public static void main(String[] args) throws Exception { - String scope = "/gcube/devsec"; System.out.println(new UriResolverReaderParameter(scope).toString()); - - /* - UriResolverReaderParameter uriResolver = new UriResolverReaderParameter(scope); - - String fileName = "Wikipedia_logo_silver.png"; - - - String uriRequest = uriResolver.resolveAsUriRequest("smp://Wikipedia_logo_silver.png?5ezvFfBOLqaqBlwCEtAvz4ch5BUu1ag3yftpCvV+gayz9bAtSsnO1/sX6pemTKbDe0qbchLexXeWgGcJlskYE8td9QSDXSZj5VSl9kdN9SN0/LRYaWUZuP4Q1J7lEiwkU4GKPsiD6PDRVcT4QAqTEy5hSIbr6o4Y", fileName, "image/png", true); - - System.out.println("uriRequest "+uriRequest); - */ -// +// UriResolverReaderParameter uriResolver = new UriResolverReaderParameter(scope); +// String fileName = "Wikipedia_logo_silver.png"; +// String uriRequest = uriResolver.resolveAsUriRequest("smp://Wikipedia_logo_silver.png?5ezvFfBOLqaqBlwCEtAvz4ch5BUu1ag3yftpCvV+gayz9bAtSsnO1/sX6pemTKbDe0qbchLexXeWgGcJlskYE8td9QSDXSZj5VSl9kdN9SN0/LRYaWUZuP4Q1J7lEiwkU4GKPsiD6PDRVcT4QAqTEy5hSIbr6o4Y", fileName, "image/png", true); +// System.out.println("uriRequest "+uriRequest); // InputStream is = uriResolver.resolve("smp://Wikipedia_logo_silver.png?5ezvFfBOLqaqBlwCEtAvz4ch5BUu1ag3yftpCvV+gayz9bAtSsnO1/sX6pemTKbDe0qbchLexXeWgGcJlskYE8td9QSDXSZj5VSl9kdN9SN0/LRYaWUZuP4Q1J7lEiwkU4GKPsiD6PDRVcT4QAqTEy5hSIbr6o4Y", fileName, "image/png"); // File file = new File(fileName); -// // FileOutputStream out = new FileOutputStream(file); -// -// // IOUtils.copy(is, out); // is.close(); -// // out.close(); - } - - public String getQuery() { - return query; - } + }*/ } diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/shortener/HttpCallerUtil.java b/src/main/java/org/gcube/portlets/user/workspace/server/shortener/HttpCallerUtil.java index cb3da02..d31c32d 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/shortener/HttpCallerUtil.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/shortener/HttpCallerUtil.java @@ -56,7 +56,7 @@ public class HttpCallerUtil { // Create an instance of HttpClient. HttpClient client = new HttpClient(); - String query = UrlEncoderUtil.encodeQuery(parameters); + String query = UrlEncoderUtil.encodeQueryValues(parameters); String fullUrl = urlService+"/"+urlMethod+"?"+query; diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/shortener/UrlEncoderUtil.java b/src/main/java/org/gcube/portlets/user/workspace/server/shortener/UrlEncoderUtil.java index 9774096..4a241bf 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/shortener/UrlEncoderUtil.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/shortener/UrlEncoderUtil.java @@ -5,52 +5,72 @@ package org.gcube.portlets.user.workspace.server.shortener; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; -import java.util.HashMap; import java.util.Map; import org.apache.log4j.Logger; + + /** - * @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it - * @Jun 4, 2013 + * The Class UrlEncoderUtil. * + * @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it + * Jan 13, 2016 */ public class UrlEncoderUtil { public static String charset = "UTF-8"; - public static Logger logger = Logger.getLogger(UrlEncoderUtil.class); + /** - * - * @param url - * @param parameters - * @return + * Encode query. + * + * @param parameters the parameters + * @return the string */ public static String encodeQuery(String... parameters){ String query = ""; for (String string : parameters) { - try { query+=URLEncoder.encode(string, charset)+"&"; } catch (UnsupportedEncodingException e) { logger.error(e); return query; } - } return removeLastChar(query); } - - + /** - * - * @param url - * @param parameters - * @return + * Encode query value. + * + * @param value the value + * @return the string */ - public static String encodeQuery(Map parameters){ + public static String encodeQueryValue(String value){ + + if(value==null || value.isEmpty()) + return value; + + try { + return URLEncoder.encode(value, charset); + } + catch (UnsupportedEncodingException e) { + logger.error(e); + return null; + } + } + + + /** + * Encode query values. + * + * @param parameters the parameters + * @return the string + */ + public static String encodeQueryValues(Map parameters){ String query = ""; @@ -58,20 +78,22 @@ public class UrlEncoderUtil { return query; for (String key : parameters.keySet()) { - try { - query+=String.format(key+"=%s", URLEncoder.encode(parameters.get(key), charset))+"&"; } catch (UnsupportedEncodingException e) { logger.error(e); return query; } } - return removeLastChar(query); - } + /** + * Removes the last char. + * + * @param string the string + * @return the string + */ public static String removeLastChar(String string){ if(string == null) @@ -83,20 +105,33 @@ public class UrlEncoderUtil { return string; } + /** + * Gets the charset. + * + * @return the charset + */ + public static String getCharset() { + + return charset; + } + + /** + * Sets the charset. + * + * @param charset the charset to set + */ + public static void setCharset(String charset) { + + UrlEncoderUtil.charset = charset; + } + + /* public static void main(String[] args) { - -// System.out.println(UrlEncoderUtil.encodeQuery("request=GetStyles", "layers=test Name", "service=WMS", "version=1.1.1")); - + // System.out.println(UrlEncoderUtil.encodeQuery("request=GetStyles", "layers=test Name", "service=WMS", "version=1.1.1")); HashMap parameters = new HashMap(); - parameters.put("request", "GetStyles"); parameters.put("layers", "test Name"); parameters.put("version", "1.1.1"); - System.out.println(UrlEncoderUtil.encodeQuery(parameters)); - - - } - - + }*/ } diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/util/WsUtil.java b/src/main/java/org/gcube/portlets/user/workspace/server/util/WsUtil.java index 6e4e8d3..2f08344 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/util/WsUtil.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/util/WsUtil.java @@ -21,7 +21,8 @@ import org.gcube.portal.custom.scopemanager.scopehelper.ScopeHelper; import org.gcube.portlets.user.workspace.client.model.InfoContactModel; import org.gcube.portlets.user.workspace.server.GWTWorkspaceBuilder; import org.gcube.portlets.user.workspace.server.notifications.NotificationsProducer; -import org.gcube.portlets.user.workspace.server.resolver.UriResolverReaderParameter; +import org.gcube.portlets.user.workspace.server.resolver.UriResolverReaderParameterForResolverIndex; +import org.gcube.portlets.user.workspace.server.resolver.UriResolverReaderParameterForResolverIndex.RESOLVER_TYPE; import org.gcube.portlets.user.workspace.server.shortener.UrlShortener; import org.gcube.portlets.user.workspace.server.util.resource.PropertySpecialFolderReader; import org.gcube.portlets.user.workspace.server.util.scope.ScopeUtilFilter; @@ -353,16 +354,16 @@ public class WsUtil { * @param session * @return */ - public static UriResolverReaderParameter getUriResolver(HttpSession httpSession) { + public static UriResolverReaderParameterForResolverIndex getUriResolver(HttpSession httpSession) { ASLSession session = getAslSession(httpSession); - UriResolverReaderParameter uriResolver = null; + UriResolverReaderParameterForResolverIndex uriResolver = null; try{ - uriResolver = (UriResolverReaderParameter) session.getAttribute(WsUtil.URI_RESOLVER_SERVICE); + uriResolver = (UriResolverReaderParameterForResolverIndex) session.getAttribute(WsUtil.URI_RESOLVER_SERVICE); if(uriResolver==null){ - uriResolver = new UriResolverReaderParameter(session.getScope().toString()); + uriResolver = new UriResolverReaderParameterForResolverIndex(session.getScope().toString(),RESOLVER_TYPE.SMP_ID); session.setAttribute(URI_RESOLVER_SERVICE, uriResolver); } diff --git a/src/test/java/org/gcube/portlets/user/workspace/SinglePublicLinkTest.java b/src/test/java/org/gcube/portlets/user/workspace/SinglePublicLinkTest.java index ca85af3..be9e63f 100644 --- a/src/test/java/org/gcube/portlets/user/workspace/SinglePublicLinkTest.java +++ b/src/test/java/org/gcube/portlets/user/workspace/SinglePublicLinkTest.java @@ -17,7 +17,8 @@ import org.gcube.common.homelibrary.home.workspace.folder.items.GCubeItem; import org.gcube.common.scope.api.ScopeProvider; import org.gcube.common.scope.impl.ScopeBean; import org.gcube.portlets.user.workspace.server.GWTWorkspaceBuilder; -import org.gcube.portlets.user.workspace.server.resolver.UriResolverReaderParameter; +import org.gcube.portlets.user.workspace.server.resolver.UriResolverReaderParameterForResolverIndex; +import org.gcube.portlets.user.workspace.server.resolver.UriResolverReaderParameterForResolverIndex.RESOLVER_TYPE; import org.gcube.portlets.user.workspace.server.util.HttpRequestUtil; import org.gcube.portlets.user.workspace.server.util.StringUtil; @@ -120,7 +121,7 @@ public class SinglePublicLinkTest { if(storageID==null || storageID.isEmpty()) throw new Exception("Sorry, public link on "+wsItem.getName() +" is not available"); - UriResolverReaderParameter uriResolver = new UriResolverReaderParameter(DEFAULT_SCOPE); + UriResolverReaderParameterForResolverIndex uriResolver = new UriResolverReaderParameterForResolverIndex(DEFAULT_SCOPE, RESOLVER_TYPE.SMP_ID); String uriRequest = ""; diff --git a/src/test/java/org/gcube/portlets/user/workspace/UriResolverReaderRR.java b/src/test/java/org/gcube/portlets/user/workspace/UriResolverReaderRR.java index 6761f58..d447074 100644 --- a/src/test/java/org/gcube/portlets/user/workspace/UriResolverReaderRR.java +++ b/src/test/java/org/gcube/portlets/user/workspace/UriResolverReaderRR.java @@ -24,7 +24,8 @@ import org.gcube.common.resources.gcore.ServiceEndpoint; import org.gcube.common.resources.gcore.ServiceEndpoint.AccessPoint; import org.gcube.common.scope.api.ScopeProvider; import org.gcube.portlets.user.workspace.server.GWTWorkspaceBuilder; -import org.gcube.portlets.user.workspace.server.resolver.UriResolverReaderParameter; +import org.gcube.portlets.user.workspace.server.resolver.UriResolverReaderParameterForResolverIndex; +import org.gcube.portlets.user.workspace.server.resolver.UriResolverReaderParameterForResolverIndex.RESOLVER_TYPE; import org.gcube.portlets.user.workspace.server.shortener.UrlShortener; import org.gcube.resources.discovery.client.api.DiscoveryClient; import org.gcube.resources.discovery.client.queries.impl.XQuery; @@ -186,7 +187,7 @@ public class UriResolverReaderRR { System.out.println("smpUri "+smpUri); System.out.println("get uriResolver..."); - UriResolverReaderParameter uriResolver = new UriResolverReaderParameter(DEFAULT_SCOPE); + UriResolverReaderParameterForResolverIndex uriResolver = new UriResolverReaderParameterForResolverIndex(DEFAULT_SCOPE, RESOLVER_TYPE.SMP_ID); // String url = uriResolver.resolveAsUriRequest(smpUri, "testResponse!@#$$%^^&&.html", folderItem.getMimeType(), true); String url = uriResolver.resolveAsUriRequest(smpUri, folderItem.getName(), folderItem.getMimeType(), true);