@SuppressWarnings("deprecation") public boolean passBooking(User currentUserBooking, User nextUserInQueue) { try { final MongoDatabase mdb = MongoDBConnManager.getInstance().getConnection(); final MongoCollection<Document> coll = mdb.getCollection(DBConstants.COLL_BOOKING); final Document findCr = new Document(); findCr.put(DBConstants.BOOKING_ID, nextUserInQueue.getBookingId()); final ArrayList<Document> lstBkngs = coll.find(findCr).into(new ArrayList<Document>()); for (final Document document : lstBkngs) { java.util.Date nextUserBookingTime = document.getDate(DBConstants.BOOKED_DATE_N_TIME); nextUserBookingTime.setSeconds(nextUserBookingTime.getSeconds() + 1); currentUserBooking.setBookedDateNTime(nextUserBookingTime); } // update current user booking time final Document filterQuery = new Document(); filterQuery.put(DBConstants.BOOKING_ID, currentUserBooking.getBookingId()); final Document updateQuery = new Document(); final Document updateSet = new Document(); updateSet.put(DBConstants.BOOKED_DATE_N_TIME, currentUserBooking.getBookedDateNTime()); updateQuery.put("$set", updateSet); coll.updateOne(filterQuery, updateQuery); } catch (Exception e) { if (e instanceof com.mongodb.MongoTimeoutException) { throw new ApplicationException(MessagesEnum.MONGODB_IS_DOWN.getMessage(), e); } throw new ApplicationException(MessagesEnum.PASSING_BOOKING_FAILED.getMessage(), e); } return true; }