Commits into trunk the changes of r5345, r5346 and r5352 which fix warnings in branches/1.0.

cusax-fix
Lyubomir Marinov 17 years ago
parent 8f4466385c
commit 3563fa97f6

@ -30,19 +30,6 @@ public class OperationSetPersistentPresenceDictImpl
private static final Logger logger =
Logger.getLogger(OperationSetPersistentPresenceDictImpl.class);
/**
* A list of listeners registered for <tt>ServerStoredGroupChangeEvent</tt>s.
*/
private Vector<ServerStoredGroupListener> serverStoredGroupListeners =
new Vector<ServerStoredGroupListener>();
/**
* A list of listeners registered for
* <tt>ProviderPresenceStatusChangeEvent</tt>s.
*/
private Vector<ProviderPresenceStatusListener> providerPresenceStatusListeners =
new Vector<ProviderPresenceStatusListener>();
/**
* The root of the dict contact list.
*/
@ -82,102 +69,6 @@ public OperationSetPersistentPresenceDictImpl(
new UnregistrationListener());
}
/**
* Notifies all registered listeners of the new event.
*
* @param source the contact that has caused the event.
* @param eventID an identifier of the event to dispatch.
*/
public void fireServerStoredGroupEvent(ContactGroupDictImpl source,
int eventID)
{
ServerStoredGroupEvent evt = new ServerStoredGroupEvent(
source, eventID, source.getParentContactGroup()
, this.parentProvider, this);
Iterator<ServerStoredGroupListener> listeners = null;
synchronized (serverStoredGroupListeners)
{
listeners = new ArrayList<ServerStoredGroupListener>(serverStoredGroupListeners).iterator();
}
while (listeners.hasNext())
{
ServerStoredGroupListener listener = listeners.next();
if(eventID == ServerStoredGroupEvent.GROUP_CREATED_EVENT)
{
listener.groupCreated(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_RENAMED_EVENT)
{
listener.groupNameChanged(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_REMOVED_EVENT)
{
listener.groupRemoved(evt);
}
}
}
/**
* Notifies all registered listeners of the new event.
*
* @param oldValue the presence status we were in before the change.
*/
public void fireProviderStatusChangeEvent(PresenceStatus oldValue)
{
ProviderPresenceStatusChangeEvent evt
= new ProviderPresenceStatusChangeEvent(this.parentProvider,
oldValue, this.getPresenceStatus());
Iterator<ProviderPresenceStatusListener> listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList<ProviderPresenceStatusListener>(providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener = listeners.next();
listener.providerStatusChanged(evt);
}
}
/**
* Dict implementation of the corresponding ProtocolProviderService
* method.
*
* @param listener a dummy param.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
if (!providerPresenceStatusListeners.contains(listener))
this.providerPresenceStatusListeners.add(listener);
}
}
/**
* Registers a listener that would receive events upon changes in server
* stored groups.
*
* @param listener a ServerStoredGroupChangeListener impl that would
* receive events upong group changes.
*/
public void addServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(serverStoredGroupListeners)
{
if (!serverStoredGroupListeners.contains(listener))
serverStoredGroupListeners.add(listener);
}
}
/**
* Creates a group with the specified name and parent in the server
* stored contact list.
@ -500,21 +391,6 @@ private void changePresenceStatusForAllContacts(ContactGroup parent,
}
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
*
* @param listener ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
this.providerPresenceStatusListeners.remove(listener);
}
}
/**
* Returns the group that is parent of the specified dictGroup or null
* if no parent was found.
@ -571,22 +447,6 @@ public void removeServerStoredContactGroup(ContactGroup group)
dictGroup, ServerStoredGroupEvent.GROUP_REMOVED_EVENT);
}
/**
* Removes the specified group change listener so that it won't receive
* any further events.
*
* @param listener the ServerStoredGroupChangeListener to remove
*/
public void removeServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(serverStoredGroupListeners)
{
serverStoredGroupListeners.remove(listener);
}
}
/**
* Renames the specified group from the server stored contact list.
*

@ -29,17 +29,6 @@ public class OperationSetPersistentPresenceGibberishImpl
private static final Logger logger =
Logger.getLogger(OperationSetPersistentPresenceGibberishImpl.class);
/**
* A list of listeners registered for <tt>ServerStoredGroupChangeEvent</tt>s.
*/
private Vector serverStoredGroupListeners = new Vector();
/**
* A list of listeners registered for
* <tt>ProviderPresenceStatusChangeEvent</tt>s.
*/
private Vector providerPresenceStatusListeners = new Vector();
/**
* The root of the gibberish contact list.
*/
@ -79,104 +68,6 @@ public OperationSetPersistentPresenceGibberishImpl(
new UnregistrationListener());
}
/**
* Notifies all registered listeners of the new event.
*
* @param source the contact that has caused the event.
* @param eventID an identifier of the event to dispatch.
*/
public void fireServerStoredGroupEvent(ContactGroupGibberishImpl source,
int eventID)
{
ServerStoredGroupEvent evt = new ServerStoredGroupEvent(
source, eventID, (ContactGroupGibberishImpl)source.getParentContactGroup()
, this.parentProvider, this);
Iterator listeners = null;
synchronized (serverStoredGroupListeners)
{
listeners = new ArrayList(serverStoredGroupListeners).iterator();
}
while (listeners.hasNext())
{
ServerStoredGroupListener listener
= (ServerStoredGroupListener) listeners.next();
if(eventID == ServerStoredGroupEvent.GROUP_CREATED_EVENT)
{
listener.groupCreated(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_RENAMED_EVENT)
{
listener.groupNameChanged(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_REMOVED_EVENT)
{
listener.groupRemoved(evt);
}
}
}
/**
* Notifies all registered listeners of the new event.
*
* @param oldValue the presence status we were in before the change.
*/
public void fireProviderStatusChangeEvent(PresenceStatus oldValue)
{
ProviderPresenceStatusChangeEvent evt
= new ProviderPresenceStatusChangeEvent(this.parentProvider,
oldValue, this.getPresenceStatus());
Iterator listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList(providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener
= (ProviderPresenceStatusListener) listeners.next();
listener.providerStatusChanged(evt);
}
}
/**
* Gibberish implementation of the corresponding ProtocolProviderService
* method.
*
* @param listener a dummy param.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
if (!providerPresenceStatusListeners.contains(listener))
this.providerPresenceStatusListeners.add(listener);
}
}
/**
* Registers a listener that would receive events upon changes in server
* stored groups.
*
* @param listener a ServerStoredGroupChangeListener impl that would
* receive events upong group changes.
*/
public void addServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(serverStoredGroupListeners)
{
if (!serverStoredGroupListeners.contains(listener))
serverStoredGroupListeners.add(listener);
}
}
/**
* Creates a group with the specified name and parent in the server
* stored contact list.
@ -499,21 +390,6 @@ private void changePresenceStatusForAllContacts(ContactGroup parent,
}
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
*
* @param listener ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
this.providerPresenceStatusListeners.remove(listener);
}
}
/**
* Returns the group that is parent of the specified gibberishGroup or null
* if no parent was found.
@ -570,22 +446,6 @@ public void removeServerStoredContactGroup(ContactGroup group)
gibberishGroup, ServerStoredGroupEvent.GROUP_REMOVED_EVENT);
}
/**
* Removes the specified group change listener so that it won't receive
* any further events.
*
* @param listener the ServerStoredGroupChangeListener to remove
*/
public void removeServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(serverStoredGroupListeners)
{
serverStoredGroupListeners.remove(listener);
}
}
/**
* Renames the specified group from the server stored contact list.
*

@ -24,9 +24,9 @@
import net.kano.joustsim.oscar.*;
import net.kano.joustsim.oscar.oscar.service.bos.*;
import net.kano.joustsim.oscar.oscar.service.buddy.*;
import net.kano.joustsim.oscar.oscar.service.icon.*;
import net.kano.joustsim.oscar.oscar.service.info.*;
import net.kano.joustsim.oscar.oscar.service.ssi.*;
import net.kano.joustsim.oscar.oscar.service.icon.*;
import net.kano.joustsim.trust.*;
/**
@ -43,18 +43,6 @@ public class OperationSetPersistentPresenceIcqImpl
private static final Logger logger =
Logger.getLogger(OperationSetPersistentPresenceIcqImpl.class);
/**
* The list of listeners interested in receiving changes in our local
* presencestatus.
*/
private Vector providerPresenceStatusListeners = new Vector();
/**
* Listeners notified upon changes occurring with server stored contact
* groups.
*/
private Vector serverStoredGroupChangeListeners = new Vector();
/**
* This one should actually be in joscar. But since it isn't we might as
* well define it here.
@ -974,35 +962,6 @@ private void assertConnected() throws IllegalStateException
+"being able to communicate.");
}
/**
* Adds a listener that would receive events upon changes of the provider
* presence status.
* @param listener the listener to register for changes in our PresenceStatus.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
if(!providerPresenceStatusListeners.contains(listener))
providerPresenceStatusListeners.add(listener);
}
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
* @param listener ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
providerPresenceStatusListeners.remove(listener);
}
}
/**
* Returns the root group of the server stored contact list. Most often this
* would be a dummy group that user interface implementations may better not
@ -1040,75 +999,23 @@ public void removeServerStoredGroupChangeListener(
/**
* Notify all provider presence listeners of the corresponding event change
* @param oldStatusL the status our icq stack had so far
* @param newStatusL the status we have from now on
*
* @param oldStatusL
* the status our icq stack had so far
* @param newStatusL
* the status we have from now on
*/
void fireProviderPresenceStatusChangeEvent(
long oldStatusL, long newStatusL)
void fireProviderPresenceStatusChangeEvent(long oldStatusL, long newStatusL)
{
PresenceStatus oldStatus = statusLongToPresenceStatus(oldStatusL);
PresenceStatus newStatus = statusLongToPresenceStatus(newStatusL);
if(oldStatus.equals(newStatus)){
logger.debug("Ignored prov stat. change evt. old==new = "
+ oldStatus);
return;
}
ProviderPresenceStatusChangeEvent evt =
new ProviderPresenceStatusChangeEvent(
parentProvider, oldStatus, newStatus);
logger.debug("Dispatching Provider Status Change. Listeners="
+ providerPresenceStatusListeners.size()
+ " evt=" + evt);
Iterator listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList(providerPresenceStatusListeners)
.iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener
= (ProviderPresenceStatusListener) listeners.next();
listener.providerStatusChanged(evt);
}
}
/**
* Notify all provider presence listeners that a new status message has
* been set.
* @param oldStatusMessage the status message our icq stack had so far
* @param newStatusMessage the status message we have from now on
*/
private void fireProviderStatusMessageChangeEvent(
String oldStatusMessage, String newStatusMessage)
{
PropertyChangeEvent evt = new PropertyChangeEvent(
parentProvider, ProviderPresenceStatusListener.STATUS_MESSAGE,
oldStatusMessage, newStatusMessage);
logger.debug("Dispatching stat. msg change. Listeners="
+ providerPresenceStatusListeners.size()
+ " evt=" + evt);
Iterator listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList(providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener
= (ProviderPresenceStatusListener) listeners.next();
listener.providerStatusMessageChanged(evt);
}
if (oldStatus.equals(newStatus))
logger.debug(
"Ignored prov stat. change evt. old==new = "
+ oldStatus);
else
fireProviderStatusChangeEvent(oldStatus, newStatus);
}
/**

@ -56,10 +56,12 @@ public class OperationSetBasicInstantMessagingJabberImpl
* The timer executing tasks on specified intervals
*/
private Timer keepAliveTimer = new Timer();
/**
* The queue holding the received packets
*/
private LinkedList receivedKeepAlivePackets = new LinkedList();
private final LinkedList<KeepAliveEvent> receivedKeepAlivePackets
= new LinkedList<KeepAliveEvent>();
private int failedKeepalivePackets = 0;
@ -523,8 +525,7 @@ public void run()
boolean checkFirstPacket()
throws NoSuchElementException
{
KeepAliveEvent receivedEvent =
(KeepAliveEvent)receivedKeepAlivePackets.removeLast();
KeepAliveEvent receivedEvent = receivedKeepAlivePackets.removeLast();
if(jabberProvider.hashCode() != receivedEvent.getSrcProviderHash() ||
OperationSetBasicInstantMessagingJabberImpl.this.hashCode() !=
@ -546,8 +547,9 @@ void fireUnregisterd()
RegistrationState.CONNECTION_FAILED,
RegistrationStateChangeEvent.REASON_INTERNAL_ERROR, null);
opSetPersPresence.fireProviderPresenceStatusChangeEvent(
opSetPersPresence.getPresenceStatus(), jabberProvider
opSetPersPresence.fireProviderStatusChangeEvent(
opSetPersPresence.getPresenceStatus(),
jabberProvider
.getJabberStatusEnum().getStatus(JabberStatusEnum.OFFLINE));
}
}

