/** * Send shell target. * * @param request the request * @param response the response * @param target the target * @param returnUrl the return url * @throws ServletException the servlet exception * @throws IOException Signals that an I/O exception has occurred. */ public static void sendShellTarget( HttpServletRequest request, HttpServletResponse response, String target, String returnUrl) throws ServletException, IOException { PersonInfo personInfo = RequestCtx.getPersonInfo(); ShellUrlBuilder shellUrl = new ShellUrlBuilder(); shellUrl.setAllowInstanceBounce(true); shellUrl.setAppId(ApplicationConfig.APP_ID); shellUrl.setTarget(target); if (personInfo != null) { shellUrl.setShellInstance(personInfo.getInstanceId()); } if (Config.RedirectUrl != null && Config.RedirectUrl.trim().length() != 0) { StringBuilder returnUrlBuilder = new StringBuilder(); returnUrlBuilder.append(request.getScheme()); returnUrlBuilder.append("://"); returnUrlBuilder.append(request.getServerName()); returnUrlBuilder.append(":"); returnUrlBuilder.append(request.getServerPort()); returnUrlBuilder.append(request.getContextPath()); returnUrlBuilder.append(Config.RedirectUrl); try { shellUrl.setReturnUrlOverride(new URI(returnUrlBuilder.toString())); } catch (Exception e) { throw new HVException(e); } } shellUrl.setActionqs(returnUrl); response.sendRedirect(shellUrl.toString()); }
/** @param sender */ public void deleteRequest(PersonInfo sender) { if (sender == null) { throw new NullPointerException(); } mTable.deleteEntryOf(sender.getIdentifier()); }
/** * @param sender * @param circles */ public void confirmRequest(PersonInfo sender, String passphrase, List<String> circles) throws TokenCipher.WrongPassphraseException { if (sender == null || circles == null) { throw new NullPointerException(); } try { mTable.confirmRequest(sender.getIdentifier(), passphrase); } catch (GeneralSecurityException e) { Log.e(TAG, "Decypher error:", e); return; } for (String circle : circles) { addPersontoCircle(sender.getIdentifier(), circle); } }
/** * 把网页Html代码转换为PersonInfo对象 * * @param doc * @return */ private PersonInfo convertDoc2PersonInfo(Document doc) { PersonInfo info = new PersonInfo(); if (doc == null) { return null; } Elements obssinHtml = doc.select("div[class=\"obssin\""); // 用户id info.setUserId(id); // 用户主页url info.setHomePageUrl(url); // 关注的人数 String fellowPeopleNum = getFellowPeopleNum(doc); info.setFellowPeopleNum(fellowPeopleNum); if (fellowPeopleNum == null) { logger.infoLog("User:"******": empty fellow people"); } // 被关注的人数 String fellowedPeopleNum = getFellowedPeopleNum(doc); info.setFellowedPeopleNum(fellowedPeopleNum); if (fellowedPeopleNum == null) { logger.infoLog("User:"******": empty fellowed people"); } // 常去的小组 List<String> oftenGroup = getOftenGroup(doc); info.setOftenGroup(oftenGroup); if (oftenGroup == null) { logger.infoLog("User:"******": empty often group"); } // 获取在读的书列表 List<String> readingBook = getReadingBook(obssinHtml); info.setReadingBook(readingBook); if (readingBook == null) { logger.infoLog("User:"******": empty reading book"); } // 获取想读的书列表 List<String> wantBook = getWantBook(obssinHtml); info.setWantBook(wantBook); if (wantBook == null) { logger.infoLog("User:"******": empty want book"); } // 想看的电影 List<String> wantMovie = getWantMovie(obssinHtml); info.setWantMovie(wantMovie); if (wantMovie == null) { logger.infoLog("User:"******": empty want movie"); } // 看过的电影 List<String> watchedMovie = getWatchedMovie(obssinHtml); info.setWatchedMovie(watchedMovie); if (watchedMovie == null) { logger.infoLog("User:"******": empty watched movie"); } // 在听的歌 List<String> listeningMusic = getListeningMusic(obssinHtml); info.setListeningMusic(listeningMusic); if (listeningMusic == null) { logger.infoLog("User:"******": empty listening music"); } // 想听的歌 List<String> wantMusic = getWantMusic(obssinHtml); info.setWantMusic(wantMusic); if (wantMusic == null) { logger.infoLog("User:"******": empty want music"); } // 加入时间 String joinDate = getJoinDate(doc); info.setJoinDate(joinDate); if (joinDate == null) { logger.infoLog("User:"******": empty join date"); } // 性别(暂时无法获取,设置默认值) info.setSex("n"); // 年龄(暂时无法获取,设置默认值) info.setAge("0"); // 姓名 String name = getName(doc); info.setUserName(name); if (name == null) { logger.infoLog("User:"******": empty name"); } return info; }
public boolean removePersonFromGroup(PersonInfo contact, String group) { return mTable.removePersonFromCircle(contact.getIdentifier(), group); }
public boolean addPersonToGroup(PersonInfo contact, String group) { return mTable.addPersonToCircle(contact.getIdentifier(), group); }
public void deletePerson(PersonInfo person) { mTable.deleteEntryOf(person.getIdentifier()); }