Decreasing count when removing subscription listener

develop
Nelson R. Perez 2017-10-04 23:05:14 -05:00
parent 5e88c209e3
commit 6ac84f9a52
1 changed files with 8 additions and 6 deletions

View File

@ -111,13 +111,15 @@ public class SubscriptionResponse {
* to be removed from the list.
*/
public void removeSubscriptionListener(SubscriptionListener subscriptionListener){
int currentCount = listenerTypeCount.get(subscriptionListener.getInterestObjectType());
if(currentCount != 0){
this.listenerTypeCount.put(subscriptionListener.getInterestObjectType(), currentCount);
}else{
System.out.println("Trying to remove subscription listener, but none is registered!");
if(listenerTypeCount.containsKey(subscriptionListener.getInterestObjectType())){
int currentCount = listenerTypeCount.get(subscriptionListener.getInterestObjectType());
if(currentCount > 0){
this.listenerTypeCount.put(subscriptionListener.getInterestObjectType(), currentCount - 1);
this.mListeners.remove(subscriptionListener);
}else{
System.out.println("Trying to remove subscription listener, but none is registered!");
}
}
this.mListeners.remove(subscriptionListener);
}
/**