/** * @return the current user id. */ public String getUserId() { if (isAlive()) { return mCredentials.userId; } else { return "dummy"; } }
private void onError() { if (mDataHandler.isAlive()) { mUiHandler.postDelayed(new Runnable() { @Override public void run() { refreshUserDisplayname(); } }, 1 * 1000); } }
private void onError() { if (mDataHandler.isAlive()) { mUiHandler.postDelayed(new Runnable() { @Override public void run() { refreshUserAvatarUrl(); } }, 1 * 1000); } }
private void onError() { if (mDataHandler.isAlive()) { mUiHandler.postDelayed(new Runnable() { @Override public void run() { refreshThirdPartyIdentifiers(); } }, 1 * 1000); } }
/** * Remove a listener from the listeners list. * * @param listener to remove. */ public void removeListener(IMXEventListener listener) { if (isAlive() && (null != listener)) { synchronized (mMxEventDispatcher) { mMxEventDispatcher.removeListener(listener); } } }
/** * @return the used push rules set. */ public PushRuleSet pushRules() { if (isAlive() && (null != mBingRulesManager)) { return mBingRulesManager.pushRules(); } return null; }
/** * @return the used store. */ public IMXStore getStore() { if (isAlive()) { return mStore; } else { Log.e(LOG_TAG, "getStore : the session is not anymore active"); return null; } }
/** * Trigger a push rules refresh. */ public void refreshPushRules() { if (isAlive() && (null != mBingRulesManager)) { mBingRulesManager.loadRules(new SimpleApiCallback<Void>() { @Override public void onSuccess(Void info) { onBingRulesUpdate(); } }); } }
/** * Update the push rules manager. * * @param bingRulesManager the new push rules manager. */ public void setPushRulesManager(BingRulesManager bingRulesManager) { if (isAlive()) { mBingRulesManager = bingRulesManager; mBingRulesManager.loadRules(new SimpleApiCallback<Void>() { @Override public void onSuccess(Void info) { onBingRulesUpdate(); } }); } }
@Override public void onSuccess(TokensChunkEvents response) { if (mDataHandler.isAlive()) { Log.d(LOG_TAG, "forwardPaginate : " + response.chunk.size() + " are retrieved."); mHasReachedHomeServerForwardsPaginationEnd = 0 == response.chunk.size() && TextUtils.equals(response.end, response.start); mForwardsPaginationToken = response.end; addPaginationEvents(response.chunk, response.stateEvents, Direction.FORWARDS, callback); mIsForwardPaginating = false; } else { Log.d(LOG_TAG, "mDataHandler is not active."); } }
/** * Returns the member with userID; * * @param members the members List * @param userID the user ID * @return the roomMember if it exists. */ public RoomMember getMember(Collection<RoomMember> members, String userID) { if (isAlive()) { for (RoomMember member : members) { if (TextUtils.equals(userID, member.getUserId())) { return member; } } } else { Log.e(LOG_TAG, "getMember : the session is not anymore active"); } return null; }
@Override public void onSuccess(String aDisplayname) { if (mDataHandler.isAlive()) { // local value displayname = aDisplayname; // store metadata mDataHandler.getStore().setDisplayName(aDisplayname, System.currentTimeMillis()); mIsDisplayNameRefreshed = true; // jump to the next items refreshUserInfos(true, null); } }
/** * Add a listener to the listeners list. * * @param listener the listener to add. */ public void addListener(IMXEventListener listener) { if (isAlive() && (null != listener)) { synchronized (mMxEventDispatcher) { mMxEventDispatcher.addListener(listener); } if (null != mInitialSyncToToken) { listener.onInitialSyncComplete(mInitialSyncToToken); } } }
/** * Provides the store in which the room is stored. * * @param roomId the room id * @return the used store */ public IMXStore getStore(String roomId) { if (isAlive()) { if (null == roomId) { return mStore; } else { if (null != mLeftRoomsStore.getRoom(roomId)) { return mLeftRoomsStore; } else { return mStore; } } } else { Log.e(LOG_TAG, "getStore : the session is not anymore active"); return null; } }
@Override public void onSuccess(List<ThirdPartyIdentifier> identifiers) { if (mDataHandler.isAlive()) { // store mDataHandler.getStore().setThirdPartyIdentifiers(identifiers); buildIdentifiersLists(); mAre3PIdsLoaded = true; // jump to the next items refreshUserInfos(true, null); } }
/** * Return an user from his id. * * @param userId the user id;. * @return the user. */ public User getUser(String userId) { if (!isAlive()) { Log.e(LOG_TAG, "getUser : the session is not anymore active"); return null; } else { User user = mStore.getUser(userId); if (null == user) { user = mLeftRoomsStore.getUser(userId); } return user; } }
@Override public void onSuccess(String anAvatarUrl) { if (mDataHandler.isAlive()) { // local value setAvatarUrl(anAvatarUrl); // metadata file mDataHandler.getStore().setAvatarURL(anAvatarUrl, System.currentTimeMillis()); // user mDataHandler.getStore().storeUser(MyUser.this); mIsAvatarRefreshed = true; // jump to the next items refreshUserInfos(true, null); } }
@Override public void onSuccess(Void info) { if (mDataHandler.isAlive()) { // don't call onSuccess.deleteRoom because it moves an existing room to historical store IMXStore store = mDataHandler.getStore(getRoomId()); if (null != store) { store.deleteRoom(getRoomId()); store.commit(); } try { callback.onSuccess(info); } catch (Exception e) { Log.e(LOG_TAG, "forget exception " + e.getMessage(), e); } } } });
/** * Update the missing data fields loaded from a permanent storage. */ void checkPermanentStorageData() { if (!isAlive()) { Log.e(LOG_TAG, "checkPermanentStorageData : the session is not anymore active"); return; } // When the data are extracted from a persistent storage, // some fields are not retrieved : // They are used to retrieve some data // so add the missing links. Collection<RoomSummary> summaries = mStore.getSummaries(); for (RoomSummary summary : summaries) { if (null != summary.getLatestRoomState()) { summary.getLatestRoomState().setDataHandler(this); } } }
@Override public void onSuccess(Void info) { if (mDataHandler.isAlive()) { mIsLeaving = false; // delete references to the room mDataHandler.deleteRoom(getRoomId()); if (null != getStore()) { Log.d(LOG_TAG, "leave : commit"); getStore().commit(); } try { callback.onSuccess(info); } catch (Exception e) { Log.e(LOG_TAG, "leave exception " + e.getMessage(), e); } mDataHandler.onLeaveRoom(getRoomId()); } }