diff --git a/.classpath b/.classpath
index 08662b4..4b729e3 100644
--- a/.classpath
+++ b/.classpath
@@ -1,27 +1,27 @@
-
+
-
+
+
-
-
+
-
+
@@ -29,10 +29,6 @@
-
-
-
-
-
-
+
+
diff --git a/.settings/com.gwtplugins.gdt.eclipse.core.prefs b/.settings/com.gwtplugins.gdt.eclipse.core.prefs
index 9f63340..893dc58 100644
--- a/.settings/com.gwtplugins.gdt.eclipse.core.prefs
+++ b/.settings/com.gwtplugins.gdt.eclipse.core.prefs
@@ -1,4 +1,4 @@
eclipse.preferences.version=1
-lastWarOutDir=/home/francescomangiacrapa/eclipse-workspace/ckan-content-moderator-widget/target/ckan-content-moderator-widget-0.0.1-SNAPSHOT
+lastWarOutDir=/home/francesco-mangiacrapa/git/ckan-content-moderator-widget/target/ckan-content-moderator-widget-0.1.0-SNAPSHOT
warSrcDir=src/main/webapp
warSrcDirIsOutput=false
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
index 43c8195..cac0df4 100644
--- a/.settings/org.eclipse.jdt.core.prefs
+++ b/.settings/org.eclipse.jdt.core.prefs
@@ -1,11 +1,11 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
-org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.compliance=1.8
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore
org.eclipse.jdt.core.compiler.release=disabled
-org.eclipse.jdt.core.compiler.source=1.7
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component
index 408fe15..ac1811e 100644
--- a/.settings/org.eclipse.wst.common.component
+++ b/.settings/org.eclipse.wst.common.component
@@ -1,11 +1,11 @@
-
+
-
+
diff --git a/.settings/org.eclipse.wst.common.project.facet.core.xml b/.settings/org.eclipse.wst.common.project.facet.core.xml
index 9004727..e32ffb2 100644
--- a/.settings/org.eclipse.wst.common.project.facet.core.xml
+++ b/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -1,8 +1,8 @@
-
+
diff --git a/CHANGELOG.md b/CHANGELOG.md
index a920d65..0647d79 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,6 +5,6 @@ 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.0.0] - 2021-05-06
+## [v0.1.0-SNAPSHOT] - 2021-05-06
First Release
diff --git a/pom.xml b/pom.xml
index dc0b0e4..50be496 100644
--- a/pom.xml
+++ b/pom.xml
@@ -13,8 +13,8 @@
org.gcube.portlets.widgets
ckan-content-moderator-widget
- jar
- 0.0.1-SNAPSHOT
+ war
+ 0.1.0-SNAPSHOT
gCube Ckan Content Moderator Widget
@@ -30,13 +30,14 @@
- 2.7.0
+ 2.9.0
distro
UTF-8
UTF-8
- 1.7
+ 1.8
1.8
+ ${project.build.directory}/${project.build.finalName}
@@ -44,7 +45,7 @@
org.gcube.distribution
maven-portal-bom
- 3.6.1-SNAPSHOT
+ 3.6.2-SNAPSHOT
pom
import
@@ -59,10 +60,30 @@
+
+
+ javax.servlet
+ javax.servlet-api
+ 3.1.0
+ provided
+
+
+
+ xml-apis
+ xml-apis
+ 1.4.01
+ provided
+
+
com.google.gwt
gwt-user
${gwtVersion}
+
+
+ com.google.gwt
+ gwt-dev
+ ${gwtVersion}
provided
@@ -70,22 +91,49 @@
gwt-bootstrap
2.3.2.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- org.gcube.datacatalogue
- catalogue-util-library
- [1.0.0-SNAPSHOT, 2.0.0)
- compile
+ org.slf4j
+ slf4j-api
org.slf4j
slf4j-log4j12
- provided
-
-
- org.slf4j
- slf4j-api
- provided
+ test
+
junit
junit
@@ -96,21 +144,7 @@
-
-
-
- src/main/java
-
- **/*.*
-
-
-
- src/main/resources
-
- **/*.*
-
-
-
+ ${webappDirectory}/WEB-INF/classes
@@ -123,7 +157,7 @@
compile
- test
+
@@ -131,19 +165,39 @@
documentation at codehaus.org -->
CkanContentModeratorWidget.html
-
- org.gcube.portlets.widgets.ckancontentmoderator.CkanContentModeratorWidget
-
+ ${webappDirectory}
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-war-plugin
+
+
+ compile
+
+ exploded
+
+
+
+
+ ${webappDirectory}
org.apache.maven.plugins
maven-compiler-plugin
+
+
+ ${maven.compiler.target}
+
org.apache.maven.plugins
maven-assembly-plugin
+ 2.2
descriptor.xml
@@ -159,7 +213,33 @@
+
+ org.apache.maven.plugins
+ maven-resources-plugin
+ 2.5
+
+
+ copy-profile
+ install
+
+ copy-resources
+
+
+ target
+
+
+ ${project.basedir}
+ true
+
+ profile.xml
+
+
+
+
+
+
+
-
+
\ No newline at end of file
diff --git a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/CkanContentModeratorWidget.gwt.xml b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/CkanContentModeratorWidget.gwt.xml
new file mode 100644
index 0000000..a8e0ac3
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/CkanContentModeratorWidget.gwt.xml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorService.java b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorService.java
index 8af893d..fea7138 100644
--- a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorService.java
+++ b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorService.java
@@ -1,9 +1,6 @@
package org.gcube.portlets.widgets.ckancontentmoderator.client;
-import java.util.List;
-
-import org.gcube.datacatalogue.utillibrary.shared.jackan.model.CkanDataset;
-import org.gcube.portlets.widgets.ckancontentmoderator.server.ContentModeratorSystem.ItemStatus;
+import org.gcube.portlets.widgets.ckancontentmoderator.shared.ItemStatus;
import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
@@ -18,7 +15,7 @@ public interface CkanContentModeratorService extends RemoteService {
public void setStatus(String itemId, ItemStatus theStatus);
- public List getListItemsForStatus(ItemStatus theStatus);
+ //public List getListItemsForStatus(ItemStatus theStatus);
public void approveItem(String itemId);
diff --git a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorServiceAsync.java b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorServiceAsync.java
index 1c261b3..b4a40bc 100644
--- a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorServiceAsync.java
+++ b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorServiceAsync.java
@@ -1,9 +1,6 @@
package org.gcube.portlets.widgets.ckancontentmoderator.client;
-import java.util.List;
-
-import org.gcube.datacatalogue.utillibrary.shared.jackan.model.CkanDataset;
-import org.gcube.portlets.widgets.ckancontentmoderator.server.ContentModeratorSystem.ItemStatus;
+import org.gcube.portlets.widgets.ckancontentmoderator.shared.ItemStatus;
import com.google.gwt.user.client.rpc.AsyncCallback;
@@ -13,7 +10,7 @@ public interface CkanContentModeratorServiceAsync {
void approveItem(String itemId, AsyncCallback callback);
- void getListItemsForStatus(ItemStatus theStatus, AsyncCallback> callback);
+ //void getListItemsForStatus(ItemStatus theStatus, AsyncCallback> callback);
void permanentlyDelete(String itemId, AsyncCallback callback);
diff --git a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorWidget.java b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorWidget.java
index e581ffc..a18da30 100644
--- a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorWidget.java
+++ b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/CkanContentModeratorWidget.java
@@ -1,53 +1,49 @@
package org.gcube.portlets.widgets.ckancontentmoderator.client;
-import java.util.List;
-
-import org.gcube.datacatalogue.utillibrary.shared.jackan.model.CkanDataset;
-import org.gcube.portlets.widgets.ckancontentmoderator.server.ContentModeratorSystem.ItemStatus;
-
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.core.client.GWT;
-import com.google.gwt.user.client.rpc.AsyncCallback;
/**
* Entry point classes define onModuleLoad()
.
*/
public class CkanContentModeratorWidget implements EntryPoint {
- /**
- * The message displayed to the user when the server cannot be reached or
- * returns an error.
- */
- private static final String SERVER_ERROR = "An error occurred while "
- + "attempting to contact the server. Please check your network "
- + "connection and try again.";
+ /**
+ * The message displayed to the user when the server cannot be reached or
+ * returns an error.
+ */
+ private static final String SERVER_ERROR = "An error occurred while "
+ + "attempting to contact the server. Please check your network " + "connection and try again.";
- /**
- * Create a remote service proxy to talk to the server-side Greeting service.
- */
- private final CkanContentModeratorServiceAsync greetingService = GWT.create(CkanContentModeratorService.class);
+ /**
+ * Create a remote service proxy to talk to the server-side Greeting service.
+ */
+ private final CkanContentModeratorServiceAsync greetingService = GWT.create(CkanContentModeratorService.class);
+ /**
+ * This is the entry point method.
+ */
+ public void onModuleLoad() {
+ //CustomizedView cvTable = new CustomizedView();
+// cvTable.setData(DataGenerator.generateUsers(10));
+//
+// RootPanel.get().add(cvTable);
- /**
- * This is the entry point method.
- */
- public void onModuleLoad() {
-
+//
+// greetingService.getListItemsForStatus(ItemStatus.PENDING, new AsyncCallback>() {
+//
+// @Override
+// public void onSuccess(List result) {
+// // TODO Auto-generated method stub
+//
+// }
+//
+// @Override
+// public void onFailure(Throwable caught) {
+// // TODO Auto-generated method stub
+//
+// }
+// });
+ }
- greetingService.getListItemsForStatus(ItemStatus.PENDING, new AsyncCallback>() {
-
- @Override
- public void onSuccess(List result) {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public void onFailure(Throwable caught) {
- // TODO Auto-generated method stub
-
- }
- });
- }
-
}
diff --git a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/material/table/CustomizedView.java b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/material/table/CustomizedView.java
new file mode 100644
index 0000000..1b4cb85
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/material/table/CustomizedView.java
@@ -0,0 +1,249 @@
+///*
+// * #%L
+// * GwtMaterial
+// * %%
+// * Copyright (C) 2015 - 2017 GwtMaterialDesign
+// * %%
+// * Licensed under the Apache License, Version 2.0 (the "License");
+// * you may not use this file except in compliance with the License.
+// * You may obtain a copy of the License at
+// *
+// * http://www.apache.org/licenses/LICENSE-2.0
+// *
+// * Unless required by applicable law or agreed to in writing, software
+// * distributed under the License is distributed on an "AS IS" BASIS,
+// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// * See the License for the specific language governing permissions and
+// * limitations under the License.
+// * #L%
+// */
+//package org.gcube.portlets.widgets.ckancontentmoderator.client.material.table;
+//
+//import java.util.List;
+//
+//
+//import org.gcube.portlets.widgets.ckancontentmoderator.shared.User;
+//
+//import com.google.gwt.core.client.GWT;
+//import com.google.gwt.event.dom.client.ClickEvent;
+//import com.google.gwt.event.dom.client.ClickHandler;
+//import com.google.gwt.uibinder.client.UiBinder;
+//import com.google.gwt.uibinder.client.UiField;
+//import com.google.gwt.user.cellview.client.ColumnSortEvent;
+//import com.google.gwt.user.cellview.client.TextColumn;
+//import com.google.gwt.user.client.ui.Composite;
+//import com.google.gwt.user.client.ui.Widget;
+//
+//
+//import gwt.material.design.client.constants.IconType;
+//import gwt.material.design.client.data.events.ColumnSortHandler;
+//import gwt.material.design.client.data.events.RowSelectEvent;
+//import gwt.material.design.client.data.events.RowSelectHandler;
+//import gwt.material.design.client.ui.MaterialIcon;
+//import gwt.material.design.client.ui.MaterialImage;
+//import gwt.material.design.client.ui.MaterialListBox;
+//import gwt.material.design.client.ui.MaterialPanel;
+//import gwt.material.design.client.ui.table.MaterialDataTable;
+//import gwt.material.design.client.ui.table.cell.WidgetColumn;
+//
+//public class CustomizedView extends Composite {
+//
+// interface CustomizedViewUiBinder extends UiBinder {
+// }
+//
+// private List users;
+//
+// @UiField
+// MaterialDataTable table;
+//
+//
+// public CustomizedView(Binder uiBinder) {
+// initWidget(uiBinder.createAndBindUi(this));
+// }
+//
+//
+// public void setupTable() {
+// MaterialIcon icon = new MaterialIcon();
+// icon.setPadding(4);
+// icon.setIconType(IconType.ADD_CIRCLE_OUTLINE);
+//
+// icon.addClickHandler(new ClickHandler() {
+//
+// @Override
+// public void onClick(ClickEvent event) {
+// users.add(0, new DataGenerator().generateUsers(1).get(0));
+// setData(users);
+//
+// }
+// });
+// table.getScaffolding().getToolPanel().add(icon);
+//
+// MaterialIcon delete = new MaterialIcon();
+// delete.setPadding(4);
+// delete.setIconType(IconType.DELETE);
+// table.getScaffolding().getToolPanel().add(delete);
+//
+// delete.addClickHandler(new ClickHandler() {
+//
+// @Override
+// public void onClick(ClickEvent event) {
+// User user = table.getView().getSelectedRowModels(true).get(0);
+// users.remove(user);
+// setData(users);
+//
+// }
+// });
+//
+// table.addColumn("Image", new WidgetColumn() {
+// @Override
+// public MaterialPanel getValue(User object) {
+// MaterialPanel panel = new MaterialPanel();
+// MaterialImage image = new MaterialImage();
+// // image.setUrl(object.getImage());
+// image.setWidth("32px");
+// image.setHeight("32px");
+// image.setCircle(true);
+// panel.add(image);
+// return panel;
+// }
+// });
+//
+// table.addColumn("First Name", new TextColumn() {
+// @Override
+// public String getValue(User object) {
+// return object.getName();
+// }
+//
+// @Override
+// public boolean sortable() {
+// return true;
+// }
+// });
+//
+// table.addColumn("Option", new WidgetColumn() {
+// @Override
+// public MaterialListBox getValue(User object) {
+// MaterialListBox listBox = new MaterialListBox();
+// listBox.addItem("Option 1");
+// listBox.addItem("Option 2");
+// listBox.addItem("Option 3");
+// return listBox;
+// }
+// }).width(200);
+//
+// table.addColumn("City", new TextColumn() {
+// @Override
+// public String getValue(User object) {
+// return object.getCity();
+// }
+// });
+//
+// table.addRowSelectHandler(new RowSelectHandler() {
+//
+// @Override
+// public void onRowSelect(RowSelectEvent event) {
+// log("RowSelectEvent", event.getModel().getName() + ": " + event.isSelected());
+//
+// }
+// });
+//
+// table.addColumnSortHandler(new ColumnSortHandler() {
+//
+// @Override
+// public void onColumnSort(ColumnSortEvent event) {
+// log("ColumnSortEvent",
+// "Sorted: " + event.getSortContext().getSortDir() + ", columnIndex: " + event.getColumnIndex());
+// table.getView().refresh();
+//
+// }
+// });
+//
+// /*
+// * // Add category opened handler, called when a category is opened.
+// * table.addCategoryOpenedHandler(event -> { log("CategoryOpenedEvent",
+// * "Category Opened: " + event.getName()); });
+// *
+// * // Add category closed handler, called when a category is closed.
+// * table.addCategoryClosedHandler(event -> { log("CategoryClosedEvent",
+// * "Category Closed: " + event.getName()); });
+// *
+// * // Add a row double click handler, called when a row is double clicked.
+// * table.addRowDoubleClickHandler(event -> { log("RowDoubleClickEvent",
+// * "Row Double Clicked: " + event.getModel().getName() + ", x:" +
+// * event.getMouseEvent().getPageX() + ", y: " +
+// * event.getMouseEvent().getPageY()); });
+// *
+// * // Configure the tables long press duration configuration. // The short press
+// * is when a click is held less than this duration.
+// * table.setLongPressDuration(400);
+// *
+// * // Add a row long press handler, called when a row is long pressed.
+// * table.addRowLongPressHandler(event -> { log("RowLongPressEvent",
+// * "Row Long Pressed: " + event.getModel().getName() + ", x:" +
+// * event.getMouseEvent().getPageX() + ", y: " +
+// * event.getMouseEvent().getPageY()); });
+// *
+// * // Add a row short press handler, called when a row is short pressed.
+// * table.addRowShortPressHandler(event -> { log("RowShortPressEvent",
+// * "Row Short Pressed: " + event.getModel().getName() + ", x:" +
+// * event.getMouseEvent().getPageX() + ", y: " +
+// * event.getMouseEvent().getPageY()); });
+// *
+// * // Add rendered handler, called when 'setRowData' calls finish rendering. //
+// * Guaranteed to only be called once from the data set render, ignoring sort
+// * renders and refreshView renders. table.addRenderedHandler(e -> {
+// * log("RenderedEvent", "Table Rendered"); });
+// *
+// * // Add components rendered handler, Called each time when components are
+// * rendered, // which includes sorting renders and refreshView() renders.
+// * table.addComponentsRenderedHandler(e -> { log("ComponentsRenderedEvent",
+// * "Data Table Components Rendered"); });
+// */
+// }
+//
+// protected void log(String eventName, String description) {
+// GWT.log(description);
+// }
+//
+// @Override
+// public void setData(List users) {
+// this.users = users;
+// // Customized Table Scaffolding elements
+// table.getTableTitle().setText("Customers");
+// table.setRowData(0, users);
+// table.getView().refresh();
+// }
+//
+//// @Override
+//// public void setupOptions() {
+//// // Table Name
+//// tableName.addKeyUpHandler(event -> table.getTableTitle().setText(tableName.getValue()));
+////
+//// // Selection Type
+//// selectionType.add(SelectionType.NONE);
+//// selectionType.add(SelectionType.SINGLE);
+//// selectionType.add(SelectionType.MULTIPLE);
+//// selectionType.addValueChangeHandler(event -> table.setSelectionType(event.getValue()));
+//// selectionType.setValue(SelectionType.SINGLE, true);
+//// // Density
+//// }
+////
+//// @UiHandler("stickyHeader")
+//// void stickyHeader(ValueChangeEvent event) {
+//// table.setUseStickyHeader(event.getValue());
+//// }
+////
+//// @UiHandler("striped")
+//// void striped(ValueChangeEvent event) {
+//// if (event.getValue()) {
+//// table.getScaffolding().getTable().addStyleName("striped");
+//// } else {
+//// table.getScaffolding().getTable().removeStyleName("striped");
+//// }
+//// }
+//
+// public void reload() {
+// table.getView().setRedraw(true);
+// table.getView().refresh();
+// }
+//}
diff --git a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/material/table/CustomizedView.ui.xml b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/material/table/CustomizedView.ui.xml
new file mode 100644
index 0000000..899c663
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/material/table/CustomizedView.ui.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/material/table/DataGenerator.java b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/material/table/DataGenerator.java
new file mode 100644
index 0000000..165f7a7
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/client/material/table/DataGenerator.java
@@ -0,0 +1,27 @@
+package org.gcube.portlets.widgets.ckancontentmoderator.client.material.table;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.gcube.portlets.widgets.ckancontentmoderator.shared.User;
+
+public class DataGenerator {
+
+// static {
+// MaterialDesign.injectJs(AppResources.INSTANCE.fakerJs());
+// }
+
+ public static List generateUsers(int total) {
+ return generateUsers(total, null);
+ }
+
+ public static List generateUsers(int total, String category) {
+ List users = new ArrayList<>();
+ for (int i = 0; i < total; i++) {
+ User user = new User("name "+i, "city "+i);
+ users.add(user);
+ }
+ return users;
+ }
+
+}
diff --git a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/server/CkanContentModeratorServiceAImpl.java b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/server/CkanContentModeratorServiceAImpl.java
index 6e99383..6acf26f 100644
--- a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/server/CkanContentModeratorServiceAImpl.java
+++ b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/server/CkanContentModeratorServiceAImpl.java
@@ -1,9 +1,7 @@
package org.gcube.portlets.widgets.ckancontentmoderator.server;
-import java.util.List;
-
-import org.gcube.datacatalogue.utillibrary.shared.jackan.model.CkanDataset;
import org.gcube.portlets.widgets.ckancontentmoderator.client.CkanContentModeratorService;
+import org.gcube.portlets.widgets.ckancontentmoderator.shared.ItemStatus;
import com.google.gwt.user.server.rpc.RemoteServiceServlet;
@@ -26,11 +24,11 @@ public class CkanContentModeratorServiceAImpl extends RemoteServiceServlet imple
}
- @Override
- public List getListItemsForStatus(ItemStatus theStatus) {
- // TODO Auto-generated method stub
- return null;
- }
+// @Override
+// public List getListItemsForStatus(ItemStatus theStatus) {
+// // TODO Auto-generated method stub
+// return null;
+// }
@Override
public void approveItem(String itemId) {
@@ -49,4 +47,5 @@ public class CkanContentModeratorServiceAImpl extends RemoteServiceServlet imple
// TODO Auto-generated method stub
}
+
}
diff --git a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/server/ContentModeratorSystem.java b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/server/ContentModeratorSystem.java
index cb2d8c1..798e785 100644
--- a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/server/ContentModeratorSystem.java
+++ b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/server/ContentModeratorSystem.java
@@ -1,9 +1,6 @@
package org.gcube.portlets.widgets.ckancontentmoderator.server;
-import java.util.List;
-
-import org.gcube.datacatalogue.utillibrary.shared.jackan.model.CkanDataset;
-
+import org.gcube.portlets.widgets.ckancontentmoderator.shared.ItemStatus;
// TODO: Auto-generated Javadoc
/**
@@ -37,7 +34,7 @@ public interface ContentModeratorSystem {
* @param theStatus the the status
* @return the list items for status
*/
- List getListItemsForStatus(ItemStatus theStatus);
+ //List getListItemsForStatus(ItemStatus theStatus);
/**
* Approve item.
@@ -62,47 +59,4 @@ public interface ContentModeratorSystem {
*/
void permanentlyDelete(String itemId);
- /**
- * The Enum ItemStatus.
- *
- * @author Francesco Mangiacrapa at ISTI-CNR francesco.mangiacrapa@isti.cnr.it
- *
- * May 7, 2021
- */
- static enum ItemStatus {
- PENDING("pending", "Pending"), APPROVED("approved", "Approved"), REJECTED("rejected", "Rejected");
-
- private String id;
- private String label;
-
- /**
- * Instantiates a new item status.
- *
- * @param id the id
- * @param label the label
- */
- private ItemStatus(String id, String label) {
- this.id = id;
- this.label = label;
- }
-
- /**
- * Gets the id.
- *
- * @return the id
- */
- public String getId() {
- return id;
- }
-
- /**
- * Gets the label.
- *
- * @return the label
- */
- public String getLabel() {
- return label;
- }
-
- }
}
diff --git a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/shared/ItemStatus.java b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/shared/ItemStatus.java
new file mode 100644
index 0000000..5579358
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/shared/ItemStatus.java
@@ -0,0 +1,45 @@
+package org.gcube.portlets.widgets.ckancontentmoderator.shared;
+
+/**
+ * The Enum ItemStatus.
+ *
+ * @author Francesco Mangiacrapa at ISTI-CNR francesco.mangiacrapa@isti.cnr.it
+ *
+ * May 7, 2021
+ */
+public enum ItemStatus {
+ PENDING("pending", "Pending"), APPROVED("approved", "Approved"), REJECTED("rejected", "Rejected");
+
+ private String id;
+ private String label;
+
+ /**
+ * Instantiates a new item status.
+ *
+ * @param id the id
+ * @param label the label
+ */
+ private ItemStatus(String id, String label) {
+ this.id = id;
+ this.label = label;
+ }
+
+ /**
+ * Gets the id.
+ *
+ * @return the id
+ */
+ public String getId() {
+ return id;
+ }
+
+ /**
+ * Gets the label.
+ *
+ * @return the label
+ */
+ public String getLabel() {
+ return label;
+ }
+
+}
\ No newline at end of file
diff --git a/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/shared/User.java b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/shared/User.java
new file mode 100644
index 0000000..82307d2
--- /dev/null
+++ b/src/main/java/org/gcube/portlets/widgets/ckancontentmoderator/shared/User.java
@@ -0,0 +1,52 @@
+package org.gcube.portlets.widgets.ckancontentmoderator.shared;
+
+import java.io.Serializable;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The Class User.
+ *
+ * @author Francesco Mangiacrapa at ISTI-CNR (francesco.mangiacrapa@isti.cnr.it)
+ *
+ * May 26, 2021
+ */
+public class User implements Serializable {
+
+ String name;
+
+ String city;
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * Instantiates a new user.
+ */
+ public User() {
+
+ }
+
+ public User(String name, String city) {
+ super();
+ this.name = name;
+ this.city = city;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getCity() {
+ return city;
+ }
+
+ public void setCity(String city) {
+ this.city = city;
+ }
+
+}
diff --git a/src/main/resources/org/gcube/portlets/widgets/ckancontentmoderator/CkanContentModeratorWidget.gwt.xml b/src/main/resources/org/gcube/portlets/widgets/ckancontentmoderator/CkanContentModeratorWidget.gwt.xml
index 309a748..a8e0ac3 100644
--- a/src/main/resources/org/gcube/portlets/widgets/ckancontentmoderator/CkanContentModeratorWidget.gwt.xml
+++ b/src/main/resources/org/gcube/portlets/widgets/ckancontentmoderator/CkanContentModeratorWidget.gwt.xml
@@ -1,22 +1,25 @@
-
-
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
+
-
-
+
-
-
-
+
+
+
+
+
+
diff --git a/src/test/java/org/gcube/portlets/widgets/ckancontentmoderator/server/CkanContentModeratorServiceAImplTest.java b/src/test/java/org/gcube/portlets/widgets/ckancontentmoderator/server/CkanContentModeratorServiceAImplTest.java
index 6b7c4ae..7587878 100644
--- a/src/test/java/org/gcube/portlets/widgets/ckancontentmoderator/server/CkanContentModeratorServiceAImplTest.java
+++ b/src/test/java/org/gcube/portlets/widgets/ckancontentmoderator/server/CkanContentModeratorServiceAImplTest.java
@@ -6,7 +6,7 @@ import org.junit.Test;
public class CkanContentModeratorServiceAImplTest {
- @Test
+ //@Test
public void test() {
fail("Not yet implemented");
}