/*
* 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;
}
}