/* * Copyright 2006-2010 Daniel Henninger. All rights reserved. * * This software is published under the terms of the GNU Public License (GPL), * a copy of which is included in this distribution. */ package net.sf.kraken.protocols.simple; import javax.sip.Dialog; import net.sf.kraken.pseudoroster.PseudoRosterItem; import net.sf.kraken.roster.TransportBuddy; import net.sf.kraken.roster.TransportBuddyManager; /** * This class represents a roster item of SIP transport. * @author Patrick Siu * @author Daniel Henninger */ public class SimpleBuddy extends TransportBuddy { private SimplePresence presence; private Dialog outgoingDialog; public PseudoRosterItem pseudoRosterItem = null; public SimpleBuddy(TransportBuddyManager<SimpleBuddy> manager, String username, PseudoRosterItem rosterItem) { super(manager, username, null, null); pseudoRosterItem = rosterItem; this.setNickname(rosterItem.getNickname()); this.setGroups(rosterItem.getGroups()); presence = new SimplePresence(); presence.setTupleStatus(SimplePresence.TupleStatus.CLOSED); outgoingDialog = null; } public void updatePresence(String newPresence) throws Exception { presence.parse(newPresence); } public void setOutgoingDialog(Dialog outgoingDialog) { this.outgoingDialog = outgoingDialog; } public Dialog getOutgoingDialog() { return outgoingDialog; } }