it.remove();
}
}
//determine whether they are received their invitation already
while (invitationIter.hasNext()) {
Invitation inv = invitationIter.next();
if (inv.getCandidate().getUserName().equalsIgnoreCase(person.getUserName())) {
person.setHasReceivedInvitation(true);
}
}
}
//logger.finer("after sorting, the size of the collection is " + searchResults.size());
//not in session request.getSession().setAttribute("searchResults", searchResults);
loggedInPerson.setNonFriendList(searchResults);
if (searchResults != null) {
request.setAttribute("searchResults", searchResults);
}
returnURL = "/site.jsp?page=searchUsers.jsp";
} else if (actionType.equalsIgnoreCase("addDeleteFriend")) {
String query = request.getParameter("query");
String friendUsername = request.getParameter("friend");
//this is returning null - SecurityHandler.getInstance().getLoggedInPerson(request);
UserBean userBean = (UserBean) request.getSession().getAttribute("userBean");
Person loggedInPerson = userBean.getLoggedInPerson();
Collection<Person> previousSearchResults = loggedInPerson.getNonFriendList();
///add or delete
String flag = request.getParameter("flag");
logger.finer("*** flag is " + flag);
if (flag.equals("add")) {
Person friend = mf.findPerson(friendUsername);
Invitation invitation = new Invitation(loggedInPerson, friend);
mf.addInvitation(loggedInPerson, invitation);
//iterate through and set new added friend's hasReceivedInvitation to true
Iterator<Person> searchIter = previousSearchResults.iterator();
while (searchIter.hasNext()) {
Person eachPerson = searchIter.next();
if (eachPerson.getUserName().equalsIgnoreCase(friendUsername)) {
eachPerson.setHasReceivedInvitation(true);
logger.finer("user " + eachPerson.getUserName() + " status is " + eachPerson.isHasReceivedInvitation());
}
}
} else if (flag.equals("delete")) {
Invitation inv = mf.findInvitation(loggedInPerson.getUserName(), friendUsername);
mf.deleteInvitation(loggedInPerson, inv);
//iterate through and set new added friend's hasReceivedInvitation to false
Iterator<Person> searchIter = previousSearchResults.iterator();
while (searchIter.hasNext()) {