public void cadastroIdTwitterAmigos1E2Grau(Usuario usuario, Twitter twitter) { Long idUsuario = (long) usuario.getAutorizacaoTwitter().getId(); try { List<TwitterUsuarioId> idAmigos = new ArrayList<TwitterUsuarioId>(); idAmigos = getIdsUsuariosTwitter(idUsuario, twitter); usuario = usuarioService.CadastraIdAmigos(idAmigos, usuario.getId()); usuarioService.save(usuario); for (TwitterUsuarioId id : idAmigos) { List<TwitterUsuarioId> idAmigos2 = new ArrayList<TwitterUsuarioId>(); idAmigos2 = getIdsUsuariosTwitter(id.getIdTwitter(), twitter); usuario = usuarioService.CadastraIdsParaRecomadacao(idAmigos2, usuario); } usuarioService.save(usuario); // getTweets(twitter); } catch (TwitterException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
public List<TwitterUsuarioId> getIdsUsuariosTwitter(Long idUsuarioTwitter, Twitter twitter) throws TwitterException { long cursor = -1; List<TwitterUsuarioId> listaDeId = new ArrayList<TwitterUsuarioId>(); IDs ids = null; User user = null; do { // pode usar essa metodo passando como primeiro argumento os id´s e // como segundo argumento paginação para retornar os amigos do id repassado. ids = twitter.getFriendsIDs(idUsuarioTwitter, cursor); for (long id : ids.getIDs()) { TwitterUsuarioId idNovo = twitterUsuarioIdService.getTwitterUsuarioIdByIdTwitter(id); if (idNovo == null) { idNovo = new TwitterUsuarioId(); idNovo.setIdTwitter(id); twitterUsuarioIdService.save(idNovo); } listaDeId.add(idNovo); } } while ((cursor = ids.getNextCursor()) != 0); return listaDeId; }