@Override public void onRetry() { getPresence(userId, callback); } }));
mPresenceRestClient = new PresenceRestClient(hsConfig); mRoomsRestClient = new RoomsRestClient(hsConfig); mPushRulesRestClient = new PushRulesRestClient(hsConfig);
mPresenceRestClient.setUnsentEventsManager(mUnsentEventsManager); mRoomsRestClient.setUnsentEventsManager(mUnsentEventsManager); mPushRulesRestClient.setUnsentEventsManager(mUnsentEventsManager);
/** * Refresh the presence info of a dedicated user. * * @param userId the user userID. * @param callback the callback. */ public void refreshUserPresence(final String userId, final ApiCallback<Void> callback) { mPresenceRestClient.getPresence(userId, new SimpleApiCallback<User>(callback) { @Override public void onSuccess(User user) { User currentUser = mDataHandler.getStore().getUser(userId); if (null != currentUser) { currentUser.presence = user.presence; currentUser.currently_active = user.currently_active; currentUser.lastActiveAgo = user.lastActiveAgo; } else { currentUser = user; } currentUser.setLatestPresenceTs(System.currentTimeMillis()); mDataHandler.getStore().storeUser(currentUser); if (null != callback) { callback.onSuccess(null); } } }); }