package xmpp.client.service.handlers;
import java.util.ArrayList;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.util.Log;
public class SimpleMessageHandler extends Handler {
private final static String TAG = SimpleMessageHandler.class.getName();
ArrayList<SimpleMessageHandlerClient> mClients;
public SimpleMessageHandler() {
super();
mClients = new ArrayList<SimpleMessageHandlerClient>();
}
public SimpleMessageHandler(Looper looper) {
super(looper);
mClients = new ArrayList<SimpleMessageHandlerClient>();
}
public SimpleMessageHandler(SimpleMessageHandlerClient client) {
this();
addClient(client);
}
public SimpleMessageHandler(SimpleMessageHandlerClient client, Looper looper) {
this(looper);
addClient(client);
}
public void addClient(SimpleMessageHandlerClient client) {
mClients.add(client);
}
public void clearClients() {
mClients.clear();
}
public void delClient(SimpleMessageHandlerClient client) {
mClients.remove(client);
}
@Override
public void handleMessage(Message msg) {
for (int i = 0; i < mClients.size(); i++) {
final SimpleMessageHandlerClient client = mClients.get(i);
Log.d(TAG, "Sending " + msg.toString() + " to " + client.toString());
if (client != null && client.isReady()) {
client.handleMessage(msg);
}
}
}
}