diff --git a/distro/changelog.xml b/distro/changelog.xml
index 9e9cb09..e81bef1 100644
--- a/distro/changelog.xml
+++ b/distro/changelog.xml
@@ -1,29 +1,52 @@
-
+
+ External Url files are properly managed as resources
+
+
Metadata model v.3 supported
-
+
Some bug fixes
-
+
Some minor terms changed
added support for ticket #7207
-
+
Minor fixes to speed up role retrievals
-
- A post is automatically created by the Product Catalogue user every time someone publishes
- The user now can select all files in the hierarchy and publish them
- The user can now associate the product to the available groups
+
+ A post is automatically created by the Product Catalogue user
+ every time someone publishes
+ The user now can select all files in the hierarchy and publish
+ them
+ The user can now associate the product to the available groups
+
Removed ASL session dependency
-
+
Creation of a group is now supported
Association of a dataset to a group is now supported
- Products are copied to .catalogue area when publishing is performed from workspace
+ Products are copied to .catalogue area when publishing is
+ performed from workspace
-
+
First Release
diff --git a/pom.xml b/pom.xml
index 49ad33a..62464e5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -12,7 +12,7 @@
org.gcube.portlets.widgets
ckan-metadata-publisher-widget
- 1.3.0-SNAPSHOT
+ 1.3.1-SNAPSHOT
gCube Ckan metadata publisher widget
diff --git a/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/server/utils/WorkspaceUtils.java b/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/server/utils/WorkspaceUtils.java
index 5c838b0..cddf90c 100644
--- a/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/server/utils/WorkspaceUtils.java
+++ b/src/main/java/org/gcube/portlets/widgets/ckandatapublisherwidget/server/utils/WorkspaceUtils.java
@@ -8,6 +8,7 @@ import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
+import org.gcube.common.homelibary.model.items.type.FolderItemType;
import org.gcube.common.homelibrary.home.HomeLibrary;
import org.gcube.common.homelibrary.home.exceptions.InternalErrorException;
import org.gcube.common.homelibrary.home.workspace.Workspace;
@@ -15,6 +16,7 @@ import org.gcube.common.homelibrary.home.workspace.WorkspaceFolder;
import org.gcube.common.homelibrary.home.workspace.WorkspaceItem;
import org.gcube.common.homelibrary.home.workspace.catalogue.WorkspaceCatalogue;
import org.gcube.common.homelibrary.home.workspace.folder.FolderItem;
+import org.gcube.common.homelibrary.home.workspace.folder.items.ExternalUrl;
import org.gcube.common.homelibrary.home.workspace.folder.items.GCubeItem;
import org.gcube.datacatalogue.ckanutillibrary.server.utils.UtilMethods;
import org.gcube.datacatalogue.ckanutillibrary.shared.ResourceBean;
@@ -253,14 +255,23 @@ public class WorkspaceUtils {
// name and description could have been edited
copiedFile.setDescription(resource.getDescription());
+ // check if it is an external url
+ String externalUrl = null;
+ try{
+ boolean isExternalUrl = ((FolderItem)copiedFile).getFolderItemType().equals(FolderItemType.EXTERNAL_URL);
+ externalUrl = isExternalUrl ? ((ExternalUrl)copiedFile).getUrl() : null;
+ }catch(Exception e){
+ logger.warn("Unable to check if it is an external url file ", e);
+ }
+
resources.add(new ResourceBean(
- copiedFile.getPublicLink(true),
- resource.getEditableName(),
- copiedFile.getDescription(),
- copiedFile.getId(),
- userName,
- null, // dataset id, to be set
- ((FolderItem)copiedFile).getMimeType()));
+ externalUrl != null ? externalUrl : copiedFile.getPublicLink(true),
+ resource.getEditableName(),
+ copiedFile.getDescription(),
+ copiedFile.getId(),
+ userName,
+ null, // dataset id, to be set
+ ((FolderItem)copiedFile).getMimeType()));
// postpone rename operation
copiedFile.rename(resource.getEditableName());