Examples of JTweet


Examples of de.jetwick.data.JTweet

    }

    @Test
    public void testLanguageDetection2() {
        JUser user = new JUser("peter");
        JTweet tw1 = new JTweet(0, "this is lastwordIsNotRecognizedBecauseItCouldBeStrippedOut", user);
        execute(tw1);
        assertEquals(2, tw1.getLanguages().get(TweetDetector.EN).intValue());
        assertEquals(TweetDetector.UNKNOWN_LANG, tw1.getLanguage());

        // now the language is detected because a lot noise NOISE_WORDS were found
        JTweet tw = new JTweet(2, "viele ist dort deutscher Tweet!", user);
        execute(tw);
        assertEquals(TweetDetector.DE, tw.getLanguage());

        user = new JUser("peter");
        tw = new JTweet(3L, "Togos with @munckytown on lunch break. "
                + "Hall and Oates \"kiss on my list\" is playing... groovy", user);
        execute(tw);
        assertEquals(TweetDetector.EN, tw.getLanguage());

        user = new JUser("peter");
        tw = new JTweet(4L, "@ibood Bedankt voor de code! :-)", user);
        execute(tw);
        // only de and en are known so detect as unknown!
        assertEquals(TweetDetector.UNKNOWN_LANG, tw.getLanguage());

        // now detect the nl language
        tw = new JTweet(5L, "@MrDeek Klinkt goed toch, een bestek set is altijd leuk om te krijgen of te geven!", user);
        execute(tw);
        assertEquals(TweetDetector.NL, tw.getLanguage());
    }
View Full Code Here

Examples of de.jetwick.data.JTweet

        assertEquals(TweetDetector.NL, tw.getLanguage());
    }

    @Test
    public void testLanguageDetection3() {
        JTweet tw = new JTweet(1L, "tmptext", new JUser("tmp"));
        tw.getLanguages().inc("de", 1);
        StringFreqMap otherLanguages = new StringFreqMap();
        assertEquals(TweetDetector.UNKNOWN_LANG, new TermCreateCommand().detectLanguage(tw, otherLanguages));

        tw = new JTweet(1L, "tmptext", new JUser("tmp"));
        tw.getLanguages().inc("de", 2);
        otherLanguages = new StringFreqMap().set("de", 1);
        assertEquals("de", new TermCreateCommand().detectLanguage(tw, otherLanguages));

        tw = new JTweet(1L, "tmptext", new JUser("tmp"));
        tw.getLanguages().inc(TweetDetector.UNKNOWN_LANG, 2);
        tw.getLanguages().inc("de", 2);
        otherLanguages = new StringFreqMap().set("de", 1);
        assertEquals("de", new TermCreateCommand().detectLanguage(tw, otherLanguages));

        tw = new JTweet(1L, "tmptext", new JUser("tmp"));
        tw.getLanguages().inc(TweetDetector.UNKNOWN_LANG, 2);
        tw.getLanguages().inc("de", 2);
        tw.getLanguages().inc("en", 2);
        otherLanguages = new StringFreqMap().set("de", 1).set("en", 1);
        assertEquals(TweetDetector.UNKNOWN_LANG, new TermCreateCommand().detectLanguage(tw, otherLanguages));
    }
View Full Code Here

Examples of de.jetwick.data.JTweet

    public static void main(String args[]) throws Exception {
        DefaultModule module = new DefaultModule();
        Injector injector = Guice.createInjector(module);
        RMIClient rmiProvider = injector.getInstance(RMIClient.class);
        rmiProvider.send(new JTweet(1L, "test", new JUser("peter")));
    }
View Full Code Here

Examples of de.jetwick.data.JTweet

    }

    @Test
    public void testAutoReverse() {
        // replies <-> inReplyOf
        JTweet tw1 = createTweet(1L, "test1");
        JTweet tw2 = createTweet(2L, "test2");
        tw1.addReply(tw2);
        assertEquals(tw1, tw2.getInReplyOf());
        assertEquals(1L, tw2.getInReplyTwitterId());

        // fromUser <-> ownTweets
        JUser user = new JUser("peter");
        user.addOwnTweet(tw1);
        assertEquals(user, tw1.getFromUser());
View Full Code Here

Examples of de.jetwick.data.JTweet

        assertEquals("text", createTweet(1L, "rt @user: text").extractRTText());
    }

    JTweet createTweet(long id, String text) {
        return new JTweet(id, text, new JUser("tmp"));
    }
View Full Code Here