@ -6,20 +6,19 @@
*/
package net.java.sip.communicator.impl.protocol.jabber;
import java.beans.PropertyChangeEvent;
import java.util.*;
import org.jivesoftware.smack.*;
import org.jivesoftware.smack.filter.*;
import org.jivesoftware.smack.packet.*;
import org.jivesoftware.smack.util.*;
import net.java.sip.communicator.impl.protocol.jabber.extensions.version.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.service.protocol.event.*;
import net.java.sip.communicator.service.protocol.jabberconstants.*;
import net.java.sip.communicator.util.*;
import org.jivesoftware.smack.*;
import org.jivesoftware.smack.filter.*;
import org.jivesoftware.smack.packet.*;
import org.jivesoftware.smack.util.*;
/**
* The Jabber implementation of a Persistent Presence Operation set. This class
* manages our own presence status as well as subscriptions for the presence
@ -49,14 +48,6 @@ public class OperationSetPersistentPresenceJabberImpl
*/
private PresenceStatus currentStatus;
/**
* The list of listeners interested in receiving changes in our local
* presencestatus.
*/
private Vector<ProviderPresenceStatusListener>
providerPresenceStatusListeners
= new Vector<ProviderPresenceStatusListener>();
/**
* A map containing bindings between SIP Communicator's jabber presence status
* instances and Jabber status codes
@ -99,21 +90,6 @@ public OperationSetPersistentPresenceJabberImpl(
new RegistrationStateListener());
}
/**
* Adds a listener that would receive events upon changes of the provider
* presence status.
*
* @param listener the listener to register for changes in our
* PresenceStatus.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners){
providerPresenceStatusListeners.add(listener);
}
}
/**
* Registers a listener that would receive events upong changes in server
* stored groups.
@ -371,15 +347,13 @@ public void publishPresenceStatus(PresenceStatus status,
throw new IllegalArgumentException(status
+ " is not a valid Jabber status");
Presence presence = null;
if (status.equals(jabberStatusEnum.getStatus(JabberStatusEnum.OFFLINE)))
{
presence = new Presence(Presence.Type.unavailable);
parentProvider.unregister();
}
else
{
presence = new Presence(Presence.Type.available);
Presence presence = new Presence(Presence.Type.available);
presence.setMode(presenceStatusToJabberMode(status));
presence.setPriority(resourcePriority);
presence.setStatus(statusMessage);
@ -388,7 +362,7 @@ public void publishPresenceStatus(PresenceStatus status,
parentProvider.getConnection().sendPacket(presence);
}
fireProviderPresenceStatusChangeEvent(currentStatus, status);
fireProviderStatusChangeEvent(currentStatus, status);
if(!getCurrentStatusMessage().equals(statusMessage))
{
@ -428,20 +402,6 @@ public PresenceStatus queryContactStatus(String contactIdentifier) throws
JabberStatusEnum.OFFLINE);
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
*
* @param listener ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners){
providerPresenceStatusListeners.remove(listener);
}
}
/**
* Removes the specified group from the server stored contact list.
*
@ -669,77 +629,15 @@ private void assertConnected() throws IllegalStateException
+"being able to communicate.");
}
/**
* Notify all provider presence listeners of the corresponding event change
* @param oldStatus the status our stack had so far
* @param newStatus the status we have from now on
*/
void fireProviderPresenceStatusChangeEvent(
PresenceStatus oldStatus, PresenceStatus newStatus)
{
if(oldStatus.equals(newStatus)){
logger.debug("Ignored prov stat. change evt. old==new = "
+ oldStatus);
return;
}
ProviderPresenceStatusChangeEvent evt =
new ProviderPresenceStatusChangeEvent(
parentProvider, oldStatus, newStatus);
currentStatus = newStatus;
logger.debug("Dispatching Provider Status Change. Listeners="
+ providerPresenceStatusListeners.size()
+ " evt=" + evt);
Iterator<ProviderPresenceStatusListener> listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList<ProviderPresenceStatusListener>(
providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener = listeners.next();
listener.providerStatusChanged(evt);
}
}
/**
* Notify all provider presence listeners that a new status message has
* been set.
* @param oldStatusMessage the status message our stack had so far
* @param newStatusMessage the status message we have from now on
*/
private void fireProviderStatusMessageChangeEvent(
String oldStatusMessage, String newStatusMessage)
public void fireProviderStatusChangeEvent(
PresenceStatus oldStatus,
PresenceStatus newStatus)
{
PropertyChangeEvent evt = new PropertyChangeEvent(
parentProvider, ProviderPresenceStatusListener.STATUS_MESSAGE,
oldStatusMessage, newStatusMessage);
logger.debug("Dispatching stat. msg change. Listeners="
+ providerPresenceStatusListeners.size()
+ " evt=" + evt);
Iterator<ProviderPresenceStatusListener> listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList<ProviderPresenceStatusListener>(
providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
if (!oldStatus.equals(newStatus))
{
ProviderPresenceStatusListener listener =
(ProviderPresenceStatusListener) listeners.next();
currentStatus = newStatus;
listener.providerStatusMessageChanged(evt);
super.fireProviderStatusChangeEvent(oldStatus, newStatus);
}
}
@ -768,9 +666,11 @@ public void registrationStateChanged(RegistrationStateChangeEvent evt)
parentProvider.getConnection().getRoster().addRosterListener(
new ContactChangesListener());
fireProviderPresenceStatusChangeEvent(currentStatus,
parentProvider.getJabberStatusEnum().getStatus(
JabberStatusEnum.AVAILABLE));
fireProviderStatusChangeEvent(
currentStatus,
parentProvider
.getJabberStatusEnum()
.getStatus(JabberStatusEnum.AVAILABLE));
// init ssList
ssContactList.init();
@ -789,8 +689,7 @@ else if(evt.getNewState() == RegistrationState.UNREGISTERED
JabberStatusEnum.OFFLINE);
currentStatus = offlineStatus;
fireProviderPresenceStatusChangeEvent(oldStatus,
currentStatus);
fireProviderStatusChangeEvent(oldStatus, currentStatus);
//send event notifications saying that all our buddies are
//offline. The protocol does not implement top level buddies

@ -719,9 +719,9 @@ public void connectionClosed()
OperationSetPersistentPresenceJabberImpl opSetPersPresence =
(OperationSetPersistentPresenceJabberImpl) getOperationSet(OperationSetPersistentPresence.class);
opSetPersPresence.fireProviderPresenceStatusChangeEvent(
opSetPersPresence.getPresenceStatus(), getJabberStatusEnum()
.getStatus(JabberStatusEnum.OFFLINE));
opSetPersPresence.fireProviderStatusChangeEvent(
opSetPersPresence.getPresenceStatus(),
getJabberStatusEnum().getStatus(JabberStatusEnum.OFFLINE));
}
/**

@ -20,17 +20,6 @@ public class MockPersistentPresenceOperationSet
extends AbstractOperationSetPersistentPresence<MockProvider>
{
/**
* A list of listeners registered for <tt>ServerStoredGroupChangeEvent</tt>s.
*/
private Vector serverStoredGroupListeners = new Vector();
/**
* A list of listeners registered for
* <tt>ProviderPresenceStatusChangeEvent</tt>s.
*/
private Vector providerPresenceStatusListeners = new Vector();
/**
* The root of the mock contact list.
*/
@ -53,103 +42,6 @@ public MockPersistentPresenceOperationSet(MockProvider provider)
contactListRoot = new MockContactGroup("RootMockGroup", provider);
}
/**
* Notifies all registered listeners of the new event.
*
* @param source the contact that has caused the event.
* @param eventID an identifier of the event to dispatch.
*/
public void fireServerStoredGroupEvent(MockContactGroup source,
int eventID)
{
ServerStoredGroupEvent evt = new ServerStoredGroupEvent(
source, eventID, (MockContactGroup)source.getParentContactGroup()
, this.parentProvider, this);
Iterator listeners = null;
synchronized (serverStoredGroupListeners)
{
listeners = new ArrayList(serverStoredGroupListeners).iterator();
}
while (listeners.hasNext())
{
ServerStoredGroupListener listener
= (ServerStoredGroupListener) listeners.next();
if(eventID == ServerStoredGroupEvent.GROUP_CREATED_EVENT)
{
listener.groupCreated(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_RENAMED_EVENT)
{
listener.groupNameChanged(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_REMOVED_EVENT)
{
listener.groupRemoved(evt);
}
}
}
/**
* Notifies all registered listeners of the new event.
*
* @param oldValue the presence status we were in before the change.
*/
public void fireProviderStatusChangeEvent(PresenceStatus oldValue)
{
ProviderPresenceStatusChangeEvent evt
= new ProviderPresenceStatusChangeEvent(this.parentProvider,
oldValue, this.getPresenceStatus());
Iterator listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList(providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener
= (ProviderPresenceStatusListener) listeners.next();
listener.providerStatusChanged(evt);
}
}
/**
* Mock implementation of the corresponding ProtocolProviderService method.
*
* @param listener a dummy param.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
if (!providerPresenceStatusListeners.contains(listener))
this.providerPresenceStatusListeners.add(listener);
}
}
/**
* Registers a listener that would receive events upon changes in server
* stored groups.
*
* @param listener a ServerStoredGroupChangeListener impl that would
* receive events upong group changes.
*/
public void addServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(serverStoredGroupListeners)
{
if (!serverStoredGroupListeners.contains(listener))
serverStoredGroupListeners.add(listener);
}
}
/**
* Creates a group with the specified name and parent in the server
* stored contact list.
@ -365,21 +257,6 @@ public void changePresenceStatusForContact(MockContact contact
contact, findContactParent(contact), oldStatus);
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
*
* @param listener ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
this.providerPresenceStatusListeners.remove(listener);
}
}
/**
* Returns the group that is parent of the specified mockGroup or null
* if no parent was found.
@ -432,22 +309,6 @@ public void removeServerStoredContactGroup(ContactGroup group)
mockGroup, ServerStoredGroupEvent.GROUP_REMOVED_EVENT);
}
/**
* Removes the specified group change listener so that it won't receive
* any further events.
*
* @param listener the ServerStoredGroupChangeListener to remove
*/
public void removeServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(serverStoredGroupListeners)
{
serverStoredGroupListeners.remove(listener);
}
}
/**
* Renames the specified group from the server stored contact list.
*

@ -6,7 +6,6 @@
*/
package net.java.sip.communicator.impl.protocol.msn;
import java.beans.PropertyChangeEvent;
import java.util.*;
import net.java.sip.communicator.service.protocol.*;
@ -43,14 +42,6 @@ public class OperationSetPersistentPresenceMsnImpl
*/
private PresenceStatus currentStatus = MsnStatusEnum.OFFLINE;
/**
* The list of listeners interested in receiving changes in our local
* presence status.
*/
private Vector<ProviderPresenceStatusListener>
providerPresenceStatusListeners
= new Vector<ProviderPresenceStatusListener>();
/**
* Sometimes status changes are received before the contact list is inited
* here we store such events so we can show them correctly
@ -122,21 +113,6 @@ public OperationSetPersistentPresenceMsnImpl(
new RegistrationStateListener());
}
/**
* Adds a listener that would receive events upon changes of the provider
* presence status.
*
* @param listener the listener to register for changes in our
* PresenceStatus.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners){
providerPresenceStatusListeners.add(listener);
}
}
/**
* Registers a listener that would receive events upon changes in server
* stored groups.
@ -427,20 +403,6 @@ public PresenceStatus queryContactStatus(String contactIdentifier) throws
return msnStatusToPresenceStatus(contact.getSourceContact().getStatus());
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
*
* @param listener ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners){
providerPresenceStatusListeners.remove(listener);
}
}
/**
* Removes the specified group from the server stored contact list.
*
@ -638,74 +600,20 @@ private void assertConnected() throws IllegalStateException
/**
* Notify all provider presence listeners of the corresponding event change
* @param oldStatus the status our stack had so far
* @param newStatus the status we have from now on
*/
void fireProviderPresenceStatusChangeEvent(
PresenceStatus oldStatus, PresenceStatus newStatus)
{
if(oldStatus.equals(newStatus)){
logger.debug("Ignored prov stat. change evt. old==new = "
+ oldStatus);
return;
}
ProviderPresenceStatusChangeEvent evt =
new ProviderPresenceStatusChangeEvent(
parentProvider, oldStatus, newStatus);
currentStatus = newStatus;
logger.debug("Dispatching Provider Status Change. Listeners="
+ providerPresenceStatusListeners.size()
+ " evt=" + evt);
Iterator<ProviderPresenceStatusListener> listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList<ProviderPresenceStatusListener>(
providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener = listeners.next();
listener.providerStatusChanged(evt);
}
}
/**
* Notify all provider presence listeners that a new status message has
* been set.
* @param oldStatusMessage the status message our stack had so far
* @param newStatusMessage the status message we have from now on
*
* @param oldStatus
* the status our stack had so far
* @param newStatus
* the status we have from now on
*/
private void fireProviderStatusMessageChangeEvent(
String oldStatusMessage, String newStatusMessage)
protected void fireProviderStatusChangeEvent(
PresenceStatus oldStatus,
PresenceStatus newStatus)
{
if (!oldStatus.equals(newStatus)) {
currentStatus = newStatus;
PropertyChangeEvent evt = new PropertyChangeEvent(
parentProvider, ProviderPresenceStatusListener.STATUS_MESSAGE,
oldStatusMessage, newStatusMessage);
logger.debug("Dispatching stat. msg change. Listeners="
+ providerPresenceStatusListeners.size()
+ " evt=" + evt);
Iterator<ProviderPresenceStatusListener> listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList<ProviderPresenceStatusListener>(
providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener = listeners.next();
listener.providerStatusMessageChanged(evt);
super.fireProviderStatusChangeEvent(oldStatus, newStatus);
}
}
@ -745,8 +653,7 @@ else if(evt.getNewState() == RegistrationState.UNREGISTERED
PresenceStatus oldStatus = currentStatus;
currentStatus = MsnStatusEnum.OFFLINE;
fireProviderPresenceStatusChangeEvent(oldStatus,
currentStatus);
fireProviderStatusChangeEvent(oldStatus, currentStatus);
//send event notifications saying that all our buddies are
//offline.
@ -873,7 +780,7 @@ public void ownerStatusChanged(MsnMessenger messenger)
PresenceStatus oldStatus = currentStatus;
currentStatus =
msnStatusToPresenceStatus(messenger.getOwner().getStatus());
fireProviderPresenceStatusChangeEvent(oldStatus, currentStatus);
fireProviderStatusChangeEvent(oldStatus, currentStatus);
}
/**

@ -30,17 +30,6 @@ public class OperationSetPersistentPresenceRssImpl
private static final Logger logger =
Logger.getLogger(OperationSetPersistentPresenceRssImpl.class);
/**
* A list of listeners registered for <tt>ServerStoredGroupChangeEvent</tt>s.
*/
private Vector serverStoredGroupListeners = new Vector();
/**
* A list of listeners registered for
* <tt>ProviderPresenceStatusChangeEvent</tt>s.
*/
private Vector providerPresenceStatusListeners = new Vector();
/**
* The root of the RSS contact list.
*/
@ -89,102 +78,14 @@ public OperationSetPersistentPresenceRssImpl(
imageRetriever.start();
}
/**
* Notifies all registered listeners of the new event.
*
* @param source the contact that has caused the event.
* @param eventID an identifier of the event to dispatch.
*/
public void fireServerStoredGroupEvent(ContactGroupRssImpl source,
int eventID)
{
ServerStoredGroupEvent evt = new ServerStoredGroupEvent(
source, eventID, (ContactGroupRssImpl)source.getParentContactGroup()
, this.parentProvider, this);
Iterator listeners = null;
synchronized (serverStoredGroupListeners)
{
listeners = new ArrayList(serverStoredGroupListeners).iterator();
}
while (listeners.hasNext())
{
ServerStoredGroupListener listener
= (ServerStoredGroupListener) listeners.next();
if(eventID == ServerStoredGroupEvent.GROUP_CREATED_EVENT)
{
listener.groupCreated(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_RENAMED_EVENT)
{
listener.groupNameChanged(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_REMOVED_EVENT)
{
listener.groupRemoved(evt);
}
}
}
/**
* Notifies all registered listeners of the new event.
*
* @param oldValue the presence status we were in before the change.
/*
* Overrides
* AbstractOperationSetPersistentPresence#fireProviderStatusChangeEvent
* (PresenceStatus) to stop the firing of an event.
*/
public void fireProviderStatusChangeEvent(PresenceStatus oldValue)
protected void fireProviderStatusChangeEvent(PresenceStatus oldValue)
{
ProviderPresenceStatusChangeEvent evt
= new ProviderPresenceStatusChangeEvent(this.parentProvider,
oldValue, this.getPresenceStatus());
Iterator listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList(providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener
= (ProviderPresenceStatusListener) listeners.next();
//listener.providerStatusChanged(evt);
}
}
/**
* RSS implementation of the corresponding ProtocolProviderService
* method.
*
* @param listener a dummy parameter.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
if (!providerPresenceStatusListeners.contains(listener))
this.providerPresenceStatusListeners.add(listener);
}
}
/**
* Registers a listener that would receive events upon changes in server
* stored groups.
*
* @param listener a ServerStoredGroupChangeListener implementation that
* would receive events upon group changes.
*/
public void addServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(serverStoredGroupListeners)
{
if (!serverStoredGroupListeners.contains(listener))
serverStoredGroupListeners.add(listener);
}
// Override the super implementation and stop the firing of an event.
}
/**
@ -493,21 +394,6 @@ private void changePresenceStatusForAllContacts(ContactGroup parent,
}
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
*
* @param listener ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
this.providerPresenceStatusListeners.remove(listener);
}
}
/**
* Returns the group that is parent of the specified rssGroup or null
* if no parent was found.
@ -560,22 +446,6 @@ public void removeServerStoredContactGroup(ContactGroup group)
rssGroup, ServerStoredGroupEvent.GROUP_REMOVED_EVENT);
}
/**
* Removes the specified group change listener so that it won't receive
* any further events.
*
* @param listener the ServerStoredGroupChangeListener to remove
*/
public void removeServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(serverStoredGroupListeners)
{
serverStoredGroupListeners.remove(listener);
}
}
/**
* Renames the specified group from the server stored contact list.
*

@ -7,12 +7,13 @@
package net.java.sip.communicator.impl.protocol.sip;
import java.util.*;
import javax.sip.*;
import net.java.sip.communicator.service.media.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.service.protocol.event.*;
import net.java.sip.communicator.util.*;
import net.java.sip.communicator.service.media.*;
/**
* A SIP implementation of the Call abstract class encapsulating SIP dialogs.
@ -28,7 +29,7 @@ public class CallSipImpl
/**
* A list containing all <tt>CallParticipant</tt>s of this call.
*/
private Vector<CallParticipantSipImpl> callParticipants =
private final List<CallParticipantSipImpl> callParticipants =
new Vector<CallParticipantSipImpl>();
/**
@ -212,7 +213,7 @@ public boolean contains(Dialog dialog)
*/
public CallParticipantSipImpl findCallParticipant(Dialog dialog)
{
Iterator callParticipants = this.getCallParticipants();
Iterator<CallParticipant> callParticipants = this.getCallParticipants();
if (logger.isTraceEnabled())
{

@ -1503,7 +1503,7 @@ private Header stripReplacesHeader(Address address)
if (replacesHeaderValue != null)
{
for (Iterator<String> headerNameIter = sipURI.getHeaderNames();
for (Iterator<?> headerNameIter = sipURI.getHeaderNames();
headerNameIter.hasNext();)
{
if (ReplacesHeader.NAME.equals(headerNameIter.next()))

@ -6,7 +6,6 @@
*/
package net.java.sip.communicator.impl.protocol.sip;
import java.beans.PropertyChangeEvent;
import java.io.*;
import java.text.*;
import java.util.*;
@ -43,21 +42,6 @@ public class OperationSetPresenceSipImpl
private static final Logger logger =
Logger.getLogger(OperationSetPresenceSipImpl.class);
/**
* A list of listeners registered for
* <tt>ProviderPresenceStatusChangeEvent</tt>s.
*/
private Vector<ProviderPresenceStatusListener>
providerPresenceStatusListeners
= new Vector<ProviderPresenceStatusListener>();
/**
* A list of listeners registered for
* <tt>ServerStoredGroupChangeEvent</tt>s.
*/
private Vector<ServerStoredGroupListener> serverStoredGroupListeners
= new Vector<ServerStoredGroupListener>();
/**
* The root of the SIP contact list.
*/
@ -321,46 +305,6 @@ public void setDistantPA(boolean useDistPA)
this.useDistantPA = useDistPA;
}
/**
* Notifies all registered listeners of the new event.
*
* @param source the contact that has caused the event.
* @param eventID an identifier of the event to dispatch.
*/
public void fireServerStoredGroupEvent(ContactGroupSipImpl source,
int eventID)
{
ServerStoredGroupEvent evt = new ServerStoredGroupEvent(
source, eventID, source.getParentContactGroup(),
this.parentProvider, this);
Iterator listeners = null;
synchronized (this.serverStoredGroupListeners)
{
listeners = new ArrayList(this.serverStoredGroupListeners)
.iterator();
}
while (listeners.hasNext())
{
ServerStoredGroupListener listener
= (ServerStoredGroupListener) listeners.next();
if(eventID == ServerStoredGroupEvent.GROUP_CREATED_EVENT)
{
listener.groupCreated(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_RENAMED_EVENT)
{
listener.groupNameChanged(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_REMOVED_EVENT)
{
listener.groupRemoved(evt);
}
}
}
/**
* Returns the root group of the server stored contact list.
*
@ -671,38 +615,6 @@ public void publishPresenceStatus(PresenceStatus status,
this.fireProviderMsgStatusChangeEvent(oldMessage);
}
/**
* Notifies all registered listeners of the new event.
*
* @param oldValue the presence status we were in before the change.
*/
private void fireProviderStatusChangeEvent(PresenceStatus oldValue)
{
ProviderPresenceStatusChangeEvent evt
= new ProviderPresenceStatusChangeEvent(this.parentProvider,
oldValue, this.getPresenceStatus());
logger.debug("Dispatching Provider Status Change. Listeners="
+ this.providerPresenceStatusListeners.size()
+ " evt=" + evt);
Iterator listeners = null;
synchronized (this.providerPresenceStatusListeners)
{
listeners = new ArrayList(this.providerPresenceStatusListeners)
.iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener
= (ProviderPresenceStatusListener) listeners.next();
listener.providerStatusChanged(evt);
}
logger.debug("status dispatching done.");
}
/**
* Notifies all registered listeners of the new event.
*
@ -710,31 +622,7 @@ private void fireProviderStatusChangeEvent(PresenceStatus oldValue)
*/
public void fireProviderMsgStatusChangeEvent(String oldValue)
{
PropertyChangeEvent evt = new PropertyChangeEvent(
this.parentProvider,
ProviderPresenceStatusListener.STATUS_MESSAGE,
oldValue,
this.statusMessage);
logger.debug("Dispatching stat. msg change. Listeners="
+ this.providerPresenceStatusListeners.size()
+ " evt=" + evt);
Iterator<ProviderPresenceStatusListener> listeners = null;
synchronized (this.providerPresenceStatusListeners)
{
listeners = new ArrayList<ProviderPresenceStatusListener>(
this.providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener =
(ProviderPresenceStatusListener) listeners.next();
listener.providerStatusMessageChanged(evt);
}
logger.debug("status dispatching done.");
fireProviderStatusMessageChangeEvent(oldValue, this.statusMessage);
}
/**
@ -3348,70 +3236,6 @@ public void setAuthorizationHandler(AuthorizationHandler handler)
// authorizations aren't supported by this implementation
}
/**
* Adds a listener that would receive events upon changes of the provider
* presence status.
*
* @param listener the listener to register for changes in our
* PresenceStatus.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(this.providerPresenceStatusListeners)
{
if (!this.providerPresenceStatusListeners.contains(listener))
this.providerPresenceStatusListeners.add(listener);
}
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
*
* @param listener ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(this.providerPresenceStatusListeners)
{
this.providerPresenceStatusListeners.remove(listener);
}
}
/**
* Registers a listener that would receive events upon changes in server
* stored groups.
*
* @param listener a ServerStoredGroupChangeListener impl that would
* receive events upon group changes.
*/
public void addServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(this.serverStoredGroupListeners)
{
if (!this.serverStoredGroupListeners.contains(listener))
this.serverStoredGroupListeners.add(listener);
}
}
/**
* Removes the specified group change listener so that it won't receive
* any further events.
*
* @param listener the ServerStoredGroupChangeListener to remove
*/
public void removeServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(this.serverStoredGroupListeners)
{
this.serverStoredGroupListeners.remove(listener);
}
}
/**
* Returns the status message that was confirmed by the server
*

@ -33,17 +33,6 @@ public class OperationSetPersistentPresenceSSHImpl
{
private static final Logger logger =
Logger.getLogger(OperationSetPersistentPresenceSSHImpl.class);
/**
* A list of listeners registered for <tt>ServerStoredGroupChangeEvent</tt>s.
*/
private Vector serverStoredGroupListeners = new Vector();
/**
* A list of listeners registered for
* <tt>ProviderPresenceStatusChangeEvent</tt>s.
*/
private Vector providerPresenceStatusListeners = new Vector();
/**
* The root of the ssh contact list.
@ -98,109 +87,6 @@ public void changeContactPresenceStatus(
fireProviderStatusChangeEvent(oldStatus);
}
/**
* Notifies all registered listeners of the new event.
*
* @param source the contact that has caused the event.
* @param eventID an identifier of the event to dispatch.
*/
public void fireServerStoredGroupEvent(
ContactGroupSSHImpl source,
int eventID)
{
ServerStoredGroupEvent evt = new ServerStoredGroupEvent(
source,
eventID,
(ContactGroupSSHImpl)source.getParentContactGroup(),
this.parentProvider,
this);
Iterator listeners = null;
synchronized (serverStoredGroupListeners)
{
listeners = new ArrayList(serverStoredGroupListeners).iterator();
}
while (listeners.hasNext())
{
ServerStoredGroupListener listener
= (ServerStoredGroupListener) listeners.next();
if(eventID == ServerStoredGroupEvent.GROUP_CREATED_EVENT)
{
listener.groupCreated(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_RENAMED_EVENT)
{
listener.groupNameChanged(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_REMOVED_EVENT)
{
listener.groupRemoved(evt);
}
}
}
/**
* Notifies all registered listeners of the new event.
*
* @param oldValue the presence status we were in before the change.
*/
public void fireProviderStatusChangeEvent(PresenceStatus oldValue)
{
ProviderPresenceStatusChangeEvent evt
= new ProviderPresenceStatusChangeEvent(this.parentProvider,
oldValue, this.getPresenceStatus());
Iterator listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList(providerPresenceStatusListeners)
.iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener
= (ProviderPresenceStatusListener) listeners.next();
listener.providerStatusChanged(evt);
}
}
/**
* SSH implementation of the corresponding ProtocolProviderService
* method.
*
* @param listener a dummy param.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
if (!providerPresenceStatusListeners.contains(listener))
this.providerPresenceStatusListeners.add(listener);
}
}
/**
* Registers a listener that would receive events upon changes in server
* stored groups.
*
* @param listener a ServerStoredGroupChangeListener impl that would
* receive events upong group changes.
*/
public void addServerStoredGroupChangeListener(
ServerStoredGroupListener listener)
{
synchronized(serverStoredGroupListeners)
{
if (!serverStoredGroupListeners.contains(listener))
serverStoredGroupListeners.add(listener);
}
}
/**
* Creates a group with the specified name and parent in the server
* stored contact list.
@ -527,21 +413,6 @@ private void changePresenceStatusForAllContacts(
}
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
*
* @param listener ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
this.providerPresenceStatusListeners.remove(listener);
}
}
/**
* Returns the group that is parent of the specified sshGroup or null
* if no parent was found.
@ -599,22 +470,6 @@ public void removeServerStoredContactGroup(ContactGroup group)
this.fireServerStoredGroupEvent(
sshGroup, ServerStoredGroupEvent.GROUP_REMOVED_EVENT);
}
/**
* Removes the specified group change listener so that it won't receive
* any further events.
*
* @param listener the ServerStoredGroupChangeListener to remove
*/
public void removeServerStoredGroupChangeListener(
ServerStoredGroupListener listener)
{
synchronized(serverStoredGroupListeners)
{
serverStoredGroupListeners.remove(listener);
}
}
/**
* Renames the specified group from the server stored contact list.

@ -6,7 +6,6 @@
*/
package net.java.sip.communicator.impl.protocol.yahoo;
import java.beans.PropertyChangeEvent;
import java.io.*;
import java.util.*;
@ -14,7 +13,6 @@
import net.java.sip.communicator.service.protocol.event.*;
import net.java.sip.communicator.service.protocol.yahooconstants.*;
import net.java.sip.communicator.util.*;
import ymsg.network.*;
import ymsg.network.event.*;
@ -45,12 +43,6 @@ public class OperationSetPersistentPresenceYahooImpl
*/
private PresenceStatus currentStatus = YahooStatusEnum.OFFLINE;
/**
* The list of listeners interested in receiving changes in our local
* presencestatus.
*/
private Vector providerPresenceStatusListeners = new Vector();
/**
* Sometimes status changes are received before the contact list is inited
* here we store such events so we can show them correctly
@ -143,21 +135,6 @@ public OperationSetPersistentPresenceYahooImpl(
new RegistrationStateListener());
}
/**
* Adds a listener that would receive events upon changes of the provider
* presence status.
*
* @param listener the listener to register for changes in our
* PresenceStatus.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners){
providerPresenceStatusListeners.add(listener);
}
}
/**
* Registers a listener that would receive events upong changes in server
* stored groups.
@ -425,7 +402,7 @@ public void publishPresenceStatus(PresenceStatus status,
parentProvider.getYahooSession().setStatus(
scToYahooModesMappings.get(status).longValue());
fireProviderPresenceStatusChangeEvent(currentStatus, status);
fireProviderStatusChangeEvent(currentStatus, status);
}
catch(IOException ex)
{
@ -464,20 +441,6 @@ public PresenceStatus queryContactStatus(String contactIdentifier) throws
return yahooStatusToPresenceStatus(contact.getSourceContact().getStatus());
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
*
* @param listener ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners){
providerPresenceStatusListeners.remove(listener);
}
}
/**
* Removes the specified group from the server stored contact list.
*
@ -687,74 +650,21 @@ private void assertConnected() throws IllegalStateException
/**
* Notify all provider presence listeners of the corresponding event change
* @param oldStatus the status our stack had so far
* @param newStatus the status we have from now on
*
* @param oldStatus
* the status our stack had so far
* @param newStatus
* the status we have from now on
*/
void fireProviderPresenceStatusChangeEvent(
PresenceStatus oldStatus, PresenceStatus newStatus)
protected void fireProviderStatusChangeEvent(
PresenceStatus oldStatus,
PresenceStatus newStatus)
{
if(oldStatus.equals(newStatus)){
logger.debug("Ignored prov stat. change evt. old==new = "
+ oldStatus);
return;
}
ProviderPresenceStatusChangeEvent evt =
new ProviderPresenceStatusChangeEvent(
parentProvider, oldStatus, newStatus);
currentStatus = newStatus;
logger.debug("Dispatching Provider Status Change. Listeners="
+ providerPresenceStatusListeners.size()
+ " evt=" + evt);
Iterator listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList(providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
if (!oldStatus.equals(newStatus))
{
ProviderPresenceStatusListener listener
= (ProviderPresenceStatusListener) listeners.next();
currentStatus = newStatus;
listener.providerStatusChanged(evt);
}
}
/**
* Notify all provider presence listeners that a new status message has
* been set.
* @param oldStatusMessage the status message our stack had so far
* @param newStatusMessage the status message we have from now on
*/
private void fireProviderStatusMessageChangeEvent(
String oldStatusMessage, String newStatusMessage)
{
PropertyChangeEvent evt = new PropertyChangeEvent(
parentProvider, ProviderPresenceStatusListener.STATUS_MESSAGE,
oldStatusMessage, newStatusMessage);
logger.debug("Dispatching stat. msg change. Listeners="
+ providerPresenceStatusListeners.size()
+ " evt=" + evt);
Iterator listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners = new ArrayList(providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener =
(ProviderPresenceStatusListener) listeners.next();
listener.providerStatusMessageChanged(evt);
super.fireProviderStatusChangeEvent(oldStatus, newStatus);
}
}
@ -837,8 +747,7 @@ else if(evt.getNewState() == RegistrationState.UNREGISTERED
PresenceStatus oldStatus = currentStatus;
currentStatus = YahooStatusEnum.OFFLINE;
fireProviderPresenceStatusChangeEvent(oldStatus,
currentStatus);
fireProviderStatusChangeEvent(oldStatus, currentStatus);
removeSubscriptionListener(statusUpdater);
@ -900,7 +809,7 @@ private void handleContactStatusChange(YahooUser yFriend)
PresenceStatus oldStatus = currentStatus;
currentStatus =
yahooStatusToPresenceStatus(yFriend.getStatus());
fireProviderPresenceStatusChangeEvent(oldStatus, currentStatus);
fireProviderStatusChangeEvent(oldStatus, currentStatus);
return;
}
@ -962,7 +871,8 @@ else if(evt.getFriends() != null)
/**
* Updates the statuses of newly created persistent contacts
*/
private class StatusUpdater implements SubscriptionListener
private class StatusUpdater
extends SubscriptionAdapter
{
public void subscriptionCreated(SubscriptionEvent evt)
{
@ -974,12 +884,6 @@ public void subscriptionCreated(SubscriptionEvent evt)
handleContactStatusChange(contact, contact.getSourceContact());
}
public void subscriptionFailed(SubscriptionEvent evt) {}
public void subscriptionRemoved(SubscriptionEvent evt) {}
public void subscriptionMoved(SubscriptionMovedEvent evt) {}
public void subscriptionResolved(SubscriptionEvent evt) {}
public void contactModified(ContactPropertyChangeEvent evt) {}
}
private class EarlyEventListener

@ -165,7 +165,7 @@ private void connectAndLogin( SecurityAuthority authority,
if(yahooSession.getSessionStatus()==StatusConstants.MESSAGING)
{
persistentPresence.fireProviderPresenceStatusChangeEvent(
persistentPresence.fireProviderStatusChangeEvent(
persistentPresence.getPresenceStatus(),
persistentPresence.yahooStatusToPresenceStatus(
yahooSession.getStatus()));

@ -32,17 +32,6 @@ public class OperationSetPersistentPresenceZeroconfImpl
private static final Logger logger =
Logger.getLogger(OperationSetPersistentPresenceZeroconfImpl.class);
/**
* A list of listeners registered for <tt>ServerStoredGroupChangeEvent</tt>s.
*/
private Vector serverStoredGroupListeners = new Vector();
/**
* A list of listeners registered for
* <tt>ProviderPresenceStatusChangeEvent</tt>s.
*/
private Vector providerPresenceStatusListeners = new Vector();
/**
* The root of the zeroconf contact list.
*/
@ -82,106 +71,6 @@ public OperationSetPersistentPresenceZeroconfImpl(
new UnregistrationListener());
}
/**
* Notifies all registered listeners of the new event.
*
* @param source the contact that has caused the event.
* @param eventID an identifier of the event to dispatch.
*/
public void fireServerStoredGroupEvent(ContactGroupZeroconfImpl source,
int eventID)
{
ServerStoredGroupEvent evt = new ServerStoredGroupEvent(
source, eventID, (ContactGroupZeroconfImpl)
source.getParentContactGroup()
, this.parentProvider, this);
Iterator listeners = null;
synchronized (serverStoredGroupListeners)
{
listeners = new ArrayList(serverStoredGroupListeners).iterator();
}
while (listeners.hasNext())
{
ServerStoredGroupListener listener
= (ServerStoredGroupListener) listeners.next();
if(eventID == ServerStoredGroupEvent.GROUP_CREATED_EVENT)
{
listener.groupCreated(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_RENAMED_EVENT)
{
listener.groupNameChanged(evt);
}
else if(eventID == ServerStoredGroupEvent.GROUP_REMOVED_EVENT)
{
listener.groupRemoved(evt);
}
}
}
/**
* Notifies all registered listeners of the new event.
*
* @param oldValue the presence status we were in before the change.
*/
public void fireProviderStatusChangeEvent(PresenceStatus oldValue)
{
ProviderPresenceStatusChangeEvent evt
= new ProviderPresenceStatusChangeEvent(this.parentProvider,
oldValue, this.getPresenceStatus());
Iterator listeners = null;
synchronized (providerPresenceStatusListeners)
{
listeners =
new ArrayList(providerPresenceStatusListeners).iterator();
}
while (listeners.hasNext())
{
ProviderPresenceStatusListener listener
= (ProviderPresenceStatusListener) listeners.next();
listener.providerStatusChanged(evt);
}
}
/**
* Zeroconf implementation of the corresponding ProtocolProviderService
* method.
*
* @param listener a dummy param.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
if (!providerPresenceStatusListeners.contains(listener))
this.providerPresenceStatusListeners.add(listener);
}
}
/**
* Registers a listener that would receive events upon changes in server
* stored groups.
*
* @param listener a ServerStoredGroupChangeListener impl that would
* receive events upong group changes.
*/
public void addServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(serverStoredGroupListeners)
{
if (!serverStoredGroupListeners.contains(listener))
serverStoredGroupListeners.add(listener);
}
}
/**
* Creates a group with the specified name and parent in the server
* stored contact list.
@ -470,21 +359,6 @@ protected void changePresenceStatusForAllContacts(ContactGroup parent,
}
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
*
* @param listener ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized(providerPresenceStatusListeners)
{
this.providerPresenceStatusListeners.remove(listener);
}
}
/**
* Returns the group that is parent of the specified zeroconfGroup or null
* if no parent was found.
@ -541,22 +415,6 @@ public void removeServerStoredContactGroup(ContactGroup group)
zeroconfGroup, ServerStoredGroupEvent.GROUP_REMOVED_EVENT);
}
/**
* Removes the specified group change listener so that it won't receive
* any further events.
*
* @param listener the ServerStoredGroupChangeListener to remove
*/
public void removeServerStoredGroupChangeListener(ServerStoredGroupListener
listener)
{
synchronized(serverStoredGroupListeners)
{
serverStoredGroupListeners.remove(listener);
}
}
/**
* Renames the specified group from the server stored contact list.
*

@ -5,6 +5,7 @@
*/
package net.java.sip.communicator.service.protocol;
import java.beans.PropertyChangeEvent;
import java.util.*;
import net.java.sip.communicator.service.protocol.event.*;
@ -24,23 +25,36 @@ public abstract class AbstractOperationSetPersistentPresence<T extends ProtocolP
private static final Logger logger =
Logger.getLogger(AbstractOperationSetPersistentPresence.class);
/**
* A list of listeners registered for
* <tt>ContactPresenceStatusChangeEvent</tt>s.
*/
private final List<ContactPresenceStatusListener> contactPresenceStatusListeners
= new Vector<ContactPresenceStatusListener>();
/**
* The provider that created us.
*/
protected final T parentProvider;
/**
* The list of listeners interested in <tt>SubscriptionEvent</tt>s.
* A list of listeners registered for
* <tt>ProviderPresenceStatusChangeEvent</tt>s.
*/
private final List<SubscriptionListener> subscriptionListeners =
new Vector<SubscriptionListener>();
private final List<ProviderPresenceStatusListener> providerPresenceStatusListeners
= new Vector<ProviderPresenceStatusListener>();
/**
* A list of listeners registered for
* <tt>ContactPresenceStatusChangeEvent</tt>s.
* A list of listeners registered for <tt>ServerStoredGroupChangeEvent</tt>s.
*/
private final List<ContactPresenceStatusListener> contactPresenceStatusListeners
= new Vector<ContactPresenceStatusListener>();
private final List<ServerStoredGroupListener> serverStoredGroupListeners
= new Vector<ServerStoredGroupListener>();
/**
* The list of listeners interested in <tt>SubscriptionEvent</tt>s.
*/
private final List<SubscriptionListener> subscriptionListeners
= new Vector<SubscriptionListener>();
/**
* Initializes a new <tt>AbstractOperationSetPersistentPresence</tt>
@ -70,6 +84,41 @@ public void addContactPresenceStatusListener(
}
}
/**
* Adds a listener that would receive events upon changes of the provider
* presence status.
*
* @param listener
* the listener to register for changes in our PresenceStatus.
*/
public void addProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized (providerPresenceStatusListeners)
{
if (!providerPresenceStatusListeners.contains(listener))
providerPresenceStatusListeners.add(listener);
}
}
/**
* Registers a listener that would receive events upon changes in server
* stored groups.
*
* @param listener
* a ServerStoredGroupChangeListener impl that would receive
* events upon group changes.
*/
public void addServerStoredGroupChangeListener(
ServerStoredGroupListener listener)
{
synchronized (serverStoredGroupListeners)
{
if (!serverStoredGroupListeners.contains(listener))
serverStoredGroupListeners.add(listener);
}
}
public void addSubscriptionListener(SubscriptionListener listener)
{
synchronized (subscriptionListeners)
@ -119,7 +168,7 @@ public void fireContactPresenceStatusChangeEvent(Contact source,
oldValue,
newValue);
List<ContactPresenceStatusListener> listeners;
Collection<ContactPresenceStatusListener> listeners;
synchronized (contactPresenceStatusListeners)
{
listeners =
@ -150,22 +199,151 @@ public void fireContactPresenceStatusChangeEvent(Contact source,
public void fireContactPropertyChangeEvent(String eventID, Contact source,
Object oldValue, Object newValue)
{
ContactPropertyChangeEvent evt =
new ContactPropertyChangeEvent(source, eventID, oldValue, newValue);
ContactPropertyChangeEvent evt
= new ContactPropertyChangeEvent(
source,
eventID,
oldValue,
newValue);
List<SubscriptionListener> listeners;
Collection<SubscriptionListener> listeners;
synchronized (subscriptionListeners)
{
listeners =
new ArrayList<SubscriptionListener>(subscriptionListeners);
listeners
= new ArrayList<SubscriptionListener>(subscriptionListeners);
}
logger.debug("Dispatching a Contact Property Change Event to"
+ listeners.size() + " listeners. Evt=" + evt);
for (Iterator<SubscriptionListener> listenerIt = listeners.iterator(); listenerIt
.hasNext();)
listenerIt.next().contactModified(evt);
for (SubscriptionListener listener : listeners)
listener.contactModified(evt);
}
/**
* Notifies all registered listeners of the new event.
*
* @param oldValue
* the presence status we were in before the change.
*/
protected void fireProviderStatusChangeEvent(PresenceStatus oldValue)
{
fireProviderStatusChangeEvent(oldValue, getPresenceStatus());
}
/**
* Notify all provider presence listeners of the corresponding event change
*
* @param oldStatus
* the status our stack had so far
* @param newStatus
* the status we have from now on
*/
protected void fireProviderStatusChangeEvent(
PresenceStatus oldValue,
PresenceStatus newValue)
{
ProviderPresenceStatusChangeEvent evt
= new ProviderPresenceStatusChangeEvent(
parentProvider,
oldValue,
newValue);
Collection<ProviderPresenceStatusListener> listeners;
synchronized (providerPresenceStatusListeners)
{
listeners
= new ArrayList<ProviderPresenceStatusListener>(
providerPresenceStatusListeners);
}
logger.debug(
"Dispatching Provider Status Change. Listeners="
+ listeners.size()
+ " evt=" + evt);
for (ProviderPresenceStatusListener listener : listeners)
listener.providerStatusChanged(evt);
logger.debug("status dispatching done.");
}
/**
* Notify all provider presence listeners that a new status message has been
* set.
*
* @param oldStatusMessage
* the status message our stack had so far
* @param newStatusMessage
* the status message we have from now on
*/
protected void fireProviderStatusMessageChangeEvent(
String oldStatusMessage,
String newStatusMessage)
{
PropertyChangeEvent evt
= new PropertyChangeEvent(
parentProvider,
ProviderPresenceStatusListener.STATUS_MESSAGE,
oldStatusMessage,
newStatusMessage);
Collection<ProviderPresenceStatusListener> listeners;
synchronized (providerPresenceStatusListeners)
{
listeners
= new ArrayList<ProviderPresenceStatusListener>(
providerPresenceStatusListeners);
}
logger.debug(
"Dispatching stat. msg change. Listeners="
+ listeners.size()
+ " evt=" + evt);
for (ProviderPresenceStatusListener listener : listeners)
listener.providerStatusMessageChanged(evt);
}
/**
* Notifies all registered listeners of the new event.
*
* @param source the contact that has caused the event.
* @param eventID an identifier of the event to dispatch.
*/
protected void fireServerStoredGroupEvent(
ContactGroup source,
int eventID)
{
ServerStoredGroupEvent evt
= new ServerStoredGroupEvent(
source,
eventID,
source.getParentContactGroup(),
parentProvider,
this);
Iterable<ServerStoredGroupListener> listeners;
synchronized (serverStoredGroupListeners)
{
listeners
= new ArrayList<ServerStoredGroupListener>(
serverStoredGroupListeners);
}
for (ServerStoredGroupListener listener : listeners)
switch (eventID)
{
case ServerStoredGroupEvent.GROUP_CREATED_EVENT:
listener.groupCreated(evt);
break;
case ServerStoredGroupEvent.GROUP_RENAMED_EVENT:
listener.groupNameChanged(evt);
break;
case ServerStoredGroupEvent.GROUP_REMOVED_EVENT:
listener.groupRemoved(evt);
break;
}
}
/**
@ -185,11 +363,16 @@ public void fireSubscriptionEvent(Contact source, ContactGroup parentGroup,
public void fireSubscriptionEvent(Contact source, ContactGroup parentGroup,
int eventID, int errorCode, String errorReason)
{
SubscriptionEvent evt =
new SubscriptionEvent(source, parentProvider, parentGroup, eventID,
errorCode, errorReason);
SubscriptionEvent evt
= new SubscriptionEvent(
source,
parentProvider,
parentGroup,
eventID,
errorCode,
errorReason);
List<SubscriptionListener> listeners;
Collection<SubscriptionListener> listeners;
synchronized (subscriptionListeners)
{
listeners =
@ -200,7 +383,6 @@ public void fireSubscriptionEvent(Contact source, ContactGroup parentGroup,
+ " listeners. Evt=" + evt);
for (SubscriptionListener listener : listeners)
{
switch (eventID)
{
case SubscriptionEvent.SUBSCRIPTION_CREATED:
@ -216,7 +398,6 @@ public void fireSubscriptionEvent(Contact source, ContactGroup parentGroup,
listener.subscriptionResolved(evt);
break;
}
}
}
/**
@ -234,11 +415,11 @@ public void fireSubscriptionMovedEvent(Contact source,
new SubscriptionMovedEvent(source, parentProvider, oldParent,
newParent);
List<SubscriptionListener> listeners;
Collection<SubscriptionListener> listeners;
synchronized (subscriptionListeners)
{
listeners =
new ArrayList<SubscriptionListener>(subscriptionListeners);
listeners
= new ArrayList<SubscriptionListener>(subscriptionListeners);
}
logger.debug("Dispatching a Subscription Event to" + listeners.size()
@ -263,6 +444,37 @@ public void removeContactPresenceStatusListener(
}
}
/**
* Unregisters the specified listener so that it does not receive further
* events upon changes in local presence status.
*
* @param listener
* ProviderPresenceStatusListener
*/
public void removeProviderPresenceStatusListener(
ProviderPresenceStatusListener listener)
{
synchronized (providerPresenceStatusListeners)
{
providerPresenceStatusListeners.remove(listener);
}
}
/**
* Removes the specified group change listener so that it won't receive
* any further events.
*
* @param listener the ServerStoredGroupChangeListener to remove
*/
public void removeServerStoredGroupChangeListener(
ServerStoredGroupListener listener)
{
synchronized (serverStoredGroupListeners)
{
serverStoredGroupListeners.remove(listener);
}
}
/**
* Removes the specified subscription listener.
*

@ -0,0 +1,69 @@
/*
* SIP Communicator, the OpenSource Java VoIP and Instant Messaging client.
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package net.java.sip.communicator.service.protocol.event;
/**
* Represents a default implementation of <code>SubscriptionListener</code>
* which performs no processing of the received events and allows extenders to
* easily implement the interface in question by just overriding the methods
* they are interested in.
*
* @author Lubomir Marinov
*/
public class SubscriptionAdapter
implements SubscriptionListener
{
/*
* Implements
* SubscriptionListener#contactModified(ContactPropertyChangeEvent). Does
* nothing.
*/
public void contactModified(ContactPropertyChangeEvent evt)
{
}
/*
* Implements SubscriptionListener#subscriptionCreated(SubscriptionEvent).
* Does nothing.
*/
public void subscriptionCreated(SubscriptionEvent evt)
{
}
/*
* Implements SubscriptionListener#subscriptionFailed(SubscriptionEvent).
* Does nothing.
*/
public void subscriptionFailed(SubscriptionEvent evt)
{
}
/*
* Implements SubscriptionListener#subscriptionMoved(SubscriptionMovedEvent).
* Does nothing.
*/
public void subscriptionMoved(SubscriptionMovedEvent evt)
{
}
/*
* Implements SubscriptionListener#subscriptionRemoved(SubscriptionEvent).
* Does nothing.
*/
public void subscriptionRemoved(SubscriptionEvent evt)
{
}
/*
* Implements SubscriptionListener#subscriptionResolved(SubscriptionEvent).
* Does nothing.
*/
public void subscriptionResolved(SubscriptionEvent evt)
{
}
}

@ -1062,46 +1062,4 @@ public void waitForAuthRequest(long waitFor)
}
}
}
/**
* Used to wait till buddy is removed from our contact list.
* Used in the authorization process tests
*/
private class UnsubscribeWait implements SubscriptionListener
{
public void waitForUnsubscribre(long waitFor)
{
synchronized(this)
{
try{
wait(waitFor);
}
catch (InterruptedException ex)
{
logger.debug(
"Interrupted while waiting for a subscription evt", ex);
}
}
}
public void subscriptionRemoved(SubscriptionEvent evt)
{
synchronized(this)
{
logger.debug("Got subscriptionRemoved " + evt);
notifyAll();
}
}
public void subscriptionCreated(SubscriptionEvent evt)
{}
public void subscriptionFailed(SubscriptionEvent evt)
{}
public void subscriptionMoved(SubscriptionMovedEvent evt)
{}
public void subscriptionResolved(SubscriptionEvent evt)
{}
public void contactModified(ContactPropertyChangeEvent evt)
{}
}
}

@ -1256,7 +1256,8 @@ public void waitForAuthRequest(long waitFor)
* Used to wait till buddy is removed from our contact list.
* Used in the authorization process tests
*/
private class UnsubscribeWait implements SubscriptionListener
private static class UnsubscribeWait
extends SubscriptionAdapter
{
public void waitForUnsubscribre(long waitFor)
{
@ -1281,17 +1282,6 @@ public void subscriptionRemoved(SubscriptionEvent evt)
notifyAll();
}
}
public void subscriptionCreated(SubscriptionEvent evt)
{}
public void subscriptionFailed(SubscriptionEvent evt)
{}
public void subscriptionMoved(SubscriptionMovedEvent evt)
{}
public void subscriptionResolved(SubscriptionEvent evt)
{}
public void contactModified(ContactPropertyChangeEvent evt)
{}
}
/**

@ -972,46 +972,4 @@ public void contactPresenceStatusChanged(
}
}
}
/**
* Used to wait till buddy is removed from our contact list.
* Used in the authorization process tests
*/
private class UnsubscribeWait implements SubscriptionListener
{
public void waitForUnsubscribre(long waitFor)
{
synchronized(this)
{
try{
wait(waitFor);
}
catch (InterruptedException ex)
{
logger.debug(
"Interrupted while waiting for a subscription evt", ex);
}
}
}
public void subscriptionRemoved(SubscriptionEvent evt)
{
synchronized(this)
{
logger.debug("Got subscriptionRemoved " + evt);
notifyAll();
}
}
public void subscriptionCreated(SubscriptionEvent evt)
{}
public void subscriptionFailed(SubscriptionEvent evt)
{}
public void subscriptionMoved(SubscriptionMovedEvent evt)
{}
public void subscriptionResolved(SubscriptionEvent evt)
{}
public void contactModified(ContactPropertyChangeEvent evt)
{}
}
}

@ -10,6 +10,7 @@
import java.util.*;
import junit.framework.*;
import net.java.sip.communicator.service.protocol.*;
import net.java.sip.communicator.service.protocol.event.*;
import net.java.sip.communicator.util.*;
@ -97,7 +98,6 @@ protected void setUp() throws Exception
+ "implementation of at least the one of the Presence "
+ "Operation Sets");
}
}
protected void tearDown() throws Exception
@ -154,13 +154,12 @@ public void testChangingState() throws Exception
{
//first create a local list containing the presence status instances
//supported by the underlying implementation.
Iterator supportedStatusSetIter =
Iterator<PresenceStatus> supportedStatusSetIter =
this.operationSetPresence1.getSupportedStatusSet();
while (supportedStatusSetIter.hasNext())
{
PresenceStatus supportedStatus =
(PresenceStatus) supportedStatusSetIter.next();
PresenceStatus supportedStatus = supportedStatusSetIter.next();
logger.trace("Will test a transition to "
+ supportedStatus.getStatusName());
@ -291,25 +290,22 @@ private void pauseAfterStateChanges()
* @throws java.lang.Exception if one of the transitions fails
*/
public void testQueryContactStatus()
throws Exception
throws Exception
{
//first create a local list containing the presence status instances
//supported by the underlying implementation.
Iterator supportedStatusSetIter =
Iterator<PresenceStatus> supportedStatusSetIter =
operationSetPresence1.getSupportedStatusSet();
while (supportedStatusSetIter.hasNext())
{
PresenceStatus supportedStatus
= (PresenceStatus)supportedStatusSetIter.next();
PresenceStatus supportedStatus = supportedStatusSetIter.next();
logger.trace("Will test a transition to "
+ supportedStatus.getStatusName());
subtestQueryContactStatus(supportedStatus);
}
}
/**
@ -365,8 +361,8 @@ public void postTestSubscribe()
= new SubscriptionEventCollector();
this.operationSetPresence1.addSubscriptionListener(subEvtCollector);
synchronized (subEvtCollector){
synchronized (subEvtCollector)
{
this.operationSetPresence1.subscribe(this.fixture.userID2);
//we may already have the event, but it won't hurt to check.
subEvtCollector.waitForEvent(10000);
@ -390,7 +386,8 @@ public void postTestSubscribe()
subEvtCollector.collectedEvents.clear();
// wait the resolution of the contact before continuing
synchronized (subEvtCollector){
synchronized (subEvtCollector)
{
subEvtCollector.waitForEvent(10000);
this.operationSetPresence1
.removeSubscriptionListener(subEvtCollector);
@ -513,13 +510,12 @@ private PresenceStatus getSampleStatus1()
PresenceStatus mostConnectedPresenceStatus = null;
int mostConnectedPresenceStatusInt = Integer.MIN_VALUE;
Iterator supportedStatusSetIter =
Iterator<PresenceStatus> supportedStatusSetIter =
this.operationSetPresence1.getSupportedStatusSet();
while (supportedStatusSetIter.hasNext())
{
PresenceStatus supportedStatus
= (PresenceStatus)supportedStatusSetIter.next();
PresenceStatus supportedStatus = supportedStatusSetIter.next();
if(supportedStatus.getStatus() > mostConnectedPresenceStatusInt)
{
@ -546,13 +542,12 @@ private PresenceStatus getSampleStatus2()
PresenceStatus secondMostConnectedPresenceStatus = null;
int secondMostConnectedPresenceStatusInt = Integer.MIN_VALUE;
Iterator supportedStatusSetIter =
Iterator<PresenceStatus> supportedStatusSetIter =
this.operationSetPresence1.getSupportedStatusSet();
while (supportedStatusSetIter.hasNext())
{
PresenceStatus supportedStatus
= (PresenceStatus)supportedStatusSetIter.next();
PresenceStatus supportedStatus = supportedStatusSetIter.next();
if(supportedStatus.getStatus() > mostConnectedPresenceStatusInt)
{
@ -970,46 +965,4 @@ public void contactPresenceStatusChanged(
}
}
}
/**
* Used to wait till buddy is removed from our contact list.
* Used in the authorization process tests
*/
private class UnsubscribeWait implements SubscriptionListener
{
public void waitForUnsubscribre(long waitFor)
{
synchronized(this)
{
try{
wait(waitFor);
}
catch (InterruptedException ex)
{
logger.debug(
"Interrupted while waiting for a subscription evt", ex);
}
}
}
public void subscriptionRemoved(SubscriptionEvent evt)
{
synchronized(this)
{
logger.debug("Got subscriptionRemoved " + evt);
notifyAll();
}
}
public void subscriptionCreated(SubscriptionEvent evt)
{}
public void subscriptionFailed(SubscriptionEvent evt)
{}
public void subscriptionMoved(SubscriptionMovedEvent evt)
{}
public void subscriptionResolved(SubscriptionEvent evt)
{}
public void contactModified(ContactPropertyChangeEvent evt)
{}
}
}
}

@ -910,48 +910,6 @@ public void contactPresenceStatusChanged(
}
}
/**
* Used to wait till buddy is removed from our contact list.
* Used in the authorization process tests
*/
private class UnsubscribeWait implements SubscriptionListener
{
public void waitForUnsubscribre(long waitFor)
{
synchronized(this)
{
try{
wait(waitFor);
}
catch (InterruptedException ex)
{
logger.debug(
"Interrupted while waiting for a subscription evt", ex);
}
}
}
public void subscriptionRemoved(SubscriptionEvent evt)
{
synchronized(this)
{
logger.debug("Got subscriptionRemoved " + evt);
notifyAll();
}
}
public void subscriptionCreated(SubscriptionEvent evt)
{}
public void subscriptionFailed(SubscriptionEvent evt)
{}
public void subscriptionMoved(SubscriptionMovedEvent evt)
{}
public void subscriptionResolved(SubscriptionEvent evt)
{}
public void contactModified(ContactPropertyChangeEvent evt)
{}
}
/**
* AuthorizationHandler which accepts all requests!
*/

Loading…
Cancel
Save