Examples of JTweet


Examples of de.jetwick.data.JTweet

        super(id);
    }

    public OneTweet init(IModel<JTweet> model, boolean showUser) {
        setOutputMarkupId(true);
        final JTweet tweet = model.getObject();
        if (tweet == null) {
            setVisible(false);
            return this;
        }
        final JUser user = tweet.getFromUser();

        if (showUser) {
            LabeledLink userNameLink = new LabeledLink("userNameLink", user.getScreenName() + ":", false) {

                @Override
                public void onClick(AjaxRequestTarget target) {
                    onUserClick(user.getScreenName());
                }
            };
            add(userNameLink);
        } else
            add(new Label("userNameLink", ""));

        WebMarkupContainer spamIndicator = new WebMarkupContainer("spamIndicator");
        spamIndicator.setVisible(tweet.isSpam());
        add(spamIndicator);

//        final DialogUtilsBehavior dialogUtilsBehavior = new DialogUtilsBehavior();
//        add(dialogUtilsBehavior);
        final Label label = new Label("tweetText", new Model<String>() {

            int counter = 0;

            @Override
            public String getObject() {
                return new Extractor() {

                    @Override
                    public String createTagMarkup(String tag, String cleanTag) {
//                        String url = Helper.TSURL + cleanTag;
                        return "<a class=\"i-tw-link tw-tag\" "
                                + "clean=\"" + cleanTag + "\" "
                                + "tag=\"" + tag + " \" "
                                + ">" + tag + "</a>";
                    }
                }.setTweet(tweet).setText(translate(tweet)).run().toString();
            }
        });
        label.setEscapeModelStrings(false);
        label.setOutputMarkupId(true);
        add(label);

        ExternalLink dateLink = new ExternalLink("tweetDate",
                Helper.toTwitterHref(user.getScreenName(), tweet.getTwitterId()));

        String str = "status";
        if (tweet.getCreatedAt() != null)
            str = Helper.toSimpleDateTime(tweet.getCreatedAt());
        Label dateLabel = new Label("tweetDateLabel", str);
        dateLink.add(dateLabel);
        add(dateLink);

        add(new ExternalLink("tweetFav",
                Helper.twitterIntentFav(tweet.getTwitterId())));

        add(new ExternalLink("tweetReply",
                Helper.twitterIntentReply(tweet.getTwitterId())));

        add(new AjaxFallbackLink("tweetRetweet") {

            @Override
            public void onClick(AjaxRequestTarget target) {
                onRetweet(tweet, target);
            }
        });
        IndicatingAjaxFallbackLink inReplyOfButton = new IndicatingAjaxFallbackLink("inreplyof") {

            @Override
            public void onClick(AjaxRequestTarget target) {
                if (target != null) {
                    subTweets.clear();
                    target.addComponent(OneTweet.this);
                    if (!inReplyOfClicked)
                        subTweets.addAll(onInReplyOfClick(tweet.getInReplyTwitterId()));

                    inReplyOfClicked = !inReplyOfClicked;
                }
            }
        };

        add(inReplyOfButton);
        if (JTweet.isDefaultInReplyId(tweet.getInReplyTwitterId()))
            inReplyOfButton.setVisible(false);

        IndicatingAjaxFallbackLink rtLink = new IndicatingAjaxFallbackLink("retweeters") {

            @Override
            public void onClick(AjaxRequestTarget target) {
                if (target != null) {
                    subTweets.clear();
                    target.addComponent(OneTweet.this);
                    if (!rtClicked)
                        subTweets.addAll(onReplyClick(tweet.getTwitterId(), true));

                    rtClicked = !rtClicked;
                }
            }
        };

        add(rtLink.add(new Label("retweetersLabel", "retweets " + tweet.getRetweetCount())));
        if (tweet.getRetweetCount() == 0)
            rtLink.setVisible(false);

        IndicatingAjaxFallbackLink replyLink = new IndicatingAjaxFallbackLink("replies") {

            @Override
            public void onClick(AjaxRequestTarget target) {
                if (target != null) {
                    subTweets.clear();
                    target.addComponent(OneTweet.this);
                    if (!rpClicked)
                        subTweets.addAll(onReplyClick(tweet.getTwitterId(), false));

                    rpClicked = !rpClicked;
                }
            }
        };

        add(replyLink.add(new Label("repliesLabel", "replies " + (tweet.getReplyCount() - tweet.getRetweetCount()))));
        if (tweet.getReplyCount() == tweet.getRetweetCount())
            replyLink.setVisible(false);

        add(new AjaxFallbackLink("similarLink") {

            @Override
View Full Code Here

Examples of de.jetwick.data.JTweet

//                    oldStream.cleanUp();
                }

                long start = System.currentTimeMillis();
                while (true) {
                    JTweet tw = queue.take();
                    String matchingTerm = null;
                    String txt = tw.getLowerCaseText();
                    for (String term : input) {
                        if (txt.contains(term)) {
                            matchingTerm = term;
                            break;
                        }
                    }
                    resultTweets.put(tw.setFeedSource("from stream:" + matchingTerm));
                    Integer integ = termFreq.put(matchingTerm, 1);
                    if (integ != null)
                        termFreq.put(matchingTerm, integ + 1);

                    counter++;
View Full Code Here

Examples of de.jetwick.data.JTweet

                updateAfterAjax(target, false);
            }

            @Override
            public Collection<JTweet> onInReplyOfClick(long id) {
                JTweet tw = getTweetSearch().findByTwitterId(id);
                logger.info("[stats] search tweet:" + id + " " + tw);
                if (tw != null)
                    return Arrays.asList(tw);
                else
                    return new ArrayList();
View Full Code Here

Examples of de.jetwick.data.JTweet

                    if (user == null) {
                        user = new JUser(userName).init(twe);
                        userMap.put(userName, user);
                    }

                    result.add(new JTweet(twe, user));
                }
            }

            // minMillis could force us to leave earlier than defined by maxPages
            // or if resulting tweets are less then request (but -10 because of twitter strangeness)
View Full Code Here

Examples of de.jetwick.data.JTweet

                ResponseList rList = twitter.getUserTimeline(
                        user.getScreenName(), new Paging(currentPage + 1, tweets, 1));
                rateLimit--;
                for (Object st : rList) {
                    Tweet tw = toTweet((Status) st);
                    res.add(new JTweet(tw, user.init(tw)));
                }
                break;
            } catch (TwitterException ex) {
                logger.warn("Exception while getTweets. trial:" + trial + " page:" + currentPage + " - " + Helper.getMsg(ex));
                if (ex.exceededRateLimitation())
View Full Code Here

Examples of de.jetwick.data.JTweet

                if (user == null) {
                    user = new JUser(st.getUser()).init(tw);
                    userMap.put(userName, user);
                }

                result.add(new JTweet(tw, user));
            }

            // sinceId could force us to leave earlier than defined by maxPages
            if (tmp.size() < hitsPerPage)
                break;
