use of com.xabber.xmpp.rsm.Set in project xabber-android by redsolution.
the class MessageArchiveManager method requestList.
private String requestList(String account, String bareAddress, String before) {
List packet = new List();
packet.setType(Type.get);
Set rsm = new Set();
rsm.setMax(RSM_MAX);
rsm.setBefore(before);
packet.setRsm(rsm);
packet.setWith(bareAddress);
packet.setEnd(connected.get(account));
String packetId = packet.getPacketID();
try {
ConnectionManager.getInstance().sendStanza(account, packet);
} catch (NetworkException e) {
}
return packetId;
}
use of com.xabber.xmpp.rsm.Set in project xabber-android by redsolution.
the class MessageArchiveManager method requestModified.
private void requestModified(String account, String before) {
Modified packet = new Modified();
packet.setType(Type.get);
Set rsm = new Set();
rsm.setMax(RSM_MAX);
rsm.setBefore(before);
packet.setRsm(rsm);
packet.setStart(modificationStorages.get(account).getLastRequest());
try {
ConnectionManager.getInstance().sendRequest(account, packet, new OnResponseListener() {
@Override
public void onReceived(String account, String packetId, IQ iq) {
if (iq instanceof Modified && ((Modified) iq).isValid())
onModifiedReceived(account, (Modified) iq);
else
onError(account, packetId, iq);
}
@Override
public void onError(String account, String packetId, IQ iq) {
onModifiedAvailable(account);
}
@Override
public void onTimeout(String account, String packetId) {
onError(account, packetId, null);
}
@Override
public void onDisconnect(String account, String packetId) {
}
});
} catch (NetworkException e) {
}
}
use of com.xabber.xmpp.rsm.Set in project xabber-android by redsolution.
the class MessageArchiveManager method requestChat.
private void requestChat(String account, CollectionHeader header, String after, boolean modification) {
Retrieve packet = new Retrieve();
packet.setType(Type.get);
Set rsm = new Set();
rsm.setMax(RSM_MAX);
rsm.setAfter(after);
packet.setRsm(rsm);
packet.setWith(header.getWith());
packet.setStartString(header.getStartString());
modificationRequests.put(account, packet.getPacketID(), modification);
try {
if (!modification) {
ConnectionManager.getInstance().sendStanza(account, packet);
return;
}
ConnectionManager.getInstance().sendRequest(account, packet, new OnResponseListener() {
@Override
public void onReceived(String account, String packetId, IQ iq) {
if (iq instanceof Chat && ((Chat) iq).isValid())
onChatReceived(account, (Chat) iq);
else
onError(account, packetId, iq);
}
@Override
public void onError(String account, String packetId, IQ iq) {
onModifiedAvailable(account);
}
@Override
public void onTimeout(String account, String packetId) {
onError(account, packetId, null);
}
@Override
public void onDisconnect(String account, String packetId) {
}
});
} catch (NetworkException e) {
}
}
Aggregations