@Override public FirstConnect login(String eMail, String passWord, ClientInterface client) throws RemoteException { User user = dataBaseOpeartions.checkUser(eMail, passWord); FirstConnect firstConnect = new FirstConnect(); if (user != null) { try { if (!users.contains(user)) users.add(user); dataBaseOpeartions.changeStatues(user.getId(), "online"); user.setStatus("online"); connectedUsers.put(user.getId(), client); ArrayList<User> myFreiends = getContacts(user.getId()); HashMap<Integer, ClientInterface> myOnlineUser = new HashMap<>(); for (User user1 : myFreiends) { if (connectedUsers.containsKey(user1.getId())) { myOnlineUser.put(user1.getId(), connectedUsers.get(user1.getId())); } } Iterator onlineuser = myOnlineUser.keySet().iterator(); while (onlineuser.hasNext()) { Object object = onlineuser.next(); ClientInterface clients = myOnlineUser.get(object); clients.userNotification( user.id, client, user.getStatus()); // get online statues away buzy } firstConnect.setRequestses(dataBaseOpeartions.getfrFriendRequestses(user.id)); firstConnect.userConnected = myOnlineUser; firstConnect.myUser = myFreiends; firstConnect.user = user; firstConnect.advertise = controller.advertise; firstConnect.messages = dataBaseOpeartions.getOfflineMessage(user.id); } catch (SQLException ex) { Logger.getLogger(ServerImplementation.class.getName()).log(Level.SEVERE, null, ex); } } else { return null; } // JOptionPane.showMessageDialog(null, "abdo"); return firstConnect; }