View Full Code Here

Examples of de.jetwick.data.JTweet

            public void onStatus(Status status) {
                // ugly twitter ...
                if (Helper.isEmpty(status.getUser().getScreenName()))
                    return;

                if (!queue.offer(new JTweet(toTweet(status), new JUser(status.getUser()))))
                    logger.error("Cannot add tweet as input queue for streaming is full:" + queue.size());
            }

            @Override
            public void onDeletionNotice(StatusDeletionNotice statusDeletionNotice) {
View Full Code Here

Examples of de.jetwick.data.JTweet

        String name = (String) source.get(USER);
        String text = (String) source.get(TWEET_TEXT);
        if (text == null || name == null || idAsStr == null) {
            logger.error("Null tweet text or id!!!??" + idAsStr + " " + name + " " + text);
            return new JTweet(-1L, "", new JUser(""));
        }

        JUser user = new JUser(name);
        user.setLocation((String) source.get("loc"));
        user.setProfileImageUrl((String) source.get("iconUrl"));

        long id = Long.parseLong(idAsStr);
        JTweet tw = new JTweet(id, text, user);
        tw.setVersion(version);

        String p = (String) source.get("geo");
        if (p != null)
            try {
                String[] strs = p.split(",");
                double lat = Double.parseDouble(strs[0]);
                double lon = Double.parseDouble(strs[1]);
                tw.setGeoLocation(lat, lon);
            } catch (Exception ex) {
            }

        tw.setCreatedAt(Helper.toDateNoNPE((String) source.get(DATE)));
        tw.setUpdatedAt(Helper.toDateNoNPE((String) source.get(UPDATE_DT)));
        int rt = ((Number) source.get(RT_COUNT)).intValue();
        int rp = ((Number) source.get("repl_i")).intValue();
        tw.setRetweetCount(rt);
        tw.setReplyCount(rp);

        if (source.get(QUALITY) != null)
            tw.setQuality(((Number) source.get(QUALITY)).intValue());

        tw.setLanguage((String) source.get(LANG));

        if (source.get(INREPLY_ID) != null) {
            long replyId = ((Number) source.get(INREPLY_ID)).longValue();
            tw.setInReplyTwitterId(replyId);
        }

        tw.setUrlEntries(Arrays.asList(parseUrlEntries(source)));
        return tw;
    }
