notifier has been update
git-svn-id: http://svn.d4science-ii.research-infrastructures.eu/gcube/trunk/portlets/user/workspace-tree-widget@69701 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
c6cbf9ccaa
commit
daaf1d6990
|
@ -13,7 +13,6 @@
|
||||||
<attribute name="maven.pomderived" value="true"/>
|
<attribute name="maven.pomderived" value="true"/>
|
||||||
</attributes>
|
</attributes>
|
||||||
</classpathentry>
|
</classpathentry>
|
||||||
<classpathentry combineaccessrules="false" kind="src" path="/opengcubeapplication"/>
|
|
||||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6">
|
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6">
|
||||||
<attributes>
|
<attributes>
|
||||||
<attribute name="maven.pomderived" value="true"/>
|
<attribute name="maven.pomderived" value="true"/>
|
||||||
|
|
32
pom.xml
32
pom.xml
|
@ -145,29 +145,27 @@
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
|
||||||
<!-- <dependency> -->
|
|
||||||
<!-- <groupId>org.gcube.portlets.user</groupId> -->
|
|
||||||
<!-- <artifactId>opengcubeapplication</artifactId> -->
|
|
||||||
<!-- <version>1.0.0-SNAPSHOT</version> -->
|
|
||||||
<!-- <scope>provided</scope> -->
|
|
||||||
<!-- </dependency> -->
|
|
||||||
|
|
||||||
<!-- REMOVE THIS -->
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.gcube.portlets.user</groupId>
|
<groupId>org.gcube.portlets.user</groupId>
|
||||||
<artifactId>opengcubeapplication</artifactId>
|
<artifactId>opengcubeapplication</artifactId>
|
||||||
<version>1.0.0-SNAPSHOT</version>
|
<version>1.0.0-SNAPSHOT</version>
|
||||||
<scope>system</scope>
|
|
||||||
<systemPath>/home/backup-old-home/francesco-mangiacrapa/workspace/opengcubeapplication/target/opengcubeapplication-1.0.0-SNAPSHOT.jar</systemPath>
|
|
||||||
<exclusions>
|
|
||||||
<exclusion>
|
|
||||||
<artifactId>opengcubeapplication</artifactId>
|
|
||||||
<groupId>org.gcube.portlets.user</groupId>
|
|
||||||
</exclusion>
|
|
||||||
</exclusions>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<!-- REMOVE THIS -->
|
||||||
|
<!-- <dependency> -->
|
||||||
|
<!-- <groupId>org.gcube.portlets.user</groupId> -->
|
||||||
|
<!-- <artifactId>opengcubeapplication</artifactId> -->
|
||||||
|
<!-- <version>1.0.0-SNAPSHOT</version> -->
|
||||||
|
<!-- <scope>system</scope> -->
|
||||||
|
<!-- <systemPath>/home/backup-old-home/francesco-mangiacrapa/workspace/opengcubeapplication/target/opengcubeapplication-1.0.0-SNAPSHOT.jar</systemPath> -->
|
||||||
|
<!-- <exclusions> -->
|
||||||
|
<!-- <exclusion> -->
|
||||||
|
<!-- <artifactId>opengcubeapplication</artifactId> -->
|
||||||
|
<!-- <groupId>org.gcube.portlets.user</groupId> -->
|
||||||
|
<!-- </exclusion> -->
|
||||||
|
<!-- </exclusions> -->
|
||||||
|
<!-- </dependency> -->
|
||||||
|
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
<build>
|
<build>
|
||||||
|
|
|
@ -257,15 +257,17 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
|
||||||
if(isNewFolder){
|
if(isNewFolder){
|
||||||
//create a lowest object to send to server
|
//create a lowest object to send to server
|
||||||
fileModel = new FileModel("tempId", finalDialog.getName(), parentModel, true, false); //create new shared folder
|
fileModel = new FileModel("tempId", finalDialog.getName(), parentModel, true, false); //create new shared folder
|
||||||
|
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
fileModel = finalDialog.getParentFolder(); //add user for share
|
fileModel = finalDialog.getParentFolder(); //add user for share
|
||||||
|
|
||||||
//create a lowest object to send to server
|
//create a lowest object to send to server
|
||||||
fileModel = new FileModel(fileModel.getIdentifier(), fileModel.getName(), fileModel.getParentFileModel(), fileModel.isDirectory(), fileModel.isShared());
|
fileModel = new FileModel(fileModel.getIdentifier(), fileModel.getName(), fileModel.getParentFileModel(), fileModel.isDirectory(), fileModel.isShared());
|
||||||
fileModel.setDescription(finalDialog.getDescription());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fileModel.setDescription(finalDialog.getDescription());
|
||||||
|
|
||||||
//DEBUG
|
//DEBUG
|
||||||
// System.out.println("FileModel id "+fileModel.getIdentifier() + " name: "+fileModel.getName() + " parent " + fileModel.getParentFileModel());
|
// System.out.println("FileModel id "+fileModel.getIdentifier() + " name: "+fileModel.getName() + " parent " + fileModel.getParentFileModel());
|
||||||
// for(InfoContactModel contact:finalDialog.getSharedListUsers() ){
|
// for(InfoContactModel contact:finalDialog.getSharedListUsers() ){
|
||||||
|
@ -721,7 +723,7 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
// explorerPanel.getAsycTreePanel().unmask();
|
// explorerPanel.getAsycTreePanel().unmask();
|
||||||
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " deleting smart folder. Reload root", null);
|
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " deleting smart folder.", null);
|
||||||
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -763,7 +765,7 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
explorerPanel.getAsycTreePanel().unmask();
|
explorerPanel.getAsycTreePanel().unmask();
|
||||||
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " saving smart folder. Reload root", null);
|
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " saving smart folder.", null);
|
||||||
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -827,7 +829,7 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
explorerPanel.getAsycTreePanel().unmask();
|
explorerPanel.getAsycTreePanel().unmask();
|
||||||
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " renaming item. Reload root", null);
|
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " renaming item.", null);
|
||||||
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -873,7 +875,7 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
explorerPanel.getAsycTreePanel().unmask();
|
explorerPanel.getAsycTreePanel().unmask();
|
||||||
new MessageBoxAlert("Error", caught.getMessage()+". Reload root", null);
|
new MessageBoxAlert("Error", caught.getMessage()+".", null);
|
||||||
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1020,7 +1022,7 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
new MessageBoxAlert("Error", caught.getMessage()+". Reload root" , null);
|
new MessageBoxAlert("Error", caught.getMessage()+"." , null);
|
||||||
System.out.println(caught.getMessage());
|
System.out.println(caught.getMessage());
|
||||||
explorerPanel.getAsycTreePanel().reloadTreeLevelAndExpandFolder(event.getTargetParentFileModel().getIdentifier());
|
explorerPanel.getAsycTreePanel().reloadTreeLevelAndExpandFolder(event.getTargetParentFileModel().getIdentifier());
|
||||||
explorerPanel.getAsycTreePanel().reloadTreeLevelAndExpandFolder(event.getFileSourceModel().getParentFileModel().getIdentifier());
|
explorerPanel.getAsycTreePanel().reloadTreeLevelAndExpandFolder(event.getFileSourceModel().getParentFileModel().getIdentifier());
|
||||||
|
@ -1065,7 +1067,7 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
explorerPanel.getAsycTreePanel().unmask();
|
explorerPanel.getAsycTreePanel().unmask();
|
||||||
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " imaging preview. Reload root", null);
|
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " imaging preview.", null);
|
||||||
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1101,7 +1103,7 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
explorerPanel.getAsycTreePanel().unmask();
|
explorerPanel.getAsycTreePanel().unmask();
|
||||||
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " clicking url. Reload root", null);
|
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " clicking url.", null);
|
||||||
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1155,7 +1157,7 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
explorerPanel.getAsycTreePanel().unmask();
|
explorerPanel.getAsycTreePanel().unmask();
|
||||||
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR +" creating url. Reload root", null);
|
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR +" creating url.", null);
|
||||||
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1529,7 +1531,7 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
explorerPanel.getAsycTreePanel().unmask();
|
explorerPanel.getAsycTreePanel().unmask();
|
||||||
new MessageBoxAlert("Error", "Sorry - getChildrenSubTreeToRootByIdentifier - Reload root", null);
|
new MessageBoxAlert("Error", "Sorry - getChildrenSubTreeToRootByIdentifier", null);
|
||||||
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
explorerPanel.getAsycTreePanel().removeAllAndRecoveryRoot();
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
package org.gcube.portlets.user.workspace.client.model;
|
package org.gcube.portlets.user.workspace.client.model;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
import java.util.Comparator;
|
||||||
|
|
||||||
import org.gcube.portlets.user.workspace.client.ConstantsExplorer;
|
import org.gcube.portlets.user.workspace.client.ConstantsExplorer;
|
||||||
|
|
||||||
|
@ -60,6 +61,14 @@ public class InfoContactModel extends BaseModelData implements Serializable {
|
||||||
return (Boolean) get("check");
|
return (Boolean) get("check");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Comparator<InfoContactModel> COMPARATOR = new Comparator<InfoContactModel>() {
|
||||||
|
// This is where the sorting happens.
|
||||||
|
public int compare(InfoContactModel o1, InfoContactModel o2) {
|
||||||
|
return o1.getLogin().compareToIgnoreCase(o2.getLogin());
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
StringBuilder builder = new StringBuilder();
|
StringBuilder builder = new StringBuilder();
|
||||||
|
|
|
@ -123,7 +123,7 @@ public class DialogShareFolder extends Dialog {
|
||||||
buttonMultiDrag.setStyleName("wizardButton");
|
buttonMultiDrag.setStyleName("wizardButton");
|
||||||
|
|
||||||
// buttonMultiDrag.setIcon(Resources.getIconUsers());
|
// buttonMultiDrag.setIcon(Resources.getIconUsers());
|
||||||
flexTable.setWidget(1, 0, new Label("Add contacts by group dragging"));
|
flexTable.setWidget(1, 0, new Label("Add more"));
|
||||||
flexTable.setWidget(1, 1, buttonMultiDrag);
|
flexTable.setWidget(1, 1, buttonMultiDrag);
|
||||||
|
|
||||||
Label labelDescription = new Label("Description");
|
Label labelDescription = new Label("Description");
|
||||||
|
@ -233,7 +233,7 @@ public class DialogShareFolder extends Dialog {
|
||||||
buttonMultiDrag.setStyleName("wizardButton");
|
buttonMultiDrag.setStyleName("wizardButton");
|
||||||
|
|
||||||
// buttonMultiDrag.setIcon(Resources.getIconUsers());
|
// buttonMultiDrag.setIcon(Resources.getIconUsers());
|
||||||
flexTable.setWidget(1, 0, new Label("Add contacts by group dragging"));
|
flexTable.setWidget(1, 0, new Label("Add more"));
|
||||||
flexTable.setWidget(1, 1, buttonMultiDrag);
|
flexTable.setWidget(1, 1, buttonMultiDrag);
|
||||||
|
|
||||||
Label labelDescription = new Label("Description");
|
Label labelDescription = new Label("Description");
|
||||||
|
@ -252,6 +252,7 @@ public class DialogShareFolder extends Dialog {
|
||||||
|
|
||||||
|
|
||||||
public List<InfoContactModel> getSharedListUsers() {
|
public List<InfoContactModel> getSharedListUsers() {
|
||||||
|
printSelectedUser();
|
||||||
return suggestPanel.getSelectedUser();
|
return suggestPanel.getSelectedUser();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -305,12 +306,22 @@ public class DialogShareFolder extends Dialog {
|
||||||
}
|
}
|
||||||
|
|
||||||
suggestPanel.boxSetFocus();
|
suggestPanel.boxSetFocus();
|
||||||
|
|
||||||
|
printSelectedUser();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
|
private void printSelectedUser(){
|
||||||
|
|
||||||
|
System.out.println("SELETECTED USERS: ");
|
||||||
|
for (InfoContactModel contact : suggestPanel.getSelectedUser())
|
||||||
|
System.out.println(contact);
|
||||||
|
}
|
||||||
|
|
||||||
private void initSuggestContacts(){
|
private void initSuggestContacts(){
|
||||||
|
|
||||||
suggestPanel.resetItemSelected();
|
suggestPanel.resetItemSelected();
|
||||||
|
|
|
@ -60,7 +60,7 @@ public class MultiDragContact extends Dialog {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void componentSelected(ButtonEvent ce) {
|
public void componentSelected(ButtonEvent ce) {
|
||||||
MessageBox.info("Group dragging action", "Drag one or more contacts from left list (All Contacts) to right list (Share with contacts) to add the users in your sharing list", null);
|
MessageBox.info("Group dragging action", "Drag one or more contacts from the left (All Contacts) to the right (Share with contacts) to add users in your sharing list.", null);
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -143,9 +143,10 @@ public class MultiValuePanel extends Composite {
|
||||||
return new ArrayList<InfoContactModel>();
|
return new ArrayList<InfoContactModel>();
|
||||||
else {
|
else {
|
||||||
List<InfoContactModel> toReturn = new ArrayList<InfoContactModel>();
|
List<InfoContactModel> toReturn = new ArrayList<InfoContactModel>();
|
||||||
|
|
||||||
for (String login : itemsSelected) {
|
for (String login : itemsSelected) {
|
||||||
InfoContactModel wsuser = users.get(login);
|
InfoContactModel wsuser = users.get(login);
|
||||||
if(!toReturn.contains(wsuser))
|
if(wsuser!= null && !toReturn.contains(wsuser))
|
||||||
toReturn.add(wsuser);
|
toReturn.add(wsuser);
|
||||||
}
|
}
|
||||||
return toReturn;
|
return toReturn;
|
||||||
|
|
|
@ -705,7 +705,7 @@ public class AsyncTreePanel extends LayoutContainer {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " getting folder children items. Reload root" +ConstantsExplorer.TRY_AGAIN, null);
|
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " getting folder children items." +ConstantsExplorer.TRY_AGAIN, null);
|
||||||
removeAllAndRecoveryRoot();
|
removeAllAndRecoveryRoot();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -737,7 +737,7 @@ public class AsyncTreePanel extends LayoutContainer {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " getting folder children items. Reload root" +ConstantsExplorer.TRY_AGAIN, null);
|
new MessageBoxAlert("Error", ConstantsExplorer.SERVER_ERROR + " getting folder children items. " +ConstantsExplorer.TRY_AGAIN, null);
|
||||||
removeAllAndRecoveryRoot();
|
removeAllAndRecoveryRoot();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -86,9 +86,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
@Override
|
@Override
|
||||||
public FolderModel getRootForTree() throws Exception {
|
public FolderModel getRootForTree() throws Exception {
|
||||||
|
|
||||||
workspaceLogger.info("getRoot");
|
workspaceLogger.trace("getRoot");
|
||||||
|
|
||||||
workspaceLogger.trace("getting workspace");
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
|
@ -243,7 +241,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
List<FileGridModel> listFileGridModels = new ArrayList<FileGridModel>();
|
List<FileGridModel> listFileGridModels = new ArrayList<FileGridModel>();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("get children for Grid");
|
logger.trace("get children for Grid");
|
||||||
|
|
||||||
workspaceLogger.trace("get children for Grid");
|
workspaceLogger.trace("get children for Grid");
|
||||||
|
|
||||||
|
@ -258,7 +256,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
|
|
||||||
Long endTime = System.currentTimeMillis() - startTime;
|
Long endTime = System.currentTimeMillis() - startTime;
|
||||||
String time = String.format("%d msc %d sec", endTime, TimeUnit.MILLISECONDS.toSeconds(endTime));
|
String time = String.format("%d msc %d sec", endTime, TimeUnit.MILLISECONDS.toSeconds(endTime));
|
||||||
logger.info("grid getChildren() returning "+listItems.size()+" elements in " + time);
|
logger.trace("grid getChildren() returning "+listItems.size()+" elements in " + time);
|
||||||
|
|
||||||
|
|
||||||
listFileGridModels = builder.buildGXTListFileGridModelItem(listItems, folder);
|
listFileGridModels = builder.buildGXTListFileGridModelItem(listItems, folder);
|
||||||
|
@ -276,14 +274,101 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Boolean moveItem(String itemId, String destinationId) throws Exception {
|
public Boolean moveItem(String itemId, String destinationId) throws Exception {
|
||||||
workspaceLogger.info("moveItem itemId: "+itemId+" destination: "+destinationId);
|
workspaceLogger.trace("moveItem itemId: "+itemId+" destination: "+destinationId);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("moveItem item: "+itemId+" destination: "+destinationId);
|
logger.trace("moveItem item: "+itemId+" destination: "+destinationId);
|
||||||
|
|
||||||
|
WorkspaceItem sourceItem = workspace.getItem(itemId); //GET SOURCE ITEM BEFORE OF MOVE
|
||||||
|
|
||||||
|
if(sourceItem==null)
|
||||||
|
return Boolean.FALSE;
|
||||||
|
|
||||||
|
String sourceSharedId = null;
|
||||||
|
boolean sourceItemIsShared = sourceItem.isShared();
|
||||||
|
|
||||||
|
if(sourceItemIsShared)
|
||||||
|
sourceSharedId = sourceItem.getIdSharedFolder(); //GET SHARED ID BEFORE OF MOVE
|
||||||
|
|
||||||
|
|
||||||
|
System.out.println("moveItem item: "+itemId+" sourceItem name "+sourceItem.getName() + " shared: "+sourceItemIsShared+ " destination: "+destinationId);
|
||||||
|
|
||||||
|
workspace.moveItem(itemId, destinationId); //move item
|
||||||
|
|
||||||
|
WorkspaceItem folderDestinationItem = workspace.getItem(destinationId); //retrieve folder destination
|
||||||
|
|
||||||
|
System.out.println("sourceItem.isShared() "+sourceItemIsShared );
|
||||||
|
System.out.println("folderDestinationItem item: "+destinationId+" folderDestinationItem name "+folderDestinationItem.getName() + " folderDestinationItem shared: "+folderDestinationItem.isShared());
|
||||||
|
|
||||||
|
if(folderDestinationItem!=null){
|
||||||
|
|
||||||
|
// //if folder destination is shared folder
|
||||||
|
// if(folderDestinationItem.isShared()){ //Notify Added Item To Sharing?
|
||||||
|
//
|
||||||
|
// //share condition is true if source shared folder is null or not equal to destination shared folder
|
||||||
|
// shareChangeCondition = (sourceSharedId==null) || (sourceSharedId.compareTo(folderDestinationItem.getIdSharedFolder())!=0);
|
||||||
|
//
|
||||||
|
// System.out.println("shareChangeCondition add item: "+ shareChangeCondition);
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// //if shareChangeCondition is true.. notifies added item to sharing
|
||||||
|
// if(shareChangeCondition){
|
||||||
|
//
|
||||||
|
// List<InfoContactModel> listContacts = getListUserSharedByFolderSharedId(folderDestinationItem.getIdSharedFolder());
|
||||||
|
//
|
||||||
|
// //DEBUG
|
||||||
|
// printContacts(listContacts);
|
||||||
|
//
|
||||||
|
// WorkspaceItem destinationSharedFolder = workspace.getItem(folderDestinationItem.getIdSharedFolder());
|
||||||
|
//
|
||||||
|
// np.notifyAddedItemToSharing(listContacts, sourceItem, (WorkspaceFolder) destinationSharedFolder);
|
||||||
|
//
|
||||||
|
//// np.notifyAddedItemToSharing(listContacts, (WorkspaceFolder) folderDestinationItem);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
try{
|
||||||
|
checkNotifyAddItemToShare(sourceItem, sourceSharedId, folderDestinationItem);
|
||||||
|
|
||||||
|
checkNotifyRemoveItemToShare(sourceItemIsShared, sourceItem, sourceSharedId, folderDestinationItem);
|
||||||
|
|
||||||
|
}catch (Exception e) {
|
||||||
|
workspaceLogger.error("An error occurred in checkNotify ", e);
|
||||||
|
}
|
||||||
|
|
||||||
|
// System.out.println("folderDestinationItem.isShared() "+ folderDestinationItem.getName() + ": "+ folderDestinationItem.isShared());
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// String idSharedFolder = folderDestinationItem.getIdSharedFolder()!=null?folderDestinationItem.getIdSharedFolder():"";
|
||||||
|
//
|
||||||
|
// //share condition is true if source shared folder is not equal to destination shared folder
|
||||||
|
// shareChangeCondition = sourceSharedId==null?false:(sourceSharedId.compareTo(idSharedFolder)!=0);
|
||||||
|
//
|
||||||
|
// System.out.println("shareChangeCondition remove item: "+ shareChangeCondition);
|
||||||
|
//
|
||||||
|
// //Notify Removed Item To Sharing?
|
||||||
|
// //if source Item is shared and folder destination is not shared or shareChangeCondition is true.. notifies removed item to sharing
|
||||||
|
// if(sourceItemIsShared && (!folderDestinationItem.isShared() || shareChangeCondition)){
|
||||||
|
//
|
||||||
|
// //get contacts
|
||||||
|
// List<InfoContactModel> listContacts = getListUserSharedByFolderSharedId(sourceSharedId);
|
||||||
|
//
|
||||||
|
// //DEBUG
|
||||||
|
// printContacts(listContacts);
|
||||||
|
//
|
||||||
|
// WorkspaceItem sourceSharedFolder = workspace.getItem(sourceSharedId);
|
||||||
|
//
|
||||||
|
// System.out.println(" name sourceSharedFolder: "+ sourceSharedFolder.getName());
|
||||||
|
//
|
||||||
|
// np.notifyRemovedItemToSharing(listContacts, sourceItem, (WorkspaceFolder) sourceSharedFolder);
|
||||||
|
//
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
workspace.moveItem(itemId, destinationId);
|
|
||||||
return Boolean.TRUE;
|
return Boolean.TRUE;
|
||||||
|
|
||||||
}catch (InsufficientPrivilegesException e) {
|
}catch (InsufficientPrivilegesException e) {
|
||||||
|
@ -299,14 +384,169 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void checkNotifyAddItemToShare(WorkspaceItem sourceItem, String sourceSharedId, WorkspaceItem folderDestinationItem) throws WorkspaceFolderNotFoundException, ItemNotFoundException, InternalErrorException, HomeNotFoundException, Exception{
|
||||||
|
|
||||||
|
if(folderDestinationItem!=null){
|
||||||
|
|
||||||
|
//if folder destination is shared folder
|
||||||
|
if(folderDestinationItem.isShared()){ //Notify Added Item To Sharing?
|
||||||
|
|
||||||
|
//share condition is true if source shared folder is null or not equal to destination shared folder
|
||||||
|
boolean shareChangeCondition = (sourceSharedId==null) || (sourceSharedId.compareTo(folderDestinationItem.getIdSharedFolder())!=0);
|
||||||
|
|
||||||
|
System.out.println("shareChangeCondition add item: "+ shareChangeCondition);
|
||||||
|
|
||||||
|
//if shareChangeCondition is true.. notifies added item to sharing
|
||||||
|
if(shareChangeCondition){
|
||||||
|
|
||||||
|
List<InfoContactModel> listContacts = getListUserSharedByFolderSharedId(folderDestinationItem.getIdSharedFolder());
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
|
printContacts(listContacts);
|
||||||
|
|
||||||
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
|
WorkspaceItem destinationSharedFolder = workspace.getItem(folderDestinationItem.getIdSharedFolder());
|
||||||
|
|
||||||
|
NotificationsProducer np = getNotificationProducer();
|
||||||
|
|
||||||
|
np.notifyAddedItemToSharing(listContacts, sourceItem, (WorkspaceFolder) destinationSharedFolder);
|
||||||
|
|
||||||
|
// np.notifyAddedItemToSharing(listContacts, (WorkspaceFolder) folderDestinationItem);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else
|
||||||
|
workspaceLogger.error("verifyNotifyAddItemToShare folder destination item is null");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// private void checkNotifyAddItemToShare(final String itemId, final String destinationId) throws WorkspaceFolderNotFoundException, ItemNotFoundException, InternalErrorException, HomeNotFoundException, Exception{
|
||||||
|
//
|
||||||
|
// new Thread(){
|
||||||
|
// @Override
|
||||||
|
// public void run() {
|
||||||
|
//
|
||||||
|
// try{
|
||||||
|
//
|
||||||
|
// Workspace workspace = getWorkspace();
|
||||||
|
// GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
|
// logger.trace("moveItem item: "+itemId+" destination: "+destinationId);
|
||||||
|
//
|
||||||
|
// WorkspaceItem sourceItem = workspace.getItem(itemId);
|
||||||
|
//
|
||||||
|
// if(sourceItem==null)
|
||||||
|
// return;
|
||||||
|
//
|
||||||
|
// String sourceSharedId = null;
|
||||||
|
// boolean sourceItemIsShared = sourceItem.isShared();
|
||||||
|
//
|
||||||
|
// if(sourceItemIsShared)
|
||||||
|
// sourceSharedId = sourceItem.getIdSharedFolder(); //GET SHARED ID BEFORE OF MOVE
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// System.out.println("moveItem item: "+itemId+" sourceItem name "+sourceItem.getName() + " shared: "+sourceItemIsShared+ " destination: "+destinationId);
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// WorkspaceItem folderDestinationItem = workspace.getItem(destinationId); //retrieve folder destination
|
||||||
|
//
|
||||||
|
// if(folderDestinationItem!=null){
|
||||||
|
//
|
||||||
|
// //if folder destination is shared folder
|
||||||
|
// if(folderDestinationItem.isShared()){ //Notify Added Item To Sharing?
|
||||||
|
//
|
||||||
|
// //share condition is true if source shared folder is null or not equal to destination shared folder
|
||||||
|
// boolean shareChangeCondition = (sourceSharedId==null) || (sourceSharedId.compareTo(folderDestinationItem.getIdSharedFolder())!=0);
|
||||||
|
//
|
||||||
|
// System.out.println("shareChangeCondition add item: "+ shareChangeCondition);
|
||||||
|
//
|
||||||
|
// //if shareChangeCondition is true.. notifies added item to sharing
|
||||||
|
// if(shareChangeCondition){
|
||||||
|
//
|
||||||
|
// List<InfoContactModel> listContacts = getListUserSharedByFolderSharedId(folderDestinationItem.getIdSharedFolder());
|
||||||
|
//
|
||||||
|
// //DEBUG
|
||||||
|
// printContacts(listContacts);
|
||||||
|
//
|
||||||
|
// WorkspaceItem destinationSharedFolder = workspace.getItem(folderDestinationItem.getIdSharedFolder());
|
||||||
|
//
|
||||||
|
// NotificationsProducer np = getNotificationProducer();
|
||||||
|
//
|
||||||
|
// np.notifyAddedItemToSharing(listContacts, sourceItem, (WorkspaceFolder) destinationSharedFolder);
|
||||||
|
//
|
||||||
|
//// np.notifyAddedItemToSharing(listContacts, (WorkspaceFolder) folderDestinationItem);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }else
|
||||||
|
// workspaceLogger.error("verifyNotifyAddItemToShare folder destination item is null");
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// }catch (Exception e) {
|
||||||
|
// // TODO: handle exception
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// }
|
||||||
|
// }.start();
|
||||||
|
//
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
private void checkNotifyRemoveItemToShare(boolean sourceItemIsShared, WorkspaceItem sourceItem, String sourceSharedId, WorkspaceItem folderDestinationItem) throws WorkspaceFolderNotFoundException, ItemNotFoundException, InternalErrorException, HomeNotFoundException, Exception{
|
||||||
|
|
||||||
|
if(folderDestinationItem!=null){
|
||||||
|
|
||||||
|
String idSharedFolder = folderDestinationItem.getIdSharedFolder()!=null?folderDestinationItem.getIdSharedFolder():"";
|
||||||
|
|
||||||
|
//share condition is true if source shared folder is not equal to destination shared folder
|
||||||
|
boolean shareChangeCondition = sourceSharedId==null?false:(sourceSharedId.compareTo(idSharedFolder)!=0);
|
||||||
|
|
||||||
|
System.out.println("shareChangeCondition remove item: "+ shareChangeCondition);
|
||||||
|
|
||||||
|
//Notify Removed Item To Sharing?
|
||||||
|
//if source Item is shared and folder destination is not shared or shareChangeCondition is true.. notifies removed item to sharing
|
||||||
|
if(sourceItemIsShared && (!folderDestinationItem.isShared() || shareChangeCondition)){
|
||||||
|
|
||||||
|
//get contacts
|
||||||
|
List<InfoContactModel> listContacts = getListUserSharedByFolderSharedId(sourceSharedId);
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
|
printContacts(listContacts);
|
||||||
|
|
||||||
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
|
WorkspaceItem sourceSharedFolder = workspace.getItem(sourceSharedId);
|
||||||
|
|
||||||
|
System.out.println(" name sourceSharedFolder: "+ sourceSharedFolder.getName());
|
||||||
|
|
||||||
|
NotificationsProducer np = getNotificationProducer();
|
||||||
|
|
||||||
|
np.notifyRemovedItemToSharing(listContacts, sourceItem, (WorkspaceFolder) sourceSharedFolder);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}else
|
||||||
|
workspaceLogger.error("verifyNotifyRemoveItemToShare folder destination item is null");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
|
private void printContacts(List<InfoContactModel> listContacts){
|
||||||
|
|
||||||
|
System.out.println("PRINT CONTACTS: ");
|
||||||
|
for (InfoContactModel infoContactModel : listContacts) {
|
||||||
|
System.out.println("User: "+infoContactModel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Boolean removeItem(String itemId) throws Exception {
|
public Boolean removeItem(String itemId) throws Exception {
|
||||||
workspaceLogger.info("removeItem itemId: "+itemId);
|
workspaceLogger.trace("removeItem itemId: "+itemId);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("removeItem item: "+itemId);
|
logger.trace("removeItem item: "+itemId);
|
||||||
|
|
||||||
workspace.removeItem(itemId);
|
workspace.removeItem(itemId);
|
||||||
return Boolean.TRUE;
|
return Boolean.TRUE;
|
||||||
|
@ -327,14 +567,14 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
@Override
|
@Override
|
||||||
public Boolean renameItem(String itemId, String newName) throws Exception {
|
public Boolean renameItem(String itemId, String newName) throws Exception {
|
||||||
|
|
||||||
workspaceLogger.info("renameItem itemId: "+itemId+" newName: "+newName);
|
workspaceLogger.trace("renameItem itemId: "+itemId+" newName: "+newName);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("renameItem itemId: "+itemId+" newName: "+newName);
|
logger.trace("renameItem itemId: "+itemId+" newName: "+newName);
|
||||||
|
|
||||||
workspace.renameItem(itemId, newName);
|
workspace.renameItem(itemId, newName);
|
||||||
return true;
|
return true;
|
||||||
|
@ -349,16 +589,21 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
@Override
|
@Override
|
||||||
public FolderModel createFolder(String nameFolder, String description, FileModel parent) throws Exception {
|
public FolderModel createFolder(String nameFolder, String description, FileModel parent) throws Exception {
|
||||||
|
|
||||||
workspaceLogger.info("create folder");
|
workspaceLogger.trace("create folder");
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("create folder: " + nameFolder);
|
logger.trace("create folder: " + nameFolder);
|
||||||
|
|
||||||
WorkspaceFolder wsFolder = workspace.createFolder(nameFolder, description, parent.getIdentifier());
|
WorkspaceFolder wsFolder = workspace.createFolder(nameFolder, description, parent.getIdentifier());
|
||||||
|
|
||||||
|
|
||||||
|
WorkspaceItem folderDestinationItem = workspace.getItem(parent.getIdentifier());
|
||||||
|
|
||||||
|
checkNotifyAddItemToShare(wsFolder, null, folderDestinationItem);
|
||||||
|
|
||||||
GWTWorkspaceBuilder builder = getGWTWorkspaceBuilder();
|
GWTWorkspaceBuilder builder = getGWTWorkspaceBuilder();
|
||||||
|
|
||||||
return builder.buildGXTFolderModelItem(wsFolder, parent);
|
return builder.buildGXTFolderModelItem(wsFolder, parent);
|
||||||
|
@ -375,13 +620,13 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
@Override
|
@Override
|
||||||
public FileDetailsModel getDetailsFile(FileModel folder) throws Exception {
|
public FileDetailsModel getDetailsFile(FileModel folder) throws Exception {
|
||||||
|
|
||||||
workspaceLogger.info("load file details");
|
workspaceLogger.trace("load file details");
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("load file details: " + folder.getName());
|
logger.trace("load file details: " + folder.getName());
|
||||||
|
|
||||||
WorkspaceItem wsItem = workspace.getItem(folder.getIdentifier());
|
WorkspaceItem wsItem = workspace.getItem(folder.getIdentifier());
|
||||||
GWTWorkspaceBuilder builder = getGWTWorkspaceBuilder();
|
GWTWorkspaceBuilder builder = getGWTWorkspaceBuilder();
|
||||||
|
@ -407,7 +652,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("search itemId: "+itemIdentifier);
|
logger.trace("search itemId: "+itemIdentifier);
|
||||||
|
|
||||||
WorkspaceItem item = workspace.getItem(itemIdentifier); //get item from workspace
|
WorkspaceItem item = workspace.getItem(itemIdentifier); //get item from workspace
|
||||||
getListsChildrenByParents(listSubTree, item);
|
getListsChildrenByParents(listSubTree, item);
|
||||||
|
@ -431,7 +676,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("get smart folder by category: "+category);
|
logger.trace("get smart folder by category: "+category);
|
||||||
|
|
||||||
// listWorkspaceItems = workspace.getWorkspaceTree(workspace.getRoot()); //get item from workspace
|
// listWorkspaceItems = workspace.getWorkspaceTree(workspace.getRoot()); //get item from workspace
|
||||||
|
|
||||||
|
@ -526,7 +771,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("create smart folder by name: "+name);
|
logger.trace("create smart folder by name: "+name);
|
||||||
|
|
||||||
workspaceLogger.trace("name " + name);
|
workspaceLogger.trace("name " + name);
|
||||||
workspaceLogger.trace("query " + query);
|
workspaceLogger.trace("query " + query);
|
||||||
|
@ -565,7 +810,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("remove smart folder by id: "+itemId);
|
logger.trace("remove smart folder by id: "+itemId);
|
||||||
|
|
||||||
workspace.removeItem(itemId); //remove Smart Folder from workspace
|
workspace.removeItem(itemId); //remove Smart Folder from workspace
|
||||||
|
|
||||||
|
@ -587,7 +832,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("get all smart folder");
|
logger.trace("get all smart folder");
|
||||||
// workspaceLogger.trace("get all smart folder");
|
// workspaceLogger.trace("get all smart folder");
|
||||||
|
|
||||||
// List<WorkspaceFolder> listWorkspaceFolder = new ArrayList<WorkspaceFolder>();
|
// List<WorkspaceFolder> listWorkspaceFolder = new ArrayList<WorkspaceFolder>();
|
||||||
|
@ -619,7 +864,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("get smart folder by id: "+folderId);
|
logger.trace("get smart folder by id: "+folderId);
|
||||||
|
|
||||||
// WorkspaceFolder wsFolder = workspace.getSmartFolder(folderId); //get Smart Folder from workspace
|
// WorkspaceFolder wsFolder = workspace.getSmartFolder(folderId); //get Smart Folder from workspace
|
||||||
|
|
||||||
|
@ -649,7 +894,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("get image by id: "+identifier);
|
logger.trace("get image by id: "+identifier);
|
||||||
|
|
||||||
WorkspaceItem item = workspace.getItem(identifier); //get item from workspace
|
WorkspaceItem item = workspace.getItem(identifier); //get item from workspace
|
||||||
|
|
||||||
|
@ -678,7 +923,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("get timeseries by id: "+identifier);
|
logger.trace("get timeseries by id: "+identifier);
|
||||||
|
|
||||||
WorkspaceItem item = workspace.getItem(identifier); //get item from workspace
|
WorkspaceItem item = workspace.getItem(identifier); //get item from workspace
|
||||||
|
|
||||||
|
@ -702,7 +947,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("get url by id: "+identifier);
|
logger.trace("get url by id: "+identifier);
|
||||||
|
|
||||||
WorkspaceItem item = workspace.getItem(identifier); //get item from workspace
|
WorkspaceItem item = workspace.getItem(identifier); //get item from workspace
|
||||||
|
|
||||||
|
@ -729,7 +974,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("create url in parent id: "+parentFileModel.getIdentifier());
|
logger.trace("create url in parent id: "+parentFileModel.getIdentifier());
|
||||||
|
|
||||||
//DEBUG
|
//DEBUG
|
||||||
// workspaceLogger.trace("Name " + name);
|
// workspaceLogger.trace("Name " + name);
|
||||||
|
@ -844,10 +1089,12 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
logger.warn("WORKSPACE PORTLET IS IN TEST MODE - RETURN TEST USERS");
|
logger.warn("WORKSPACE PORTLET IS IN TEST MODE - RETURN TEST USERS");
|
||||||
List<InfoContactModel> listContactsModel = new ArrayList<InfoContactModel>();
|
List<InfoContactModel> listContactsModel = new ArrayList<InfoContactModel>();
|
||||||
// //TEST USERS
|
// //TEST USERS
|
||||||
listContactsModel.add(new InfoContactModel("Federico.Test", "Federico.Test", "Federico de Faveri"));
|
listContactsModel.add(new InfoContactModel("federico.defaveri", "federico.defaveri", "Federico de Faveri"));
|
||||||
listContactsModel.add(new InfoContactModel("Antonio.Test", "Antonio.Test", "Antonio Gioia"));
|
listContactsModel.add(new InfoContactModel("antonio.gioia", "antonio.gioia", "Antonio Gioia"));
|
||||||
listContactsModel.add(new InfoContactModel("Fabio.Test", "Fabio.Test", "Fabio Sinibaldi"));
|
listContactsModel.add(new InfoContactModel("fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi"));
|
||||||
|
listContactsModel.add(new InfoContactModel("pasquale.pagano", "pasquale.pagano", "Pasquale Pagano"));
|
||||||
listContactsModel.add(new InfoContactModel(Util.TEST_USER, Util.TEST_USER, Util.TEST_USER));
|
listContactsModel.add(new InfoContactModel(Util.TEST_USER, Util.TEST_USER, Util.TEST_USER));
|
||||||
|
listContactsModel.add(new InfoContactModel("francesco.mangiacrapa", "francesco.mangiacrapa", "Francesco Mangiacrapa"));
|
||||||
listContactsModel.add(new InfoContactModel("massimiliano.assante", "massimiliano.assante", "Massimiliano Assante"));
|
listContactsModel.add(new InfoContactModel("massimiliano.assante", "massimiliano.assante", "Massimiliano Assante"));
|
||||||
return listContactsModel;
|
return listContactsModel;
|
||||||
|
|
||||||
|
@ -1264,10 +1511,17 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
|
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
|
WorkspaceItem sourceItem = workspace.getItem(itemId); //GET SOURCE ITEM BEFORE COPY
|
||||||
|
String sourceSharedId = sourceItem.getIdSharedFolder();
|
||||||
|
|
||||||
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
GCUBEClientLog logger = new GCUBEClientLog(GWTWorkspaceServiceImpl.class);
|
||||||
logger.info("copyItem by id: " + itemId);
|
logger.info("copyItem by id: " + itemId);
|
||||||
|
|
||||||
WorkspaceItem item = workspace.copy(itemId, destinationFolderId);
|
WorkspaceItem item = workspace.copy(itemId, destinationFolderId); //copy item
|
||||||
|
|
||||||
|
WorkspaceItem folderDestinationItem = workspace.getItem(destinationFolderId);
|
||||||
|
|
||||||
|
checkNotifyAddItemToShare(sourceItem, sourceSharedId, folderDestinationItem);
|
||||||
|
|
||||||
if(item!=null)
|
if(item!=null)
|
||||||
return true;
|
return true;
|
||||||
|
@ -1355,6 +1609,14 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
|
|
||||||
WorkspaceSharedFolder sharedFolder = null;
|
WorkspaceSharedFolder sharedFolder = null;
|
||||||
|
|
||||||
|
List<InfoContactModel> listSharedContact = null;
|
||||||
|
|
||||||
|
boolean sourceFolderIsShared = folder.isShared();
|
||||||
|
|
||||||
|
if(sourceFolderIsShared){ //if source folder is already share... retrieve old list of sharing to notify
|
||||||
|
listSharedContact = getListUserSharedByFolderSharedId(folder.getIdentifier());
|
||||||
|
}
|
||||||
|
|
||||||
if(listLogin.size()>0){
|
if(listLogin.size()>0){
|
||||||
|
|
||||||
if(!isNewFolder)
|
if(!isNewFolder)
|
||||||
|
@ -1368,7 +1630,10 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
|
|
||||||
if(created){
|
if(created){
|
||||||
NotificationsProducer np = getNotificationProducer();
|
NotificationsProducer np = getNotificationProducer();
|
||||||
|
if(!sourceFolderIsShared) //if source folder is not already shared
|
||||||
np.notifyFolderSharing(listContacts, sharedFolder);
|
np.notifyFolderSharing(listContacts, sharedFolder);
|
||||||
|
else
|
||||||
|
np.notifyAddedUserToSharing(listSharedContact, listContacts, sharedFolder);
|
||||||
}
|
}
|
||||||
|
|
||||||
return created;
|
return created;
|
||||||
|
@ -1391,7 +1656,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
workspaceLogger.error("Error in shareFolder ", e);
|
workspaceLogger.error("Error in shareFolder ", e);
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
String error = ConstantsExplorer.SERVER_ERROR+" creating shared folder. "+ e.getMessage();
|
String error = ConstantsExplorer.SERVER_ERROR+" creating shared folder.";
|
||||||
throw new Exception(error);
|
throw new Exception(error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1420,6 +1685,8 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
workspaceLogger.trace("the item with id: "+folderSharedId+ " is not "+WorkspaceItemType.SHARED_FOLDER);
|
workspaceLogger.trace("the item with id: "+folderSharedId+ " is not "+WorkspaceItemType.SHARED_FOLDER);
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
System.out.println("the item with id: "+folderSharedId+ " is not "+WorkspaceItemType.SHARED_FOLDER);
|
System.out.println("the item with id: "+folderSharedId+ " is not "+WorkspaceItemType.SHARED_FOLDER);
|
||||||
}
|
}
|
||||||
return new ArrayList<InfoContactModel>();
|
return new ArrayList<InfoContactModel>();
|
||||||
|
@ -1455,13 +1722,14 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
NotificationsProducer np = getNotificationProducer();
|
NotificationsProducer np = getNotificationProducer();
|
||||||
List<InfoContactModel> contacts = getListUserSharedByFolderSharedId(folderSharedId);
|
List<InfoContactModel> contacts = getListUserSharedByFolderSharedId(folderSharedId);
|
||||||
|
|
||||||
|
// if(isTestMode()){
|
||||||
|
// contacts = new ArrayList<InfoContactModel>();
|
||||||
|
// contacts.add(new InfoContactModel("francesco.mangiacrapa", "francesco.mangiacrapa", "Francesco Mangiacrapa"));
|
||||||
|
// }
|
||||||
|
|
||||||
if(isTestMode()){
|
printContacts(contacts);
|
||||||
contacts = new ArrayList<InfoContactModel>();
|
|
||||||
contacts.add(new InfoContactModel("francesco.mangiacrapa", "francesco.mangiacrapa", "Francesco Mangiacrapa"));
|
|
||||||
}
|
|
||||||
|
|
||||||
np.notifyFolderUnSharing(contacts, wsFolder);
|
np.notifyFolderUnSharing(contacts, unSharedFolder);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1475,7 +1743,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
workspaceLogger.error("Error in unSharedFolderByFolderSharedId ", e);
|
workspaceLogger.error("Error in unSharedFolderByFolderSharedId ", e);
|
||||||
String error = ConstantsExplorer.SERVER_ERROR+" un share folder. "+ e.getMessage() +". " +ConstantsExplorer.TRY_AGAIN;
|
String error = ConstantsExplorer.SERVER_ERROR+" un share folder. Refresh folder and " +ConstantsExplorer.TRY_AGAIN;
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
throw new Exception(error);
|
throw new Exception(error);
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,8 +9,10 @@ import org.gcube.application.framework.core.session.ASLSession;
|
||||||
import org.gcube.application.framework.core.session.SessionManager;
|
import org.gcube.application.framework.core.session.SessionManager;
|
||||||
import org.gcube.applicationsupportlayer.social.NotificationsManager;
|
import org.gcube.applicationsupportlayer.social.NotificationsManager;
|
||||||
import org.gcube.common.core.scope.GCUBEScope;
|
import org.gcube.common.core.scope.GCUBEScope;
|
||||||
import org.gcube.common.core.utils.logging.GCUBEClientLog;
|
import org.gcube.common.core.utils.logging.GCUBELog;
|
||||||
import org.gcube.portlets.user.homelibrary.home.workspace.WorkspaceFolder;
|
import org.gcube.portlets.user.homelibrary.home.workspace.WorkspaceFolder;
|
||||||
|
import org.gcube.portlets.user.homelibrary.home.workspace.WorkspaceItem;
|
||||||
|
import org.gcube.portlets.user.homelibrary.home.workspace.WorkspaceSharedFolder;
|
||||||
import org.gcube.portlets.user.workspace.client.model.InfoContactModel;
|
import org.gcube.portlets.user.workspace.client.model.InfoContactModel;
|
||||||
import org.gcube.portlets.user.workspace.server.util.Util;
|
import org.gcube.portlets.user.workspace.server.util.Util;
|
||||||
|
|
||||||
|
@ -21,7 +23,7 @@ import org.gcube.portlets.user.workspace.server.util.Util;
|
||||||
*/
|
*/
|
||||||
public class NotificationsProducer {
|
public class NotificationsProducer {
|
||||||
|
|
||||||
protected GCUBEClientLog gcubeLogger = new GCUBEClientLog(NotificationsProducer.class);
|
protected GCUBELog gcubeLogger = new GCUBELog(NotificationsProducer.class);
|
||||||
protected GCUBEScope scope;
|
protected GCUBEScope scope;
|
||||||
|
|
||||||
protected NotificationsManager notificationsMng;
|
protected NotificationsManager notificationsMng;
|
||||||
|
@ -63,19 +65,17 @@ public class NotificationsProducer {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
|
||||||
gcubeLogger.trace("Send notify folder sharing is running...");
|
gcubeLogger.trace("Send notifies folder sharing is running...");
|
||||||
|
|
||||||
for (InfoContactModel infoContactModel : listContacts) {
|
for (InfoContactModel infoContactModel : listContacts) {
|
||||||
try{
|
try{
|
||||||
//NOTIFIES ONLY THE USERS THAT ARE DIFFERENT FROM CURRENT USER
|
//NOTIFIES ONLY THE USERS THAT ARE DIFFERENT FROM CURRENT USER
|
||||||
if(infoContactModel.getId().compareTo(userId)!=0){ //TODO remove this comment
|
if(infoContactModel.getId().compareTo(userId)!=0){
|
||||||
|
|
||||||
gcubeLogger.trace("Send notify folder sharing for user "+infoContactModel.getId());
|
|
||||||
|
|
||||||
|
gcubeLogger.trace("Send notifies new share folder "+sharedFolder.getName()+" for user "+infoContactModel.getId());
|
||||||
|
|
||||||
//DEBUG
|
//DEBUG
|
||||||
System.out.println("Send notify folder sharing for user "+infoContactModel.getId());
|
System.out.println("Send notifies new share folder "+sharedFolder.getName()+" for user "+infoContactModel.getId());
|
||||||
|
|
||||||
|
|
||||||
boolean notify = notificationsMng.notifyFolderSharing(infoContactModel.getId(), sharedFolder);
|
boolean notify = notificationsMng.notifyFolderSharing(infoContactModel.getId(), sharedFolder);
|
||||||
|
|
||||||
|
@ -88,64 +88,76 @@ public class NotificationsProducer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
gcubeLogger.trace("share notifications is completed");
|
gcubeLogger.trace("notifies share folder is completed");
|
||||||
}
|
}
|
||||||
}.start();
|
}.start();
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Runs a new thread to notify the contacts passed in input
|
|
||||||
* @param listContacts
|
|
||||||
* @param sharedFolder
|
|
||||||
*/
|
|
||||||
public void notifyFolderUnSharing(final List<InfoContactModel> listContacts, final WorkspaceFolder sharedFolder) {
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Runs a new thread to notify the new contacts passed in input
|
||||||
|
* @param listSharedContact - list of contacts already shared
|
||||||
|
* @param listSharingContact - list of "new" contacts witch share
|
||||||
|
* @param sharedFolder - the shared folder
|
||||||
|
*/
|
||||||
|
public void notifyAddedUserToSharing(final List<InfoContactModel> listSharedContact, final List<InfoContactModel> listSharingContact, final WorkspaceSharedFolder sharedFolder) {
|
||||||
|
|
||||||
new Thread() {
|
new Thread() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
|
||||||
// printContacts(listContacts);
|
|
||||||
gcubeLogger.trace("Send notify folder un share is running...");
|
|
||||||
|
|
||||||
for (InfoContactModel infoContactModel : listContacts) {
|
|
||||||
try{
|
try{
|
||||||
|
|
||||||
//NOTIFIES ONLY THE USERS THAT ARE DIFFERENT FROM CURRENT USER
|
if(listSharedContact==null)
|
||||||
if(infoContactModel.getId().compareTo(userId)!=0){ //TODO remove this comment
|
return;
|
||||||
|
|
||||||
gcubeLogger.trace("Send notify folder un share user "+infoContactModel.getId());
|
for (InfoContactModel infoContactModel : listSharingContact) {
|
||||||
|
|
||||||
|
if(!listSharedContact.contains(infoContactModel)){ //if is new contact.. notifies share
|
||||||
|
|
||||||
|
//NOTIFIES ONLY THE USERS THAT ARE DIFFERENT FROM CURRENT USER
|
||||||
|
if(infoContactModel.getId().compareTo(userId)!=0){
|
||||||
|
|
||||||
|
for (InfoContactModel contact : listSharedContact) { //NOTIFIES ALREADY SHARED CONTACTS
|
||||||
|
|
||||||
|
try{
|
||||||
|
|
||||||
|
gcubeLogger.trace("Send notifies added user "+ infoContactModel.getId() +" to share folder "+sharedFolder.getName() + " for user "+contact.getId());
|
||||||
|
|
||||||
//DEBUG
|
//DEBUG
|
||||||
// System.out.println("Send notify folder un share user "+infoContactModel.getId());
|
System.out.println("Send notifies added user "+ infoContactModel.getId() +" to share folder "+sharedFolder.getName() + " for user "+contact.getId());
|
||||||
|
|
||||||
boolean notify = notificationsMng.notifyFolderRemovedUser(infoContactModel.getId(), sharedFolder, userId);
|
boolean notify = notificationsMng.notifyFolderAddedUser(contact.getId(), sharedFolder, infoContactModel.getId());
|
||||||
|
|
||||||
if(!notify)
|
if(!notify)
|
||||||
gcubeLogger.error("An error occured when notify user: "+infoContactModel.getId());
|
gcubeLogger.error("An error occured when notifies user: "+infoContactModel.getId());
|
||||||
|
|
||||||
|
}catch (Exception e) {
|
||||||
|
gcubeLogger.error("An error occured in notifyFolderAddedUser ", e);
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}catch (Exception e) {
|
}catch (Exception e) {
|
||||||
gcubeLogger.error("An error occured in notifyFolderSharing ", e);
|
gcubeLogger.error("An error occured in notifyAddedUserToSharing ", e);
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
gcubeLogger.trace("notify of un share notifications is completed");
|
|
||||||
}
|
|
||||||
|
|
||||||
}.start();
|
}.start();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Runs a new thread to notify the contacts passed in input
|
* Runs a new thread to notify the contacts passed in input
|
||||||
* @param listContacts
|
* @param listContacts
|
||||||
* @param sharedFolder
|
* @param unSharedFolder
|
||||||
*/
|
*/
|
||||||
public void notifyAddedItemToSharing(final List<InfoContactModel> listContacts, final WorkspaceFolder sharedFolder) {
|
public void notifyFolderUnSharing(final List<InfoContactModel> listContacts, final WorkspaceFolder unSharedFolder) {
|
||||||
|
|
||||||
|
|
||||||
new Thread() {
|
new Thread() {
|
||||||
|
@ -153,23 +165,78 @@ public class NotificationsProducer {
|
||||||
public void run() {
|
public void run() {
|
||||||
|
|
||||||
// printContacts(listContacts);
|
// printContacts(listContacts);
|
||||||
gcubeLogger.trace("Send notify added item in sharedfolder is running...");
|
gcubeLogger.trace("Send notifies folder un share is running...");
|
||||||
|
|
||||||
for (InfoContactModel infoContactModel : listContacts) {
|
for (InfoContactModel infoContactModel : listContacts) {
|
||||||
try{
|
try{
|
||||||
|
|
||||||
//NOTIFIES ONLY THE USERS THAT ARE DIFFERENT FROM CURRENT USER
|
//NOTIFIES ONLY THE USERS THAT ARE DIFFERENT FROM CURRENT USER
|
||||||
if(infoContactModel.getId().compareTo(userId)!=0){ //TODO remove this comment
|
if(infoContactModel.getId().compareTo(userId)!=0){
|
||||||
|
|
||||||
gcubeLogger.trace("Send notify added item in sharedfolder + "+sharedFolder.getName()+" for user "+infoContactModel.getId());
|
gcubeLogger.trace("User id: " +userId + " send notifies un shared folder "+unSharedFolder.getName()+" for user "+infoContactModel.getId());
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
|
System.out.println("User id: " +userId + " send notifies un shared folder "+unSharedFolder.getName()+" for user "+infoContactModel.getId());
|
||||||
|
|
||||||
|
boolean notify = notificationsMng.notifyFolderRemovedUser(infoContactModel.getId(), unSharedFolder);
|
||||||
|
|
||||||
|
if(!notify)
|
||||||
|
gcubeLogger.error("An error occured when notifies user: "+infoContactModel.getId());
|
||||||
|
}
|
||||||
|
}catch (Exception e) {
|
||||||
|
gcubeLogger.error("An error occured in notifyFolderUnSharing ", e);
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
gcubeLogger.trace("notifies of un share notifications is completed");
|
||||||
|
}
|
||||||
|
|
||||||
|
}.start();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Runs a new thread to notify the contacts passed in input
|
||||||
|
* @param listContacts
|
||||||
|
* @param workspaceItem
|
||||||
|
*/
|
||||||
|
public void notifyAddedItemToSharing(final List<InfoContactModel> listContacts, final WorkspaceItem workspaceItem, final WorkspaceFolder sharedFolder) {
|
||||||
|
|
||||||
|
new Thread() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
|
||||||
|
// printContacts(listContacts);
|
||||||
|
gcubeLogger.trace("Send notifies added item in sharedfolder is running...");
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
|
System.out.println("Send notifies added item in sharedfolder is running...");
|
||||||
|
|
||||||
|
for (InfoContactModel infoContactModel : listContacts) {
|
||||||
|
try{
|
||||||
|
|
||||||
|
//NOTIFIES ONLY THE USERS THAT ARE DIFFERENT FROM CURRENT USER
|
||||||
|
if(infoContactModel.getId().compareTo(userId)!=0){
|
||||||
|
|
||||||
|
gcubeLogger.trace("Send notifies added item "+workspaceItem.getName()+" in shared folder "+sharedFolder.getName()+" for user "+infoContactModel.getId());
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
|
System.out.println("Send notifies added item "+workspaceItem.getName()+" in shared folder "+sharedFolder.getName()+" for user "+infoContactModel.getId());
|
||||||
|
|
||||||
//DEBUG
|
//DEBUG
|
||||||
// System.out.println("Send notify folder un share user "+infoContactModel.getId());
|
// System.out.println("Send notify folder un share user "+infoContactModel.getId());
|
||||||
|
|
||||||
boolean notify = notificationsMng.notifyAddedItem(infoContactModel.getId(), sharedFolder);
|
boolean notify = notificationsMng.notifyAddedItem(infoContactModel.getId(), workspaceItem, sharedFolder);
|
||||||
|
|
||||||
if(!notify)
|
|
||||||
|
if(!notify){
|
||||||
gcubeLogger.error("An error occured when notify user: "+infoContactModel.getId());
|
gcubeLogger.error("An error occured when notify user: "+infoContactModel.getId());
|
||||||
|
//DEBUG
|
||||||
|
System.out.println("An error occured when notify user: "+infoContactModel.getId());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}catch (Exception e) {
|
}catch (Exception e) {
|
||||||
gcubeLogger.error("An error occured in notifyAddedItemToSharing ", e);
|
gcubeLogger.error("An error occured in notifyAddedItemToSharing ", e);
|
||||||
|
@ -177,7 +244,10 @@ public class NotificationsProducer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
gcubeLogger.trace("notigy of added item in shared folder is completed");
|
gcubeLogger.trace("notifies of added item in shared folder is completed");
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
|
System.out.println("notifies of added item in shared folder is completed");
|
||||||
}
|
}
|
||||||
|
|
||||||
}.start();
|
}.start();
|
||||||
|
@ -185,12 +255,15 @@ public class NotificationsProducer {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Runs a new thread to notify the contacts passed in input
|
* Runs a new thread to notify the contacts passed in input
|
||||||
* @param listContacts
|
* @param listContacts
|
||||||
* @param sharedFolder
|
* @param sharedFolder
|
||||||
*/
|
*/
|
||||||
public void notifyRemovedItemToSharing(final List<InfoContactModel> listContacts, final WorkspaceFolder sharedFolder) {
|
public void notifyRemovedItemToSharing(final List<InfoContactModel> listContacts, final WorkspaceItem workspaceItem, final WorkspaceFolder sharedFolder) {
|
||||||
|
|
||||||
|
|
||||||
new Thread() {
|
new Thread() {
|
||||||
|
@ -198,23 +271,29 @@ public class NotificationsProducer {
|
||||||
public void run() {
|
public void run() {
|
||||||
|
|
||||||
// printContacts(listContacts);
|
// printContacts(listContacts);
|
||||||
gcubeLogger.trace("Send notify remove item in sharedfolder is running...");
|
gcubeLogger.trace("Send notifies remove item in shared folder is running...");
|
||||||
|
|
||||||
|
System.out.println("Send notifies remove item in shared folder is running...");
|
||||||
|
|
||||||
for (InfoContactModel infoContactModel : listContacts) {
|
for (InfoContactModel infoContactModel : listContacts) {
|
||||||
try{
|
try{
|
||||||
|
|
||||||
//NOTIFIES ONLY THE USERS THAT ARE DIFFERENT FROM CURRENT USER
|
//NOTIFIES ONLY THE USERS THAT ARE DIFFERENT FROM CURRENT USER
|
||||||
if(infoContactModel.getId().compareTo(userId)!=0){ //TODO remove this comment
|
if(infoContactModel.getId().compareTo(userId)!=0){
|
||||||
|
|
||||||
gcubeLogger.trace("Send notify remove item in sharedfolder + "+sharedFolder.getName()+" for user "+infoContactModel.getId());
|
gcubeLogger.trace("Send notifies remove item "+workspaceItem.getName()+" in shared folder "+sharedFolder.getName()+" for user "+infoContactModel.getId());
|
||||||
|
|
||||||
//DEBUG
|
//DEBUG
|
||||||
// System.out.println("Send notify folder un share user "+infoContactModel.getId());
|
System.out.println("Send notifies remove item "+workspaceItem.getName()+" in shared folder "+sharedFolder.getName()+" for user "+infoContactModel.getId());
|
||||||
|
|
||||||
boolean notify = notificationsMng.notifyRemovedItem(infoContactModel.getId(), sharedFolder);
|
boolean notify = notificationsMng.notifyRemovedItem(infoContactModel.getId(), workspaceItem, sharedFolder);
|
||||||
|
|
||||||
if(!notify)
|
if(!notify){
|
||||||
gcubeLogger.error("An error occured when notify user: "+infoContactModel.getId());
|
gcubeLogger.error("An error occured when notify user: "+infoContactModel.getId());
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
|
System.out.println("An error occured when notify user: "+infoContactModel.getId());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}catch (Exception e) {
|
}catch (Exception e) {
|
||||||
gcubeLogger.error("An error occured in notifyRemovedItemToSharing ", e);
|
gcubeLogger.error("An error occured in notifyRemovedItemToSharing ", e);
|
||||||
|
@ -222,10 +301,14 @@ public class NotificationsProducer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
gcubeLogger.trace("notify of removed item in shared folder is completed");
|
gcubeLogger.trace("notifies of removed item in shared folder is completed");
|
||||||
|
|
||||||
|
//DEBUG
|
||||||
|
System.out.println("notifies of removed item in shared folder is completed");
|
||||||
}
|
}
|
||||||
|
|
||||||
}.start();
|
}.start();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//DEBUG
|
//DEBUG
|
||||||
|
|
|
@ -45,9 +45,9 @@ public class Util {
|
||||||
// public static final String TEST_USER = "federico.defaveri";
|
// public static final String TEST_USER = "federico.defaveri";
|
||||||
// public static final String TEST_USER = "massimiliano.assante";
|
// public static final String TEST_USER = "massimiliano.assante";
|
||||||
// public static final String TEST_USER = "pasquale.pagano";
|
// public static final String TEST_USER = "pasquale.pagano";
|
||||||
public static final String TEST_USER = "francesco.mangiacrapa";
|
// public static final String TEST_USER = "francesco.mangiacrapa";
|
||||||
// public static final String TEST_USER_FULL_NAME = "Francesco Mangiacrapa";
|
// public static final String TEST_USER_FULL_NAME = "Francesco Mangiacrapa";
|
||||||
// public static final String TEST_USER = "test.user";
|
public static final String TEST_USER = "test.user";
|
||||||
public static final String TEST_USER_FULL_NAME = "Test User";
|
public static final String TEST_USER_FULL_NAME = "Test User";
|
||||||
|
|
||||||
public static GCUBEClientLog defaultLogger = new GCUBEClientLog("WorkspacePortlet");
|
public static GCUBEClientLog defaultLogger = new GCUBEClientLog("WorkspacePortlet");
|
||||||
|
@ -70,6 +70,7 @@ public class Util {
|
||||||
session.setScope(TEST_SCOPE);
|
session.setScope(TEST_SCOPE);
|
||||||
session.setUserAvatarId(TEST_USER + "Avatar");
|
session.setUserAvatarId(TEST_USER + "Avatar");
|
||||||
session.setUserFullName(TEST_USER_FULL_NAME);
|
session.setUserFullName(TEST_USER_FULL_NAME);
|
||||||
|
session.setUserEmailAddress("test.user@mail.test");
|
||||||
}
|
}
|
||||||
|
|
||||||
withoutPortal = true;
|
withoutPortal = true;
|
||||||
|
|
Loading…
Reference in New Issue