completed object CredentialModel and InfoContactModel
git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/widgets/workspace-sharing-widget@92602 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
fb45cb20b4
commit
899b99274b
|
@ -286,7 +286,7 @@ public class WorkspaceSharingController {
|
|||
|
||||
/**
|
||||
*
|
||||
* @return
|
||||
* @return gxt 2.2.5 Dialog
|
||||
*/
|
||||
public Dialog getSharingDialog() {
|
||||
return sharingDialog;
|
||||
|
|
|
@ -10,12 +10,12 @@ import org.gcube.portlets.widgets.workspacesharingwidget.client.rpc.WorkspaceSha
|
|||
import org.gcube.portlets.widgets.workspacesharingwidget.client.view.sharing.SmartShare;
|
||||
import org.gcube.portlets.widgets.workspacesharingwidget.shared.CredentialModel;
|
||||
import org.gcube.portlets.widgets.workspacesharingwidget.shared.FileModel;
|
||||
import org.gcube.portlets.widgets.workspacesharingwidget.shared.InfoContactModel;
|
||||
|
||||
import com.extjs.gxt.ui.client.event.BaseEvent;
|
||||
import com.extjs.gxt.ui.client.event.Events;
|
||||
import com.extjs.gxt.ui.client.event.Listener;
|
||||
import com.extjs.gxt.ui.client.widget.Dialog;
|
||||
import com.extjs.gxt.ui.client.widget.Window;
|
||||
import com.google.gwt.core.client.GWT;
|
||||
|
||||
/**
|
||||
|
@ -43,14 +43,14 @@ public class WorkspaceSmartSharingController {
|
|||
this.listAlreadySharedContact = listAlreadySharedContact;
|
||||
this.fileModel = file;
|
||||
smartShare = new SmartShare();
|
||||
smartShare.setSize(ConstantsSharing.WIDTH_DIALOG+20, ConstantsSharing.HEIGHT_DIALOG-150);
|
||||
smartShare.setSize(ConstantsSharing.WIDTH_DIALOG+20, ConstantsSharing.HEIGHT_DIALOG-170);
|
||||
updateSharingDialog();
|
||||
addListenersSharingDialog();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Example of listners
|
||||
* Example of listeners
|
||||
*/
|
||||
private void addListenersSharingDialog(){
|
||||
|
||||
|
@ -61,6 +61,19 @@ public class WorkspaceSmartSharingController {
|
|||
|
||||
if(smartShare.isValidForm(true)){
|
||||
//THAT'S OK
|
||||
|
||||
smartShare.getSharedListUsers(); //@return the selected contacts (as InfoContactModel)
|
||||
|
||||
smartShare.getSharedListUsersCredential(); //@return tthe selected contacts (as CredentialModel)
|
||||
|
||||
for (InfoContactModel contact : smartShare.getSharedListUsers()) {
|
||||
System.out.println(contact);
|
||||
}
|
||||
|
||||
for (CredentialModel credential : smartShare.getSharedListUsersCredential()) {
|
||||
System.out.println(credential);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -83,9 +96,9 @@ public class WorkspaceSmartSharingController {
|
|||
|
||||
/**
|
||||
*
|
||||
* @return
|
||||
* @return gxt 2.2.5 Dialog
|
||||
*/
|
||||
public Window getSharingDialog() {
|
||||
public Dialog getSharingDialog() {
|
||||
return smartShare;
|
||||
}
|
||||
|
||||
|
|
|
@ -22,5 +22,8 @@ public interface Icons extends ClientBundle {
|
|||
|
||||
@Source("info-icon.png")
|
||||
ImageResource info();
|
||||
|
||||
@Source("share.png")
|
||||
ImageResource share();
|
||||
}
|
||||
|
||||
|
|
|
@ -39,4 +39,11 @@ public class Resources {
|
|||
return AbstractImagePrototype.create(ICONS.info());
|
||||
}
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
public static AbstractImagePrototype getIconShare() {
|
||||
return AbstractImagePrototype.create(ICONS.share());
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 450 B |
|
@ -7,6 +7,7 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
|
||||
import org.gcube.portlets.widgets.workspacesharingwidget.client.ConstantsSharing;
|
||||
import org.gcube.portlets.widgets.workspacesharingwidget.client.resources.Resources;
|
||||
import org.gcube.portlets.widgets.workspacesharingwidget.client.view.sharing.multisuggest.MultiDragContact;
|
||||
import org.gcube.portlets.widgets.workspacesharingwidget.client.view.sharing.multisuggest.MultiValuePanel;
|
||||
import org.gcube.portlets.widgets.workspacesharingwidget.shared.CredentialModel;
|
||||
|
@ -90,8 +91,6 @@ public class SmartShare extends Dialog{
|
|||
public void updateSharingDialog(FileModel fileModel, List<CredentialModel> listAlreadySharedContact){
|
||||
this.fileToShare = fileModel;
|
||||
|
||||
setButtons(Dialog.OKCANCEL);
|
||||
|
||||
String heading = "Share";
|
||||
if(fileModel.isDirectory())
|
||||
heading+=" folder: ";
|
||||
|
@ -186,17 +185,60 @@ public class SmartShare extends Dialog{
|
|||
setResizable(true);
|
||||
setButtonAlign(HorizontalAlignment.CENTER);
|
||||
setButtons(Dialog.OKCANCEL);
|
||||
setIcon(Resources.getIconShare());
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @return the selected contacts (as InfoContactModel)
|
||||
*/
|
||||
public List<InfoContactModel> getSharedListUsers() {
|
||||
// printSelectedUser();
|
||||
return suggestPanel.getSelectedUser();
|
||||
|
||||
List<InfoContactModel> contacts = new ArrayList<InfoContactModel>();
|
||||
|
||||
for (InfoContactModel wsuser : suggestPanel.getSelectedUser()) {
|
||||
CredentialModel credential = getCredentialModelFromInfoContactModel(wsuser);
|
||||
wsuser.setReferenceCredential(credential);
|
||||
contacts.add(wsuser);
|
||||
}
|
||||
|
||||
return contacts;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @return the selected contacts (as CredentialModel)
|
||||
*/
|
||||
public List<CredentialModel> getSharedListUsersCredential() {
|
||||
return suggestPanel.getSelectedUserCredential();
|
||||
|
||||
List<CredentialModel> toReturn = new ArrayList<CredentialModel>();
|
||||
|
||||
for (InfoContactModel wsuser : suggestPanel.getSelectedUser()) {
|
||||
CredentialModel credential = wsuser.getReferenceCredential();
|
||||
|
||||
if(credential==null)
|
||||
credential = new CredentialModel(null, "UNKWNOWN LOGIN", wsuser.isGroup());
|
||||
|
||||
toReturn.add(credential);
|
||||
}
|
||||
return toReturn;
|
||||
}
|
||||
|
||||
private CredentialModel getCredentialModelFromInfoContactModel(InfoContactModel infoContact){
|
||||
|
||||
if(infoContact==null)
|
||||
return null;
|
||||
|
||||
if(infoContact.getReferenceCredential()==null){
|
||||
return new CredentialModel(null, infoContact.getLogin(), infoContact.isGroup());
|
||||
}else if(infoContact.getReferenceCredential()!=null)
|
||||
return infoContact.getReferenceCredential();
|
||||
|
||||
return null;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -309,7 +351,7 @@ public class SmartShare extends Dialog{
|
|||
|
||||
/**
|
||||
*
|
||||
* @param displayAlert
|
||||
* @param displayAlert in case of error
|
||||
* @return
|
||||
*/
|
||||
public boolean isValidForm(boolean displayAlert){
|
||||
|
|
|
@ -157,26 +157,6 @@ public class MultiValuePanel extends Composite {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @return the selected contacts (user logins e.g. pino.pini)
|
||||
*/
|
||||
public List<CredentialModel> getSelectedUserCredential() {
|
||||
if (users == null)
|
||||
return new ArrayList<CredentialModel>();
|
||||
else {
|
||||
List<CredentialModel> toReturn = new ArrayList<CredentialModel>();
|
||||
|
||||
for (String login : itemsSelected) {
|
||||
InfoContactModel wsuser = users.get(login);
|
||||
if(wsuser!= null && !toReturn.contains(wsuser))
|
||||
toReturn.add(wsuser.getReferenceCredential());
|
||||
}
|
||||
return toReturn;
|
||||
}
|
||||
}
|
||||
|
||||
private void removeListItem(ListItem displayItem, BulletList list) {
|
||||
GWT.log("Removing: " + displayItem.getWidget(0).getElement().getInnerHTML(), null);
|
||||
itemsSelected.remove(displayItem.getWidget(0).getElement().getInnerHTML());
|
||||
|
|
|
@ -56,39 +56,39 @@ public class GWTWorkspaceSharingBuilder {
|
|||
hashTestUser.put("federico.defaveri",
|
||||
new InfoContactModel(
|
||||
"federico.defaveri", "federico.defaveri",
|
||||
"Federico de Faveri"));
|
||||
"Federico de Faveri", false));
|
||||
|
||||
hashTestUser.put("antonio.gioia",
|
||||
new InfoContactModel(
|
||||
"antonio.gioia", "antonio.gioia", "Antonio Gioia"));
|
||||
"antonio.gioia", "antonio.gioia", "Antonio Gioia", false));
|
||||
|
||||
hashTestUser.put("fabio.sinibaldi",
|
||||
new InfoContactModel(
|
||||
"fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi"));
|
||||
"fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi",false));
|
||||
|
||||
hashTestUser.put("pasquale.pagano",
|
||||
new InfoContactModel(
|
||||
"pasquale.pagano", "pasquale.pagano", "Pasquale Pagano"));
|
||||
"pasquale.pagano", "pasquale.pagano", "Pasquale Pagano",false));
|
||||
|
||||
hashTestUser.put("francesco.mangiacrapa",
|
||||
new InfoContactModel(
|
||||
"francesco.mangiacrapa", "francesco.mangiacrapa",
|
||||
"Francesco Mangiacrapa"));
|
||||
"Francesco Mangiacrapa",false));
|
||||
|
||||
hashTestUser.put("massimiliano.assante",
|
||||
new InfoContactModel(
|
||||
"massimiliano.assante", "massimiliano.assante",
|
||||
"Massimiliano Assante"));
|
||||
"Massimiliano Assante",false));
|
||||
|
||||
hashTestUser.put("leonardo.candela",
|
||||
new InfoContactModel(
|
||||
"leonardo.candela", "leonardo.candela",
|
||||
"Leonardo Candela"));
|
||||
"Leonardo Candela",false));
|
||||
|
||||
hashTestUser.put("valentina.marioli",
|
||||
new InfoContactModel(
|
||||
"valentina.marioli", "valentina.marioli",
|
||||
"Valentina Marioli"));
|
||||
"Valentina Marioli",false));
|
||||
|
||||
// hashTestUser.put(WsUtil.TEST_USER.toString(),
|
||||
// new InfoContactModel(
|
||||
|
@ -127,10 +127,9 @@ public class GWTWorkspaceSharingBuilder {
|
|||
for (UserModel userModel : listUsers) {
|
||||
String fullName = userModel.getFullname();
|
||||
|
||||
//TODO ISGROUP?
|
||||
if (fullName != null && !fullName.isEmpty())
|
||||
listContactsModel
|
||||
.add(new InfoContactModel(userModel.getUserId() + "",
|
||||
userModel.getScreenName(), fullName));
|
||||
listContactsModel.add(new InfoContactModel(userModel.getUserId() + "",userModel.getScreenName(), fullName,false));
|
||||
else
|
||||
logger.info("buildGXTListContactsModel doesn't return user: "
|
||||
+ userModel.getScreenName()
|
||||
|
@ -169,7 +168,8 @@ public class GWTWorkspaceSharingBuilder {
|
|||
portalLogin = "";
|
||||
}
|
||||
|
||||
return new InfoContactModel(portalLogin, portalLogin,UserUtil.getUserFullName(portalLogin));
|
||||
//TODO ISGROUP
|
||||
return new InfoContactModel(portalLogin, portalLogin,UserUtil.getUserFullName(portalLogin), false);
|
||||
|
||||
}
|
||||
|
||||
|
@ -199,8 +199,9 @@ public class GWTWorkspaceSharingBuilder {
|
|||
public InfoContactModel buildGXTInfoContactModel(User user)
|
||||
throws InternalErrorException {
|
||||
|
||||
//TODO ISGROUP
|
||||
if (user != null)
|
||||
return new InfoContactModel(user.getId(), user.getPortalLogin(), UserUtil.getUserFullName(user.getPortalLogin()));
|
||||
return new InfoContactModel(user.getId(), user.getPortalLogin(), UserUtil.getUserFullName(user.getPortalLogin()),false);
|
||||
|
||||
return new InfoContactModel();
|
||||
}
|
||||
|
|
|
@ -89,15 +89,15 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
|||
logger.warn("WORKSPACE PORTLET IS IN TEST MODE - RETURN TEST USERS");
|
||||
List<InfoContactModel> listContactsModel = new ArrayList<InfoContactModel>();
|
||||
// //TEST USERS
|
||||
listContactsModel.add(new InfoContactModel("federico.defaveri", "federico.defaveri", "Federico de Faveri"));
|
||||
listContactsModel.add(new InfoContactModel("antonio.gioia", "antonio.gioia", "Antonio Gioia"));
|
||||
listContactsModel.add(new InfoContactModel("fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi"));
|
||||
listContactsModel.add(new InfoContactModel("pasquale.pagano", "pasquale.pagano", "Pasquale Pagano"));
|
||||
listContactsModel.add(new InfoContactModel("federico.defaveri", "federico.defaveri", "Federico de Faveri", false));
|
||||
listContactsModel.add(new InfoContactModel("antonio.gioia", "antonio.gioia", "Antonio Gioia", false));
|
||||
listContactsModel.add(new InfoContactModel("fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi", false));
|
||||
listContactsModel.add(new InfoContactModel("pasquale.pagano", "pasquale.pagano", "Pasquale Pagano", false));
|
||||
// listContactsModel.add(new InfoContactModel(WsUtil.TEST_USER, WsUtil.TEST_USER, WsUtil.TEST_USER_FULL_NAME));
|
||||
listContactsModel.add(new InfoContactModel("francesco.mangiacrapa", "francesco.mangiacrapa", "Francesco Mangiacrapa"));
|
||||
listContactsModel.add(new InfoContactModel("massimiliano.assante", "massimiliano.assante", "Massimiliano Assante"));
|
||||
listContactsModel.add(new InfoContactModel("valentina.marioli", "valentina.marioli", "Valentina Marioli"));
|
||||
listContactsModel.add(new InfoContactModel("leonardo.candela", "leonardo.candela", "Leonardo Candela"));
|
||||
listContactsModel.add(new InfoContactModel("francesco.mangiacrapa", "francesco.mangiacrapa", "Francesco Mangiacrapa", false));
|
||||
listContactsModel.add(new InfoContactModel("massimiliano.assante", "massimiliano.assante", "Massimiliano Assante", false));
|
||||
listContactsModel.add(new InfoContactModel("valentina.marioli", "valentina.marioli", "Valentina Marioli", false));
|
||||
listContactsModel.add(new InfoContactModel("leonardo.candela", "leonardo.candela", "Leonardo Candela", false));
|
||||
return listContactsModel;
|
||||
|
||||
}
|
||||
|
|
|
@ -90,19 +90,19 @@ public class DiffereceBeetweenInfoContactModel {
|
|||
public static void main(String[] args) {
|
||||
|
||||
List<InfoContactModel> listA = new ArrayList<InfoContactModel>();
|
||||
listA.add(new InfoContactModel("federico.defaveri", "federico.defaveri", "Federico de Faveri"));
|
||||
listA.add(new InfoContactModel("antonio.gioia", "antonio.gioia", "Antonio Gioia"));
|
||||
listA.add(new InfoContactModel("fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi"));
|
||||
listA.add(new InfoContactModel("pasquale.pagano", "pasquale.pagano", "Pasquale Pagano"));
|
||||
listA.add(new InfoContactModel("francesco.mangiacrapa", "francesco.mangiacrapa", "Francesco Mangiacrapa"));
|
||||
listA.add(new InfoContactModel("massimiliano.assante", "massimiliano.assante", "Massimiliano Assante"));
|
||||
listA.add(new InfoContactModel("federico.defaveri", "federico.defaveri", "Federico de Faveri", false));
|
||||
listA.add(new InfoContactModel("antonio.gioia", "antonio.gioia", "Antonio Gioia",false));
|
||||
listA.add(new InfoContactModel("fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi",false));
|
||||
listA.add(new InfoContactModel("pasquale.pagano", "pasquale.pagano", "Pasquale Pagano",false));
|
||||
listA.add(new InfoContactModel("francesco.mangiacrapa", "francesco.mangiacrapa", "Francesco Mangiacrapa",false));
|
||||
listA.add(new InfoContactModel("massimiliano.assante", "massimiliano.assante", "Massimiliano Assante",false));
|
||||
|
||||
List<InfoContactModel> listB = new ArrayList<InfoContactModel>();
|
||||
|
||||
listB.add(new InfoContactModel("federico.defaveri", "federico.defaveri", "Federico de Faveri"));
|
||||
listB.add(new InfoContactModel("fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi"));
|
||||
listB.add(new InfoContactModel("antonio.gioia", "antonio.gioia", "Antonio Gioia"));
|
||||
listB.add(new InfoContactModel("pasquale.pagano", "pasquale.pagano", "Pasquale Pagano"));
|
||||
listB.add(new InfoContactModel("federico.defaveri", "federico.defaveri", "Federico de Faveri",false));
|
||||
listB.add(new InfoContactModel("fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi",false));
|
||||
listB.add(new InfoContactModel("antonio.gioia", "antonio.gioia", "Antonio Gioia",false));
|
||||
listB.add(new InfoContactModel("pasquale.pagano", "pasquale.pagano", "Pasquale Pagano",false));
|
||||
|
||||
DiffereceBeetweenInfoContactModel diff = new DiffereceBeetweenInfoContactModel(listA, listB);
|
||||
|
||||
|
|
|
@ -157,7 +157,8 @@ public class WsUtil {
|
|||
GWTWorkspaceSharingBuilder builder = new GWTWorkspaceSharingBuilder();
|
||||
|
||||
//ADDED 03/09/2013
|
||||
builder.setUserLogged(new InfoContactModel(session.getUsername(), session.getUsername(), session.getUserFullName()));
|
||||
//TODO IS GROUP?
|
||||
builder.setUserLogged(new InfoContactModel(session.getUsername(), session.getUsername(), session.getUserFullName(), false));
|
||||
|
||||
session.setAttribute(WORKSPACEBUILDER_ATTRIBUTE, builder);
|
||||
}
|
||||
|
|
|
@ -15,7 +15,7 @@ public class InfoContactModel extends BaseModelData implements Serializable {
|
|||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = 1598054293247763508L;
|
||||
private static final long serialVersionUID = -4098652774574958363L;
|
||||
|
||||
|
||||
protected static final String ID = "id";
|
||||
|
@ -28,17 +28,18 @@ public class InfoContactModel extends BaseModelData implements Serializable {
|
|||
|
||||
public InfoContactModel() {}
|
||||
|
||||
public InfoContactModel(String id, String login, String fullName) {
|
||||
public InfoContactModel(String id, String login, String fullName, boolean isGroup) {
|
||||
setId(id);
|
||||
setLogin(login);
|
||||
setName(fullName);
|
||||
setIsGroup(isGroup);
|
||||
}
|
||||
|
||||
public void setIsGroup(boolean isGroup){
|
||||
set(ISGROUP, isGroup);
|
||||
}
|
||||
|
||||
public Boolean isGroup(boolean isGroup){
|
||||
public Boolean isGroup(){
|
||||
return (Boolean) get(ISGROUP);
|
||||
}
|
||||
|
||||
|
@ -93,8 +94,8 @@ public class InfoContactModel extends BaseModelData implements Serializable {
|
|||
@Override
|
||||
public String toString() {
|
||||
StringBuilder builder = new StringBuilder();
|
||||
builder.append("InfoContactModel [referenceCredential=");
|
||||
builder.append(referenceCredential);
|
||||
builder.append("InfoContactModel [isGroup()=");
|
||||
builder.append(isGroup());
|
||||
builder.append(", getName()=");
|
||||
builder.append(getName());
|
||||
builder.append(", getId()=");
|
||||
|
@ -106,5 +107,4 @@ public class InfoContactModel extends BaseModelData implements Serializable {
|
|||
builder.append("]");
|
||||
return builder.toString();
|
||||
}
|
||||
|
||||
}
|
Binary file not shown.
After Width: | Height: | Size: 450 B |
Loading…
Reference in New Issue