View Full Code Here

Examples of de.jetwick.data.JTweet

            JetwickQuery query = new TweetQuery().addFilterQuery(_ID + getIndexType(), idStr.toString()).setSize(counts);
            SearchResponse rsp = query(query);
            SearchHits docs = rsp.getHits();

            for (SearchHit sd : docs) {
                JTweet tw = readDoc(sd.getId(), sd.getVersion(), sd.getSource());
                existingTweets.put(tw.getTwitterId(), tw);
                JUser u = tw.getFromUser();
                JUser uOld = usersMap.get(u.getScreenName());
                if (uOld == null)
                    usersMap.put(u.getScreenName(), u);
                else
                    uOld.addOwnTweet(u.getOwnTweets().iterator().next());
            }

            // Avoid storing existing tweets again
            Map<Long, JTweet> twMap = new LinkedHashMap<Long, JTweet>();
            for (JTweet tmpTweet : tmpTweets) {
                // do not store if too old
                if (!tmpTweet.isPersistent() && tmpTweet.getCreatedAt().getTime() < removeUntil.getTime())
                    continue;

                JTweet exTw = existingTweets.get(tmpTweet.getTwitterId());
                // feed if new or if it should be persistent
                if (exTw == null || tmpTweet.isPersistent()) {
                    String name = tmpTweet.getFromUser().getScreenName();
                    JUser u = usersMap.get(name);
                    if (u == null) {
                        u = tmpTweet.getFromUser();
                        usersMap.put(name, u);
                    }

                    u.addOwnTweet(tmpTweet);
                    // tweet does not exist. so store it into the todo map
                    twMap.put(tmpTweet.getTwitterId(), tmpTweet);

                    // overwrite existing tweets if persistent BUT update version
                    if (tmpTweet.isPersistent() && exTw != null)
                        tmpTweet.setVersion(exTw.getVersion());
                }
            }

            LinkedHashSet<JTweet> updateTweets = new LinkedHashSet<JTweet>(twMap.values());
            updateTweets.addAll(findReplies(twMap));
View Full Code Here

Examples of de.jetwick.data.JTweet

                    new TermCreateCommand().setSw1(sw1).setSw2(sw2).setSw3(sw3).setSw4(sw4)).execute();

            List<JTweet> list = new ArrayList<JTweet>(tweets);
            Collection<Integer> failedArticleIndices = bulkUpdate(list, getIndexName());
            for (Integer integ : failedArticleIndices) {
                JTweet tw = list.get(integ);
                tw.setUpdateCount(tw.getUpdateCount() + 1);
                if (tw.getUpdateCount() > 10)
                    logger.warn("PROBLEM: skipped tweet. it failed " + tw.getUpdateCount() + " times:" + tw);
                else
                    queueFailedObject(tw);
            }
        } catch (Exception e) {
            logger.error("Exception while updating.", e);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.