TrafficController.java :  » Web-Mail » claros-intouch2-2.2-beta » org » claros » chat » controllers » Java Open Source

Java Open Source » Web Mail » claros intouch2 2.2 beta 
claros intouch2 2.2 beta » org » claros » chat » controllers » TrafficController.java
package org.claros.chat.controllers;

import java.util.HashMap;

import org.claros.chat.threads.ChatListener;
import org.claros.chat.threads.ChatSender;

public class TrafficController {
  private static HashMap listeners = new HashMap();
  private static HashMap senders = new HashMap();
  
  /**
   * 
   * @param user
   * @param listener
   */
  public static void addListener(String user, ChatListener listener) {
    String usrTrim = getTrimmed(user);
    
    ChatListener tmp = (ChatListener)listeners.get(usrTrim);
    if (tmp != null) {
      tmp.terminate();
    }
    listeners.put(usrTrim, listener);
  }

  /**
   * 
   * @param user
   */
  public static void removeListener(String user) {
    String usrTrim = getTrimmed(user);
    listeners.remove(usrTrim);
  }

  /**
   * 
   * @param user
   * @return
   */
  public static ChatListener getListener(String user) {
    String usrTrim = getTrimmed(user);
    return (ChatListener)listeners.get(usrTrim);
  }
  
  /**
   * 
   * @param user
   * @param sender
   */
  public static void addSender(String user, ChatSender sender) {
    String usrTrim = getTrimmed(user);

    ChatSender tmp = (ChatSender)senders.get(usrTrim);
    if (tmp != null) {
      tmp.terminate();
    }
    senders.put(usrTrim, sender);
  }

  /**
   * 
   * @param user
   */
  public static void removeSender(String user) {
    String usrTrim = getTrimmed(user);
    senders.remove(usrTrim);
  }

  /**
   * 
   * @param user
   * @return
   */
  public static ChatSender getSender(String user) {
    String usrTrim = getTrimmed(user);
    return (ChatSender)senders.get(usrTrim);
  }

  /**
   * 
   * @param user
   * @return
   */
  private static String getTrimmed(String user) {
    String usrTrim = user;
    if (usrTrim.indexOf("/") > 0) {
      usrTrim = usrTrim.substring(0, usrTrim.indexOf("/"));
    }
    return usrTrim;
  }

}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.