fixed a bug in xml parsing
This commit is contained in:
parent
3d9294684c
commit
7d79852c84
|
@ -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;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -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);
|
||||||
|
|
|
@ -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 {
|
||||||
|
|
Loading…
Reference in a new issue