package org.limewire.friend.api; import java.util.List; import javax.swing.Icon; import org.limewire.io.UnresolvedIpPort; import org.limewire.listener.EventListener; /** * Allows the friend service user to provide configuration for friend login. */ public interface FriendConnectionConfiguration extends Network { /** * Returns true if the account should enable debugging. * (This causes a smack debug window to appear.) */ public boolean isDebugEnabled(); /** Returns the username this configuration will use, * as entered by the user; not canonicalized. */ public String getUserInputLocalID(); /** Returns the password this configuration will use. */ public String getPassword(); /** * Returns a user-friendly name for the account. * This is something like <code>Example</code> for example.com's * XMPP server. */ public String getLabel(); /** * Returns the service name that will be applied to the connection. * This is something like <code>example.com</code> for example.com's * XMPP server. */ public String getServiceName(); /** * Returns a resource identifier that uniquely identifies the connection * even if the user is signed in through multiple clients. */ public String getResource(); // FIXME: this is only used by tests public EventListener<RosterEvent> getRosterListener(); /** * A list of jabber servers to use for this configuration in the * event that RFC 3920 SRV lookup fails to find valid entries * in DNS. * @return a list of jabber servers; never null */ public List<UnresolvedIpPort> getDefaultServers(); public void setAttribute(String key, Object property); public Object getAttribute(String key); public Icon getIcon(); }