fixed a bug in xml parsing

This commit is contained in:
Daniel Gultsch 2014-02-03 16:04:27 +01:00
parent 3d9294684c
commit 7d79852c84
4 changed files with 10 additions and 8 deletions

View File

@ -47,7 +47,6 @@ public class XmppConnectionService extends Service {
@Override @Override
public void onMessagePacketReceived(Account account, MessagePacket packet) { public void onMessagePacketReceived(Account account, MessagePacket packet) {
if (packet.getType()==MessagePacket.TYPE_CHAT) { if (packet.getType()==MessagePacket.TYPE_CHAT) {
Log.d(LOGTAG,account.getJid()+": message of type chat");
String fullJid = packet.getFrom(); String fullJid = packet.getFrom();
String jid = fullJid.split("/")[0]; String jid = fullJid.split("/")[0];
String name = jid.split("@")[0]; String name = jid.split("@")[0];
@ -132,7 +131,6 @@ public class XmppConnectionService extends Service {
@Override @Override
public void onIqPacketReceived(Account account, IqPacket packet) { public void onIqPacketReceived(Account account, IqPacket packet) {
Element roster = packet.findChild("query"); Element roster = packet.findChild("query");
Log.d(LOGTAG,roster.toString());
List<Contact> contacts = new ArrayList<Contact>(); List<Contact> contacts = new ArrayList<Contact>();
for(Element item : roster.getChildren()) { for(Element item : roster.getChildren()) {
String name = item.getAttribute("name"); String name = item.getAttribute("name");
@ -182,10 +180,10 @@ public class XmppConnectionService extends Service {
} }
public Conversation findOrCreateConversation(Account account, Contact contact) { public Conversation findOrCreateConversation(Account account, Contact contact) {
Log.d(LOGTAG,"was asked to find conversation for "+contact.getJid()); //Log.d(LOGTAG,"was asked to find conversation for "+contact.getJid());
for(Conversation conv : this.getConversations()) { for(Conversation conv : this.getConversations()) {
if ((conv.getAccount().equals(account))&&(conv.getContactJid().equals(contact.getJid()))) { if ((conv.getAccount().equals(account))&&(conv.getContactJid().equals(contact.getJid()))) {
Log.d(LOGTAG,"found one in memory"); //Log.d(LOGTAG,"found one in memory");
return conv; return conv;
} }
} }

View File

@ -29,6 +29,7 @@ import android.widget.EditText;
import android.widget.ListView; import android.widget.ListView;
import android.widget.TextView; import android.widget.TextView;
import android.widget.ImageView; import android.widget.ImageView;
import android.annotation.SuppressLint;
import android.app.Activity; import android.app.Activity;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.content.Context; import android.content.Context;
@ -67,9 +68,10 @@ public class NewConversationActivity extends XmppActivity {
Collections.sort(aggregatedContacts, new Comparator<Contact>() { Collections.sort(aggregatedContacts, new Comparator<Contact>() {
@SuppressLint("DefaultLocale")
@Override @Override
public int compare(Contact lhs, Contact rhs) { public int compare(Contact lhs, Contact rhs) {
return lhs.getDisplayName().compareTo(rhs.getDisplayName()); return lhs.getDisplayName().toLowerCase().compareTo(rhs.getDisplayName().toLowerCase());
} }
}); });

View File

@ -86,8 +86,10 @@ public class XmlReader {
} }
//Log.d(LOGTAG,"reading till the end of "+element.getName()); //Log.d(LOGTAG,"reading till the end of "+element.getName());
while(!nextTag.isEnd(element.getName())) { while(!nextTag.isEnd(element.getName())) {
if (!nextTag.isNo()) {
Element child = this.readElement(nextTag); Element child = this.readElement(nextTag);
element.addChild(child); element.addChild(child);
}
nextTag = this.readTag(); nextTag = this.readTag();
} }
//Log.d(LOGTAG,"return with element"+element); //Log.d(LOGTAG,"return with element"+element);

View File

@ -299,7 +299,7 @@ public class XmppConnection implements Runnable {
iqPacketCallbacks.put(id, callback); iqPacketCallbacks.put(id, callback);
} }
tagWriter.flush(); tagWriter.flush();
Log.d(LOGTAG,"sending: "+packet.toString()); Log.d(LOGTAG,account.getJid()+": sending: "+packet.toString());
} }
public void sendMessagePacket(MessagePacket packet) throws IOException { public void sendMessagePacket(MessagePacket packet) throws IOException {