@Provides UserActionsManager userActionsManager(UserActionCacher userActionCacher, BackgroundThreadPoster backgroundThreadPoster, UiThreadPoster uiThreadPoster) { return new UserActionsManager(userActionCacher, backgroundThreadPoster, uiThreadPoster); }
private void voteForRequest(VoteForRequestUserActionEntity voteAction) { String activeUserId = mLoginStateManager.getLoggedInUser().getUserId(); // If no logged in user - ask him to log in if (TextUtils.isEmpty(activeUserId)) { askUserToLogIn(); return; } mUserActionsManager.addUserActionAndNotify( voteAction, new UserActionsManager.UserActionsManagerListener() { @Override public void onUserActionAdded(UserActionEntity userAction) { refreshRequest(); } }); }
private void pickupRequest() { // TODO: request pickup should be allowed only when there is a network connection final String pickedUpBy = mLoginStateManager.getLoggedInUser().getUserId(); // If no logged in user - ask him to log in and rerun this method in case he does if (TextUtils.isEmpty(pickedUpBy)) { askUserToLogIn(); return; } PickUpRequestUserActionEntity pickUpRequestUserAction = mUserActionEntityFactory.newPickUpRequest(mRequestId, pickedUpBy); mUserActionsManager.addUserActionAndNotify( pickUpRequestUserAction, new UserActionsManager.UserActionsManagerListener() { @Override public void onUserActionAdded(UserActionEntity userAction) { refreshRequest(); // Request pickup is time critical action - need to be uploaded to the server ASAP mRequestsManager.syncRequestsFromServer(); } }); }
mUserActionEntityFactory.newCloseRequest(mRequestId, closedBy, closedComment, closedPictures); mUserActionsManager.addUserActionAndNotify( closeRequestUserAction, new UserActionsManager.UserActionsManagerListener() {