89 lines
2.4 KiB
Java
89 lines
2.4 KiB
Java
package org.gcube.portal.event.publisher.lr62;
|
|
|
|
import java.net.InetAddress;
|
|
import java.net.UnknownHostException;
|
|
import java.util.Map;
|
|
|
|
import org.gcube.event.publisher.Event;
|
|
import org.gcube.vomanagement.usermanagement.impl.LiferayGroupManager;
|
|
|
|
import com.liferay.portal.kernel.log.Log;
|
|
import com.liferay.portal.kernel.log.LogFactoryUtil;
|
|
import com.liferay.portal.model.User;
|
|
import com.liferay.portal.util.PortalUtil;
|
|
|
|
public class PortalEvent extends Event {
|
|
|
|
private static final long serialVersionUID = -6940345709578482873L;
|
|
|
|
protected static final Log log = LogFactoryUtil.getLog(PortalEvent.class);
|
|
|
|
private static String sender;
|
|
|
|
public static final String TYPE = "portal";
|
|
public static final String GROUP_ENTRY = "group";
|
|
public static final String ROLE_ENTRY = "role";
|
|
|
|
static {
|
|
try {
|
|
sender = new LiferayGroupManager().getRootVOName();
|
|
} catch (Exception e) {
|
|
log.warn("Cannot get root VO name, using hostname");
|
|
try {
|
|
sender = InetAddress.getLocalHost().getHostName();
|
|
} catch (UnknownHostException e1) {
|
|
log.error("Cannot get localhost name", e);
|
|
sender = PortalUtil.getComputerName();
|
|
}
|
|
}
|
|
}
|
|
|
|
public PortalEvent(String name) {
|
|
super(name, TYPE, getSender());
|
|
}
|
|
|
|
public PortalEvent(String name, User user) {
|
|
this(name, getUserIdentifier(user));
|
|
}
|
|
|
|
public PortalEvent(String name, String user) {
|
|
super(name, TYPE, getSender(), user);
|
|
}
|
|
|
|
public PortalEvent(String name, User user, Map<String, String> data) {
|
|
this(name, getUserIdentifier(user), data);
|
|
}
|
|
|
|
public PortalEvent(String name, String user, Map<String, String> data) {
|
|
super(name, TYPE, getSender(), user, data);
|
|
}
|
|
|
|
protected static String getSender() {
|
|
return sender;
|
|
}
|
|
|
|
public void setUser(User user) {
|
|
setUser(getUserIdentifier(user));
|
|
}
|
|
|
|
protected static String getUserIdentifier(User user) {
|
|
return user.getScreenName();
|
|
}
|
|
|
|
public void setGroup(String group) {
|
|
set(GROUP_ENTRY, group);
|
|
}
|
|
|
|
public String getGroup() {
|
|
return (String) (GROUP_ENTRY);
|
|
}
|
|
|
|
public void setRole(String role) {
|
|
set(ROLE_ENTRY, role);
|
|
}
|
|
|
|
public String getRole() {
|
|
return (String) (ROLE_ENTRY);
|
|
}
|
|
|
|
} |