Examples of de.jetwick.data.JTweet

    JTweet createTweet(long id, String text) {
        return new JTweet(id, text, new JUser("tmp"));
    }
    JTweet createTweet(long id, String text, JUser user) {
        return new JTweet(id, text, user);
    }
View Full Code Here

Examples of de.jetwick.data.JTweet

        for (QueueInfo<JTweet> qi : inputQueues) {
            int batchSize = qi.getBatchSize();
            Queue<JTweet> queue = qi.getQueue();
            int newTweets = 0;
            for (; newTweets < batchSize; newTweets++) {
                JTweet tw = queue.poll();
                if (tw == null)
                    break;

                if (!tw.isPersistent() && tweetCache != null && tweetCache.put(tw.getTwitterId(), OBJECT) != null) {
                    newTweets--;
                    continue;
                }

                if (urlExtractor != null) {
                    for (UrlEntry ue : ((UrlExtractor) urlExtractor.setTweet(tw).run()).getUrlEntries()) {
                        tw.addUrlEntry(ue);
                    }
                }
                feeded++;
                resolver.queueObject(tw);
            }
View Full Code Here

Examples of de.jetwick.data.JTweet

            }

            String url = tw.getUrl();
            boolean alreadyExistent = false;
            for (int i = 0; i < 2; i++) {
                JTweet old = unresolvedCache.put(url, tw);
                if (old != null) {
                    if (tw.getTwitterId() == old.getTwitterId())
                        tw.updateFrom(old);

                    tweetSearch.queueObject(tw);
                    alreadyExistent = true;
                    break;
View Full Code Here

Examples of de.jetwick.data.JTweet

        return null;
    }

    public boolean executeResolve(final int thread) {
        JTweet tweet = null;
        try {
            tweet = resolverQueue.take();
        } catch (Exception ex) {
            if (thread == 0)
                logger.warn("url resolver " + thread + " died " + ex.getMessage());
            return false;
        }

        String origUrl = tweet.getUrl();
        String url = origUrl;
        try {
            boolean doFetch = true;
            String resUrl = fetcher.getResolvedUrl(url, resolveTimeout);
            if (!Helper.isEmpty(resUrl) && resUrl.length() > url.length()) {
                url = resUrl;
                // check if resolved url already exists
                if (exists(resUrl)) {
                    unresolvedCache.remove(resUrl);
                    doFetch = false;
                }
            }
            if (doFetch) {
                JResult res = fetcher.fetchAndExtract(url, resolveTimeout, false);

                // set resolved url
                if (tweet.getUrlEntries().size() > 0) {
                    UrlEntry ue = tweet.getUrlEntries().iterator().next();
                    ue.setResolvedUrl(res.getUrl());
                    ue.setResolvedTitle(res.getTitle());
                    ue.setResolvedSnippet(res.getText());
                    ue.setResolvedDomain(Helper.extractDomain(url));
                }

                if (urlTitleCleaner.contains(res.getTitle()))
                    tweet.setQuality(20);

                if (res.getTitle().isEmpty())
                    emptyTitleCounter.addAndGet(1);
                counter.addAndGet(1);
                if (thread < 3) {
                    float secs = (System.nanoTime() - start.get()) / 1e+9f;
                    logger.info(thread + "| " + counter.get() / secs + " entries/sec"//, secs:" + secs
                            + ", feeded:" + counter
                            + ", resolverQueue.size:" + resolverQueue.size()
                            + ", unresolved.size:" + unresolvedCache.size()
                            + ", tooOld.size:" + tooOldMap.size()
                            + ", empty titles:" + emptyTitleCounter);
                }
            }

        } catch (Exception ex) {
            //logger.info("Error while resolveAndFetch url:" + art.getUrl() + " Error:" + Helper.getMsg(ex));
            tweet.setQuality(Math.round(tweet.getQuality() * 0.8f));
        } finally {
            // always feed the article even if there was an error           
            tweetSearch.queueObject(tweet);

            // real time get ensures that we have at least the url in aindex (not so for origURL!)
            unresolvedCache.remove(tweet.getUrl());

            // DISABLED for now as
//            if (!checkAgainQueue.offer(art))
//                logger.error("checkAgainQueue full. Skipped:" + art.getUrl());
        }
View Full Code Here

Examples of de.jetwick.data.JTweet

        }
        return true;
    }

    boolean isTweetInIndex(JTweet tw) {
        JTweet existing = tweetSearch.findByTwitterId(tw.getTwitterId());
        if (existing != null)
            return true;

        return exists(tw.getUrl());
    }
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.