Issue #2698 made sessions private and invite only

removed venue info because you can't get it for private rooms
improved error handling for existing room when attempting to create
fixed default compression config


Former-commit-id: 850cbc03ebea6f26ac7095abffe7729985c426c4
This commit is contained in:
Brian Clements 2014-01-28 16:59:53 -06:00
parent 6b1843f19a
commit c498307b30
22 changed files with 220 additions and 445 deletions

View file

@ -23,12 +23,10 @@ import java.util.Collection;
import org.jivesoftware.smack.packet.Presence;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
/**
* Provides information about a venue. In addition implementations will act as a
* target for participant updates such as
* Provides information about a venue.
*
* <pre>
*
@ -37,23 +35,15 @@ import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Mar 1, 2012 jkorman Initial creation
* Jan 28, 2014 2698 bclement removed getInfo, added methods to replace
*
* </pre>
*
* @author jkorman
* @version 1.0
*/
public interface IVenue {
/**
* Get venue information. This contains information that may change over
* time
*
* @return
*/
public IVenueInfo getInfo() throws CollaborationException;
/**
* @return list of users in venue
*/
@ -70,6 +60,21 @@ public interface IVenue {
/**
* @return id of venue "name@service"
*/
public String getId();
/**
* @return name of venue
*/
public String getName();
/**
* @return number of users in venue
*/
public int getParticipantCount();
/**
* @return venue subject
*/
public String getSubject();
}

View file

@ -1,85 +0,0 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.uf.viz.collaboration.comm.identity.info;
/**
* Information on a venue. Information may become outdated.
*
* <pre>
*
* SOFTWARE HISTORY
*
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Mar 1, 2012 jkorman Initial creation
*
* </pre>
*
* @author jkorman
* @version 1.0
*/
public interface IVenueInfo {
/**
* @return description, may be empty
*/
public String getVenueDescription();
/**
* Get venue name
* @return
*/
public String getVenueName();
/**
* @return subject, may be empty
*/
public String getVenueSubject();
/**
* @return id of venue "name@service"
*/
public String getVenueID();
/**
* Get a count of the current number of room participants
*
* @return Count of the current number of room participants
*/
public int getParticipantCount();
/**
* @return true if venue is divided into participants and occupants who
* can't speak
*/
public boolean isModerated();
/**
* @return true if venue persists after participants have left
*/
public boolean isPersistent();
/**
* @return true if venue is password protected
*/
public boolean requiresPassword();
}

View file

@ -27,20 +27,18 @@ import java.util.Map;
import java.util.Set;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.packet.Presence;
import org.jivesoftware.smack.packet.Presence.Mode;
import org.jivesoftware.smack.packet.Presence.Type;
import org.jivesoftware.smack.util.StringUtils;
import org.jivesoftware.smackx.muc.MultiUserChat;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenue;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.provider.user.IDConverter;
import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
/**
* TODO Add Description
* Provides information about a venue.
*
* <pre>
*
@ -50,34 +48,21 @@ import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
* ------------ ---------- ----------- --------------------------
* Mar 1, 2012 jkorman Initial creation
* Dec 6, 2013 2561 bclement removed ECF
* Jan 28, 2014 2698 bclement removed getInfo, added methods to replace
*
* </pre>
*
* @author jkorman
* @version 1.0
*/
public class Venue implements IVenue {
private final MultiUserChat muc;
private final XMPPConnection conn;
private Map<String, Presence> presenceMap = new HashMap<String, Presence>();
public Venue(XMPPConnection conn, MultiUserChat muc) {
this.muc = muc;
this.conn = conn;
}
@Override
public IVenueInfo getInfo() throws CollaborationException {
try {
return new VenueInfo(MultiUserChat.getRoomInfo(conn, muc.getRoom()));
} catch (XMPPException e) {
throw new CollaborationException("Unable to get room information",
e);
}
}
@Override
@ -112,7 +97,39 @@ public class Venue implements IVenue {
*/
@Override
public String getName() {
return StringUtils.parseName(getId());
}
/*
* (non-Javadoc)
*
* @see com.raytheon.uf.viz.collaboration.comm.identity.info.IVenue#getId()
*/
@Override
public String getId() {
return muc.getRoom();
}
/*
* (non-Javadoc)
*
* @see com.raytheon.uf.viz.collaboration.comm.identity.info.IVenue#
* getParticipantCount()
*/
@Override
public int getParticipantCount() {
return muc.getOccupantsCount();
}
/*
* (non-Javadoc)
*
* @see
* com.raytheon.uf.viz.collaboration.comm.identity.info.IVenue#getSubject()
*/
@Override
public String getSubject() {
return muc.getSubject();
}
}

View file

@ -1,105 +0,0 @@
/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.uf.viz.collaboration.comm.provider.info;
import org.jivesoftware.smackx.muc.RoomInfo;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.provider.Tools;
/**
*
* Wrap a chatroom info in a VenueInfo
*
* <pre>
*
* SOFTWARE HISTORY
*
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Jul 24, 2012 bsteffen Initial creation
*
* </pre>
*
* @author bsteffen
* @version 1.0
*/
public class VenueInfo implements IVenueInfo {
private RoomInfo info;
public VenueInfo(RoomInfo info) {
this.info = info;
}
@Override
public String getVenueDescription() {
return info.getDescription();
}
@Override
public String getVenueName() {
return Tools.parseName(info.getRoom());
}
@Override
public String getVenueSubject() {
return info.getSubject();
}
@Override
public String getVenueID() {
return info.getRoom();
}
@Override
public int getParticipantCount() {
return info.getOccupantsCount();
}
@Override
public boolean isModerated() {
return info.isModerated();
}
@Override
public boolean isPersistent() {
return info.isPersistent();
}
@Override
public boolean requiresPassword() {
return info.isPasswordProtected();
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(String.format("[%s]:", getVenueName()));
sb.append(String.format("[%s]:", getVenueID()));
sb.append(String.format("mod[%s]:", (isModerated()) ? "T" : "F"));
sb.append(String.format("pers[%s]:", (isPersistent()) ? "T" : "F"));
sb.append(String.format("pass[%s]:", (requiresPassword()) ? "T" : "F"));
sb.append(String.format("\n subject : %s", getVenueSubject()));
sb.append(String.format("\n description : %s", getVenueDescription()));
return sb.toString();
}
}

View file

@ -39,6 +39,7 @@ import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
* ------------ ---------- ----------- --------------------------
* Mar 21, 2012 jkorman Initial creation
* Dec 6, 2013 2561 bclement removed ECF
* Jan 28, 2014 2698 bclement removed false throws statements
*
* </pre>
*
@ -63,8 +64,7 @@ public abstract class BaseSession implements ISession {
* @param externalBus
* @param manager
*/
protected BaseSession(EventBus externalBus,
CollaborationConnection manager) throws CollaborationException {
protected BaseSession(EventBus externalBus, CollaborationConnection manager) {
this(externalBus, manager, UUID.randomUUID().toString());
}
@ -76,8 +76,7 @@ public abstract class BaseSession implements ISession {
* @param sessionId
*/
protected BaseSession(EventBus externalBus,
CollaborationConnection manager, String sessionId)
throws CollaborationException {
CollaborationConnection manager, String sessionId) {
// Set the session identifier.
this.sessionId = sessionId;
managerEventBus = externalBus;

View file

@ -19,10 +19,8 @@
**/
package com.raytheon.uf.viz.collaboration.comm.provider.session;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
@ -44,13 +42,11 @@ import org.jivesoftware.smack.packet.XMPPError;
import org.jivesoftware.smack.provider.ProviderManager;
import org.jivesoftware.smackx.muc.InvitationListener;
import org.jivesoftware.smackx.muc.MultiUserChat;
import org.jivesoftware.smackx.muc.RoomInfo;
import com.google.common.eventbus.EventBus;
import com.google.common.net.HostAndPort;
import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.IAccountManager;
import com.raytheon.uf.viz.collaboration.comm.identity.ISession;
@ -60,7 +56,6 @@ import com.raytheon.uf.viz.collaboration.comm.identity.event.IEventPublisher;
import com.raytheon.uf.viz.collaboration.comm.identity.event.IRosterChangeEvent;
import com.raytheon.uf.viz.collaboration.comm.identity.event.IVenueInvitationEvent;
import com.raytheon.uf.viz.collaboration.comm.identity.event.RosterChangeType;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.identity.invite.SharedDisplayVenueInvite;
import com.raytheon.uf.viz.collaboration.comm.identity.invite.VenueInvite;
import com.raytheon.uf.viz.collaboration.comm.identity.user.IQualifiedID;
@ -71,7 +66,6 @@ import com.raytheon.uf.viz.collaboration.comm.provider.Tools;
import com.raytheon.uf.viz.collaboration.comm.provider.event.RosterChangeEvent;
import com.raytheon.uf.viz.collaboration.comm.provider.event.ServerDisconnectEvent;
import com.raytheon.uf.viz.collaboration.comm.provider.event.VenueInvitationEvent;
import com.raytheon.uf.viz.collaboration.comm.provider.info.VenueInfo;
import com.raytheon.uf.viz.collaboration.comm.provider.user.ContactsManager;
import com.raytheon.uf.viz.collaboration.comm.provider.user.IDConverter;
import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
@ -111,6 +105,8 @@ import com.raytheon.uf.viz.collaboration.comm.provider.user.VenueId;
* Jan 08, 2014 2563 bclement fixed custom port and service name in user id
* Jan 15, 2014 2630 bclement connection data stores status as Mode object
* Jan 24, 2014 2701 bclement removed roster manager
* Jan 28, 2014 2698 bclement fixed compression default
* cleaned up createCollaborationVenue, removed getVenueInfo
*
* </pre>
*
@ -156,7 +152,10 @@ public class CollaborationConnection implements IEventPublisher {
static {
try {
COMPRESS = Boolean.getBoolean("collaboration.compression");
final String compressionProperty = "collaboration.compression";
if (System.getProperty(compressionProperty) != null) {
COMPRESS = Boolean.getBoolean(compressionProperty);
}
} catch (Exception e) {
// must not have permission to access system properties. ignore and
// use default.
@ -394,7 +393,6 @@ public class CollaborationConnection implements IEventPublisher {
public ISharedDisplaySession createCollaborationVenue(String venueName,
String subject) throws CollaborationException {
SharedDisplaySession session = null;
try {
session = new SharedDisplaySession(eventBus, this);
session.createVenue(venueName, subject);
@ -404,10 +402,6 @@ public class CollaborationConnection implements IEventPublisher {
sessions.put(session.getSessionId(), session);
postEvent(session);
return session;
} catch (Exception e) {
throw new CollaborationException(
"Error creating collaboration venue " + venueName, e);
}
}
/**
@ -471,32 +465,6 @@ public class CollaborationConnection implements IEventPublisher {
postEvent(session);
}
/**
*
* @return
*/
public Collection<IVenueInfo> getVenueInfo() {
// Check to see if the container has been connected.
Collection<IVenueInfo> info = new ArrayList<IVenueInfo>();
if (isConnected()) {
Iterator<String> joinedRooms = MultiUserChat.getJoinedRooms(
connection, connection.getUser());
while (joinedRooms.hasNext()) {
String room = joinedRooms.next();
RoomInfo roomInfo;
try {
roomInfo = MultiUserChat.getRoomInfo(connection, room);
info.add(new VenueInfo(roomInfo));
} catch (XMPPException e) {
statusHandler.handle(Priority.PROBLEM,
"Unable to get info for room: " + room, e);
}
}
}
return info;
}
// ***************************
// Connection listener
// ***************************

View file

@ -54,7 +54,6 @@ import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.ISession;
import com.raytheon.uf.viz.collaboration.comm.identity.ISharedDisplaySession;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.identity.user.SharedDisplayRole;
import com.raytheon.uf.viz.collaboration.comm.provider.SessionPayload;
import com.raytheon.uf.viz.collaboration.comm.provider.SessionPayload.PayloadType;
@ -72,6 +71,7 @@ import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
* ------------ ---------- ----------- --------------------------
* Apr 18, 2012 njensen Initial creation
* Dec 18, 2013 2562 bclement moved data to packet extension
* Jan 28, 2014 2698 bclement removed venue info
*
* </pre>
*
@ -96,7 +96,7 @@ public class SharedDisplaySession extends VenueSession implements
private XMPPConnection conn;
public SharedDisplaySession(EventBus externalBus,
CollaborationConnection manager) throws CollaborationException {
CollaborationConnection manager) {
super(externalBus, manager);
init();
}
@ -270,16 +270,15 @@ public class SharedDisplaySession extends VenueSession implements
* configureVenue(java.lang.String)
*/
@Override
protected IVenueInfo configureVenue(String venueName)
protected void configureVenue(String venueName)
throws CollaborationException {
IVenueInfo rval = super.configureVenue(venueName);
super.configureVenue(venueName);
try {
configureSubscription();
} catch (XMPPException e) {
throw new CollaborationException(
"Unable to configure subscription", e);
}
return rval;
}
/**
@ -332,9 +331,9 @@ public class SharedDisplaySession extends VenueSession implements
* createVenue(java.lang.String, java.lang.String)
*/
@Override
protected IVenueInfo createVenue(String venueName, String subject)
protected void createVenue(String venueName, String subject)
throws CollaborationException {
IVenueInfo rval = super.createVenue(venueName, subject);
super.createVenue(venueName, subject);
try {
createNode(getSessionId());
} catch (XMPPException e) {
@ -344,9 +343,8 @@ public class SharedDisplaySession extends VenueSession implements
configureSubscription();
} catch (XMPPException e) {
throw new CollaborationException(
"Unable to configure subscription", e);
"Unable to configure pubsub topic", e);
}
return rval;
}
/**

View file

@ -19,6 +19,7 @@
**/
package com.raytheon.uf.viz.collaboration.comm.provider.session;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
@ -30,7 +31,9 @@ import org.jivesoftware.smack.packet.Message;
import org.jivesoftware.smack.packet.Message.Type;
import org.jivesoftware.smack.packet.Packet;
import org.jivesoftware.smack.packet.Presence;
import org.jivesoftware.smack.packet.XMPPError;
import org.jivesoftware.smackx.Form;
import org.jivesoftware.smackx.FormField;
import org.jivesoftware.smackx.ServiceDiscoveryManager;
import org.jivesoftware.smackx.muc.MultiUserChat;
import org.jivesoftware.smackx.muc.ParticipantStatusListener;
@ -47,7 +50,6 @@ import com.raytheon.uf.viz.collaboration.comm.identity.IMessage;
import com.raytheon.uf.viz.collaboration.comm.identity.IVenueSession;
import com.raytheon.uf.viz.collaboration.comm.identity.event.ParticipantEventType;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenue;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.identity.invite.VenueInvite;
import com.raytheon.uf.viz.collaboration.comm.provider.CollaborationMessage;
import com.raytheon.uf.viz.collaboration.comm.provider.SessionPayload;
@ -62,6 +64,7 @@ import com.raytheon.uf.viz.collaboration.comm.provider.user.IDConverter;
import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
/**
* Represents a multi-user chat room
*
* <ul>
* <li>EventBus subscription events.</li>
@ -89,6 +92,8 @@ import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
* Dec 19, 2013 2563 bclement status listeners now send all events to bus
* Jan 07, 2013 2563 bclement use getServiceName instead of getHost when creating room id
* Jan 08, 2014 2563 bclement fixed service name in user IDs from chat history
* Jan 28, 2014 2698 bclement removed venue info, new rooms are now invite-only
* improved error handling for when room already exists
*
* </pre>
*
@ -132,8 +137,7 @@ public class VenueSession extends BaseSession implements IVenueSession {
* @param container
* @param eventBus
*/
protected VenueSession(EventBus externalBus, CollaborationConnection manager)
throws CollaborationException {
protected VenueSession(EventBus externalBus, CollaborationConnection manager) {
super(externalBus, manager);
}
@ -253,7 +257,7 @@ public class VenueSession extends BaseSession implements IVenueSession {
* @return
* @throws CollaborationException
*/
protected IVenueInfo configureVenue(String venueName)
protected void configureVenue(String venueName)
throws CollaborationException {
CollaborationConnection manager = getSessionManager();
XMPPConnection conn = manager.getXmppConnection();
@ -261,7 +265,6 @@ public class VenueSession extends BaseSession implements IVenueSession {
this.muc = new MultiUserChat(conn, roomId);
this.venue = new Venue(conn, muc);
createListeners();
return this.venue.getInfo();
}
/**
@ -284,7 +287,7 @@ public class VenueSession extends BaseSession implements IVenueSession {
* @see com.raytheon.uf.viz.collaboration.comm.identity.IVenueSession#createVenue(java.lang.String,
* java.lang.String)
*/
protected IVenueInfo createVenue(String venueName, String subject)
protected void createVenue(String venueName, String subject)
throws CollaborationException {
try {
CollaborationConnection manager = getSessionManager();
@ -297,15 +300,68 @@ public class VenueSession extends BaseSession implements IVenueSession {
createListeners();
UserId user = manager.getUser();
muc.create(user.getName());
muc.sendConfigurationForm(new Form(Form.TYPE_SUBMIT));
muc.sendConfigurationForm(getRoomConfig(venueName));
muc.changeSubject(subject);
this.venue = new Venue(conn, muc);
sendPresence(CollaborationConnection.getConnection().getPresence());
return this.venue.getInfo();
} catch (XMPPException e) {
throw new CollaborationException("Error creating venue "
+ venueName, e);
XMPPError xmppError = e.getXMPPError();
String msg;
if (xmppError != null) {
int code = xmppError.getCode();
if (code == 409 || code == 407) {
// 409: room already exists, can't join due to name conflict
// 407: room already exists, can't join since it is private
msg = "Session already exists. Pick a different name.";
} else {
msg = xmppError.getCondition();
}
} else {
msg = "Error creating venue " + venueName;
}
throw new CollaborationException(msg, e);
}
}
protected Form getRoomConfig(String roomName) throws CollaborationException {
Form form;
try {
form = muc.getConfigurationForm();
} catch (XMPPException e) {
throw new CollaborationException(
"Unable to create room configuration form", e);
}
Form submitForm = form.createAnswerForm();
// Add default answers to the form to submit
for (Iterator<FormField> fields = form.getFields(); fields.hasNext();) {
FormField field = fields.next();
if (!FormField.TYPE_HIDDEN.equals(field.getType())
&& field.getVariable() != null) {
// Sets the default value as the answer
submitForm.setDefaultAnswer(field.getVariable());
}
}
submitForm.setAnswer("muc#roomconfig_roomname", roomName);
submitForm.setAnswer("muc#roomconfig_roomdesc", roomName);
submitForm.setAnswer("muc#roomconfig_publicroom", false);
submitForm.setAnswer("muc#roomconfig_membersonly", true);
submitForm.setAnswer("muc#roomconfig_allowinvites", true);
submitForm.setAnswer("muc#roomconfig_whois",
Arrays.asList("moderators"));
return submitForm;
}
/**
* @param roomName
* @return true if room exists on server
* @throws XMPPException
*/
public static boolean roomExistsOnServer(String roomName)
throws XMPPException {
CollaborationConnection conn = CollaborationConnection.getConnection();
XMPPConnection xmpp = conn.getXmppConnection();
String id = getRoomId(xmpp.getServiceName(), roomName);
return roomExistsOnServer(conn.getXmppConnection(), id);
}
/**
@ -705,7 +761,7 @@ public class VenueSession extends BaseSession implements IVenueSession {
*/
@Override
public void sendPresence(Presence presence) throws CollaborationException {
presence.setTo(venue.getInfo().getVenueID());
presence.setTo(venue.getId());
XMPPConnection conn = getConnection().getXmppConnection();
conn.sendPacket(presence);
}

View file

@ -23,9 +23,6 @@ import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import org.eclipse.ui.IEditorPart;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.ISharedDisplaySession;
import com.raytheon.uf.viz.collaboration.comm.identity.user.SharedDisplayRole;
import com.raytheon.uf.viz.collaboration.display.roles.DataProviderEventController;
@ -43,6 +40,7 @@ import com.raytheon.uf.viz.collaboration.display.roles.ParticipantEventControlle
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Apr 16, 2012 njensen Initial creation
* Jan 28, 2014 2698 bclement removed false throws statement
*
* </pre>
*
@ -63,8 +61,7 @@ public class SharedDisplaySessionMgr {
}
public static void joinSession(ISharedDisplaySession session,
SharedDisplayRole initialRole, SessionColorManager colors)
throws CollaborationException {
SharedDisplayRole initialRole, SessionColorManager colors) {
SessionContainer container = new SessionContainer();
container.setSessionId(session.getSessionId());
container.setSession(session);

View file

@ -21,12 +21,7 @@ package com.raytheon.uf.viz.collaboration.display.roles;
import org.eclipse.ui.PartInitException;
import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.ISharedDisplaySession;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.display.editor.CollaborationEditorInput;
import com.raytheon.uf.viz.collaboration.display.editor.ICollaborationEditor;
import com.raytheon.viz.ui.VizWorkbenchManager;
@ -41,6 +36,7 @@ import com.raytheon.viz.ui.VizWorkbenchManager;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Mar 26, 2012 njensen Initial creation
* Jan 28, 2014 2698 bclement removed venue info
*
* </pre>
*
@ -51,9 +47,6 @@ import com.raytheon.viz.ui.VizWorkbenchManager;
public class ParticipantEventController extends
AbstractRoleEventController<ICollaborationEditor> {
private final IUFStatusHandler statusHandler = UFStatus.getHandler(this
.getClass());
public ParticipantEventController(ISharedDisplaySession session) {
super(session);
}
@ -67,17 +60,9 @@ public class ParticipantEventController extends
*/
@Override
protected ICollaborationEditor createDisplayContainer() {
String desc;
try {
IVenueInfo info = session.getVenue().getInfo();
desc = info.getVenueDescription();
} catch (CollaborationException e1) {
statusHandler
.handle(Priority.PROBLEM, e1.getLocalizedMessage(), e1);
desc = session.getVenue().getName();
}
String name = session.getVenue().getName();
CollaborationEditorInput input = new CollaborationEditorInput(
session.getSessionId(), desc);
session.getSessionId(), name);
try {
return (ICollaborationEditor) VizWorkbenchManager.getInstance()
.getCurrentWindow().getActivePage()

View file

@ -36,12 +36,9 @@ import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchPart;
import com.google.common.eventbus.Subscribe;
import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.ISharedDisplaySession;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
import com.raytheon.uf.viz.collaboration.display.Activator;
import com.raytheon.uf.viz.collaboration.display.IRemoteDisplayContainer;
@ -84,6 +81,7 @@ import com.raytheon.viz.ui.editor.AbstractEditor;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Jun 8, 2012 mschenke Initial creation
* Jan 28, 2014 2698 bclement removed venue info
*
* </pre>
*
@ -93,8 +91,6 @@ import com.raytheon.viz.ui.editor.AbstractEditor;
public class SharedEditorsManager implements IRemoteDisplayContainer {
private final IUFStatusHandler log = UFStatus.getHandler(this.getClass());
public class RemoteDisplayEventHandler {
@Subscribe
public void remoteDisplayRequested(RemoteDisplayRequested event) {
@ -448,14 +444,7 @@ public class SharedEditorsManager implements IRemoteDisplayContainer {
private SharedEditorsManager(ISharedDisplaySession session) {
this.session = session;
session.registerEventHandler(eventHandler);
String title;
try {
IVenueInfo info = session.getVenue().getInfo();
title = info.getVenueDescription();
} catch (CollaborationException e) {
log.error("Unable to get venue information", e);
title = session.getVenue().getName();
}
String title = session.getVenue().getName();
editorTitleSuffix = " (" + title + ")";
}

View file

@ -25,7 +25,7 @@ import org.opengis.referencing.crs.CoordinateReferenceSystem;
import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.ISharedDisplaySession;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenue;
import com.raytheon.uf.viz.collaboration.display.Activator;
import com.raytheon.uf.viz.collaboration.display.data.SessionColorManager;
import com.raytheon.uf.viz.collaboration.display.data.SessionContainer;
@ -57,6 +57,7 @@ import com.raytheon.uf.viz.remote.graphics.DispatchGraphicsTarget;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Apr 13, 2012 njensen Initial creation
* Jan 28, 2014 2698 bclement removed venue info
*
* </pre>
*
@ -85,16 +86,9 @@ public class DataProviderRsc extends
if (container != null) {
session = container.getSession();
colorManager = container.getColorManager();
IVenueInfo info;
try {
info = session.getVenue().getInfo();
roomName = info.getVenueDescription();
subject = info.getVenueSubject();
} catch (CollaborationException e) {
statusHandler.error(e.getLocalizedMessage(), e);
roomName = session.getVenue().getName();
}
IVenue venue = session.getVenue();
roomName = venue.getName();
subject = venue.getSubject();
}
}

View file

@ -21,7 +21,6 @@ package com.raytheon.uf.viz.collaboration.ui;
**/
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import org.eclipse.jface.dialogs.IDialogConstants;
@ -38,6 +37,7 @@ import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
@ -46,6 +46,7 @@ import org.eclipse.ui.IPartListener;
import org.eclipse.ui.IWorkbenchPage;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.PlatformUI;
import org.jivesoftware.smack.XMPPException;
import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus;
@ -53,11 +54,11 @@ import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.ISharedDisplaySession;
import com.raytheon.uf.viz.collaboration.comm.identity.IVenueSession;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.identity.user.SharedDisplayRole;
import com.raytheon.uf.viz.collaboration.comm.provider.Tools;
import com.raytheon.uf.viz.collaboration.comm.provider.session.CollaborationConnection;
import com.raytheon.uf.viz.collaboration.comm.provider.session.PeerToPeerCommHelper;
import com.raytheon.uf.viz.collaboration.comm.provider.session.VenueSession;
import com.raytheon.uf.viz.collaboration.display.data.SharedDisplaySessionMgr;
import com.raytheon.uf.viz.collaboration.display.roles.dataprovider.ISharedEditorsManagerListener;
import com.raytheon.uf.viz.collaboration.display.roles.dataprovider.SharedEditorsManager;
@ -83,6 +84,7 @@ import com.raytheon.viz.ui.editor.IMultiPaneEditor;
* ------------ ---------- ----------- --------------------------
* Feb 15, 2012 rferrel Initial creation
* Dec 19, 2013 2563 bclement disable shared display option if not supported by server
* Jan 28, 2014 2698 bclement added error display text
*
* </pre>
*
@ -110,6 +112,8 @@ public class CreateSessionDialog extends CaveSWTDialog {
private ISharedEditorsManagerListener sharedEditorsListener;
private Text errorMessage;
public CreateSessionDialog(Shell parentShell) {
super(parentShell);
setText("Create Session");
@ -246,6 +250,17 @@ public class CreateSessionDialog extends CaveSWTDialog {
sharedEditorsListener);
}
}
gd = new GridData(GridData.GRAB_HORIZONTAL
| GridData.HORIZONTAL_ALIGN_FILL);
gd.horizontalSpan = 2;
errorMessage = new Text(body, SWT.READ_ONLY | SWT.WRAP);
errorMessage.setLayoutData(gd);
Display display = errorMessage.getDisplay();
errorMessage.setBackground(display
.getSystemColor(SWT.COLOR_WIDGET_BACKGROUND));
errorMessage.setForeground(display.getSystemColor(SWT.COLOR_RED));
return body;
}
@ -456,6 +471,8 @@ public class CreateSessionDialog extends CaveSWTDialog {
setReturnValue(result);
CreateSessionDialog.this.getShell().dispose();
} catch (CollaborationException ex) {
errorMessage.setText(ex.getLocalizedMessage());
errorMessage.setVisible(true);
statusHandler.handle(Priority.ERROR,
"Session Creation Error", ex);
event.doit = false;
@ -468,8 +485,10 @@ public class CreateSessionDialog extends CaveSWTDialog {
sb.append(prefix).append(msg);
prefix = "\n";
}
errorMessage.setText(sb.toString());
errorMessage.setVisible(true);
statusHandler.handle(Priority.ERROR,
"Session Creation Error");
"Session Creation Error: " + sb.toString());
event.doit = false;
setReturnValue(null);
focusField.setFocus();
@ -496,13 +515,13 @@ public class CreateSessionDialog extends CaveSWTDialog {
} else if (!Tools.isValidId(name)) {
err = "Name contains invalid characters.";
} else {
Collection<IVenueInfo> info = CollaborationConnection
.getConnection().getVenueInfo();
for (IVenueInfo i : info) {
if (name.equals(i.getVenueName())) {
try {
if (VenueSession.roomExistsOnServer(name)) {
err = "Session already exists. Pick a different name.";
break;
}
} catch (XMPPException e) {
statusHandler.error("Unable to check room existence on server",
e);
}
}
return err;

View file

@ -36,11 +36,8 @@ import org.jivesoftware.smack.RosterEntry;
import org.jivesoftware.smack.RosterGroup;
import org.jivesoftware.smack.packet.Presence;
import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.IVenueSession;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenue;
import com.raytheon.uf.viz.collaboration.comm.provider.session.CollaborationConnection;
import com.raytheon.uf.viz.collaboration.comm.provider.user.SharedGroup;
import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
@ -60,6 +57,7 @@ import com.raytheon.uf.viz.collaboration.ui.data.SessionGroupContainer;
* Dec 20, 2013 2563 bclement fixed support for ungrouped roster items
* Jan 24, 2014 2701 bclement removed local groups, added shared groups
* Jan 27, 2014 2700 bclement pass roster entries directly to userLabelProvider
* Jan 28, 2014 2698 bclement removed venue info
*
* </pre>
*
@ -68,8 +66,6 @@ import com.raytheon.uf.viz.collaboration.ui.data.SessionGroupContainer;
*/
public class UsersTreeLabelProvider extends ColumnLabelProvider {
private final IUFStatusHandler log = UFStatus.getHandler(this.getClass());
private AbstractUserLabelProvider userLabelProvider = new AbstractUserLabelProvider() {
@Override
@ -146,14 +142,7 @@ public class UsersTreeLabelProvider extends ColumnLabelProvider {
if (venue.getVenue() == null) {
return null;
}
IVenueInfo info;
try {
info = venue.getVenue().getInfo();
} catch (CollaborationException e) {
log.error("Unable to get session information", e);
return null;
}
return info.getVenueDescription();
return venue.getVenue().getName();
}
return null;
}
@ -189,19 +178,14 @@ public class UsersTreeLabelProvider extends ColumnLabelProvider {
// portion of the view
else if (element instanceof IVenueSession) {
IVenueSession sessGroup = (IVenueSession) element;
IVenueInfo info;
try {
info = sessGroup.getVenue().getInfo();
} catch (CollaborationException e) {
log.error("Unable to get session tool tip text", e);
return "";
}
builder.append("ID: ").append(info.getVenueID());
builder.append("\nName: ").append(info.getVenueDescription())
IVenue venue = sessGroup.getVenue();
builder.append("ID: ").append(venue.getId());
builder.append("\nName: ").append(venue.getName())
.append("\n");
builder.append("Subject: ").append(info.getVenueSubject())
builder.append("Subject: ").append(venue.getSubject())
.append("\n");
builder.append("Participants: ").append(info.getParticipantCount());
builder.append("Participants: ")
.append(venue.getParticipantCount());
return builder.toString();
} else {
return null;

View file

@ -44,6 +44,7 @@ import com.raytheon.viz.ui.views.CaveWorkbenchPageManager;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Jul 5, 2012 bsteffen Initial creation
* Jan 28, 2014 2698 bclement changed sessionName to sessionId
*
* </pre>
*
@ -56,32 +57,32 @@ public class ArchiveViewerAction extends Action {
private static final transient IUFStatusHandler statusHandler = UFStatus
.getHandler(ArchiveViewerAction.class);
private final String sessionName;
private final String sessionId;
public ArchiveViewerAction() {
super("View Log...", IconUtil.getImageDescriptor(Activator.getDefault()
.getBundle(), "log.gif"));
sessionName = null;
sessionId = null;
setEnabled(CollaborationConnection.getConnection() != null);
}
public ArchiveViewerAction(UserId user) {
super("View Log...", IconUtil.getImageDescriptor(Activator.getDefault()
.getBundle(), "log.gif"));
sessionName = user.getName();
sessionId = user.getName();
}
public ArchiveViewerAction(IVenueSession session) {
super("View Log...", IconUtil.getImageDescriptor(Activator.getDefault()
.getBundle(), "log.gif"));
sessionName = session.getVenue().getName();
sessionId = session.getVenue().getId();
}
@Override
public void run() {
UserId user = CollaborationConnection.getConnection().getUser();
String logDir = SessionMsgArchive.getLogFilePath(user.getHost(),
user.getName(), sessionName);
user.getName(), sessionId);
try {
CaveWorkbenchPageManager

View file

@ -29,7 +29,6 @@ import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.viz.collaboration.comm.identity.IVenueSession;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.provider.session.CollaborationConnection;
import com.raytheon.uf.viz.collaboration.comm.provider.user.UserId;
import com.raytheon.uf.viz.collaboration.ui.Activator;
@ -52,6 +51,7 @@ import com.raytheon.viz.ui.views.CaveWorkbenchPageManager;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Jul 3, 2012 bsteffen Initial creation
* Jan 28, 2014 2698 bclement removed venue info
*
* </pre>
*
@ -120,9 +120,9 @@ public class CreateSessionAction extends Action {
if (users.length > 0) {
IVenueSession session = (IVenueSession) CollaborationConnection
.getConnection().getSession(sessionId);
IVenueInfo info = session.getVenue().getInfo();
String subject = session.getVenue().getSubject();
InviteAction invite = new InviteAction(session,
info.getVenueDescription(), users);
subject, users);
invite.setInviteMessage(result.getInviteMessage());
invite.run();
}

View file

@ -54,6 +54,7 @@ import com.raytheon.viz.ui.views.CaveWorkbenchPageManager;
* ------------ ---------- ----------- --------------------------
* Jul 5, 2012 bsteffen Initial creation
* Dec 19, 2013 2563 bclement added check for feed venue existence
* Jan 28, 2014 2698 bclement changed feed venue filter to match whole name
*
* </pre>
*
@ -94,7 +95,7 @@ public class DisplayFeedAction extends Action {
for (ISession session : connection.getSessions()) {
if (session instanceof IVenueSession) {
if (((IVenueSession) session).getVenue().getName()
.startsWith(FEED_VENUE)) {
.equalsIgnoreCase(FEED_VENUE)) {
sessionId = session.getSessionId();
}
}

View file

@ -40,7 +40,6 @@ import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.ISession;
import com.raytheon.uf.viz.collaboration.comm.identity.ISharedDisplaySession;
import com.raytheon.uf.viz.collaboration.comm.identity.IVenueSession;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.identity.invite.SharedDisplayVenueInvite;
import com.raytheon.uf.viz.collaboration.comm.identity.invite.VenueInvite;
import com.raytheon.uf.viz.collaboration.comm.provider.session.CollaborationConnection;
@ -58,6 +57,7 @@ import com.raytheon.uf.viz.collaboration.display.data.SharedDisplaySessionMgr;
* ------------ ---------- ----------- --------------------------
* Jul 3, 2012 bsteffen Initial creation
* Dec 6, 2013 2561 bclement removed ECF
* Jan 28, 2014 2698 bclement removed venue info
*
* </pre>
*
@ -114,7 +114,7 @@ public class InviteAction extends Action {
}
invite.setMessage(inviteMessage);
invite.setSessionId(session.getSessionId());
invite.setSubject(session.getVenue().getInfo().getVenueSubject());
invite.setSubject(session.getVenue().getSubject());
List<UserId> inviteList = new ArrayList<UserId>();
UserId inviter = CollaborationConnection.getConnection().getUser();
for (UserId user : users) {
@ -210,16 +210,8 @@ public class InviteAction extends Action {
private void fill() {
for (IVenueSession session : getNewSessions()) {
String desc;
try {
IVenueInfo info = session.getVenue().getInfo();
desc = info.getVenueDescription();
} catch (CollaborationException e) {
statusHandler.handle(Priority.PROBLEM,
e.getLocalizedMessage(), e);
desc = session.getVenue().getName();
}
Action action = new InviteAction(session, desc, users);
String name = session.getVenue().getName();
Action action = new InviteAction(session, name, users);
IContributionItem contrib = new ActionContributionItem(action);
contrib.fill(menu, -1);
}

View file

@ -33,7 +33,6 @@ import org.eclipse.swt.widgets.Menu;
import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.ISharedDisplaySession;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.display.data.SessionContainer;
import com.raytheon.uf.viz.collaboration.display.data.SharedDisplaySessionMgr;
import com.raytheon.uf.viz.collaboration.display.roles.dataprovider.SharedEditorsManager;
@ -52,6 +51,7 @@ import com.raytheon.viz.ui.editor.AbstractEditor;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Mar 21, 2012 mnash Initial creation
* Jan 28, 2014 2698 bclement removed venue info
*
* </pre>
*
@ -142,14 +142,7 @@ public class ShareEditorAction extends ContributedEditorMenuAction implements
if (editor != null) {
List<ISharedDisplaySession> sessions = getSessions();
for (final ISharedDisplaySession session : sessions) {
String sessionName;
try {
IVenueInfo sessionInfo = session.getVenue().getInfo();
sessionName = sessionInfo.getVenueDescription();
} catch (CollaborationException e1) {
Activator.statusHandler.error(e1.getLocalizedMessage(), e1);
sessionName = session.getVenue().getName();
}
String sessionName = session.getVenue().getName();
ActionContributionItem aci = new ActionContributionItem(
new Action(sessionName) {
@Override

View file

@ -24,16 +24,12 @@ import java.util.Collection;
import java.util.Collections;
import java.util.List;
import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.ISession;
import com.raytheon.uf.viz.collaboration.comm.identity.IVenueSession;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.provider.session.CollaborationConnection;
/**
* TODO Add Description
* Retrieve session objects from contacts list
*
* <pre>
*
@ -42,17 +38,15 @@ import com.raytheon.uf.viz.collaboration.comm.provider.session.CollaborationConn
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Mar 6, 2012 rferrel Initial creation
* Jan 28, 2014 2698 bclement removed venue info
*
* </pre>
*
* @author rferrel
* @version 1.0
*/
public class SessionGroupContainer {
private final IUFStatusHandler log = UFStatus.getHandler(this.getClass());
public List<Object> getObjects() {
CollaborationConnection connection = CollaborationConnection
.getConnection();
@ -63,19 +57,9 @@ public class SessionGroupContainer {
List<Object> result = new ArrayList<Object>();
for (ISession session : sessions) {
if (session instanceof IVenueSession) {
IVenueSession vs = (IVenueSession) session;
IVenueInfo info;
try {
info = vs.getVenue().getInfo();
} catch (CollaborationException e) {
log.error("Unable to get venue info", e);
continue;
}
if (info.isPersistent() == false) {
result.add(session);
}
}
}
return result;
}

View file

@ -51,7 +51,6 @@ import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.viz.collaboration.comm.identity.CollaborationException;
import com.raytheon.uf.viz.collaboration.comm.identity.ISharedDisplaySession;
import com.raytheon.uf.viz.collaboration.comm.identity.IVenueSession;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.identity.invite.ColorPopulator;
import com.raytheon.uf.viz.collaboration.comm.identity.user.SharedDisplayRole;
import com.raytheon.uf.viz.collaboration.comm.provider.TransferRoleCommand;
@ -92,6 +91,7 @@ import com.raytheon.viz.ui.input.EditableManager;
* Date Ticket# Engineer Description
* ------------ ---------- ----------- --------------------------
* Mar 1, 2012 rferrel Initial creation
* Jan 28, 2014 2698 bclement removed venue info
*
* </pre>
*
@ -559,14 +559,9 @@ public class CollaborationSessionView extends SessionView implements
Label label = new Label(comp, SWT.NONE);
StringBuilder labelInfo = new StringBuilder();
if (session != null) {
IVenueInfo info;
try {
info = ((IVenueSession) session).getVenue().getInfo();
labelInfo.append(info.getVenueSubject());
label.setToolTipText(info.getVenueSubject());
} catch (CollaborationException e) {
statusHandler.error(e.getLocalizedMessage(), e);
}
String subject = ((IVenueSession) session).getVenue().getSubject();
labelInfo.append(subject);
label.setToolTipText(subject);
}
label.setText(labelInfo.toString());
}

View file

@ -75,7 +75,6 @@ import com.raytheon.uf.viz.collaboration.comm.identity.ISession;
import com.raytheon.uf.viz.collaboration.comm.identity.IVenueSession;
import com.raytheon.uf.viz.collaboration.comm.identity.event.IVenueParticipantEvent;
import com.raytheon.uf.viz.collaboration.comm.identity.event.ParticipantEventType;
import com.raytheon.uf.viz.collaboration.comm.identity.info.IVenueInfo;
import com.raytheon.uf.viz.collaboration.comm.provider.event.UserNicknameChangedEvent;
import com.raytheon.uf.viz.collaboration.comm.provider.event.VenueUserEvent;
import com.raytheon.uf.viz.collaboration.comm.provider.session.CollaborationConnection;
@ -100,6 +99,7 @@ import com.raytheon.viz.ui.views.CaveWorkbenchPageManager;
* Mar 1, 2012 rferrel Initial creation
* Dec 6, 2013 2561 bclement removed ECF
* Dec 19, 2013 2563 bclement reworked participant event logic
* Jan 28, 2014 2698 bclement removed venue info
*
* </pre>
*
@ -585,14 +585,9 @@ public class SessionView extends AbstractSessionView implements IPrintableView {
label.setLayoutData(data);
StringBuilder labelInfo = new StringBuilder();
if (session != null) {
IVenueInfo info;
try {
info = session.getVenue().getInfo();
labelInfo.append(info.getVenueSubject());
label.setToolTipText(info.getVenueSubject());
} catch (CollaborationException e) {
statusHandler.error(e.getLocalizedMessage(), e);
}
String subject = session.getVenue().getSubject();
labelInfo.append(subject);
label.setToolTipText(subject);
}
label.setText(labelInfo.toString());
}
@ -628,16 +623,9 @@ public class SessionView extends AbstractSessionView implements IPrintableView {
if (session == null) {
return sessionId;
}
try {
IVenueInfo info = session.getVenue().getInfo();
return info.getVenueDescription();
} catch (CollaborationException e) {
statusHandler.error("Unable to get venue info", e);
return session.getVenue().getName();
}
}
@Subscribe
public void userEventHandler(VenueUserEvent event) {
sendSystemMessage(new StringBuilder(event.getMessage()));