}//TESTED
catch (Exception e){ // Not an object id
if (userIdStrOrEmailOrWP.indexOf('@') < 0) { // not an email
PersonPojo personQuery = new PersonPojo();
personQuery.setWPUserID(userIdStrOrEmailOrWP);
personDbo = (BasicDBObject) DbManager.getSocial().getPerson().findOne(personQuery.toDb());
}
else { // can be either an email address or a WPU
BasicDBObject complexQuery_term1 = new BasicDBObject("WPUserID", userIdStrOrEmailOrWP);
BasicDBObject complexQuery_term2 = new BasicDBObject("email", userIdStrOrEmailOrWP);
BasicDBObject complexQuery = new BasicDBObject("$or", Arrays.asList(complexQuery_term1, complexQuery_term2));