@Override public void onStatus(Status status) { HashtagEntity[] hashtagEntities = status.getHashtagEntities(); JetstreamEvent event = new JetstreamEvent(); event.setEventType("TwitterSample"); Place place = status.getPlace(); if (place != null) { event.put("country", place.getCountry()); } event.put("ct", status.getCreatedAt().getTime()); event.put("text", status.getText()); event.put("lang", status.getLang()); event.put("user", status.getUser().getName()); if (hashtagEntities != null && hashtagEntities.length > 0) { StringBuilder s = new StringBuilder(); s.append(hashtagEntities[0].getText()); for (int i = 1; i < hashtagEntities.length; i++) { s.append(","); s.append(hashtagEntities[i].getText()); } event.put("hashtag", s.toString()); } fireSendEvent(event); }
/** * Retrieves the State from Place Object of the Tweet. * * @param status -- Status Object. * @param state -- Current State. * @return State of tweet. */ private final String getStateFromTweetPlaceObject(final Status status, String state) { final Place place = status.getPlace(); if (null == state && null != place) { final String placeName = place.getFullName(); if (null != placeName && 2 < placeName.length()) { final String stateFromPlaceObject = placeName.substring(placeName.length() - 2); LOGGER.debug("State from Place:{}", stateFromPlaceObject); state = (2 == stateFromPlaceObject.length())? stateFromPlaceObject.toUpperCase(): null; } } return state; }
@Override public void execute(TridentTuple tuple, TridentCollector collector) { Status status = (Status) tuple.get(0); Content content = (Content) tuple.get(1); collector.emit(new Values(status.getPlace().getCountryCode(), content.getContentName())); } }
if (tweet.getPlace() != null) { Content place = newBase(tweet); place.setContentName(tweet.getPlace().getCountryCode()); place.setContentType("place_country-code"); contents.add(place); if (tweet.getPlace() != null) { Content place = newBase(tweet); String placeNormalized = tweet.getPlace().getFullName(); place.setContentName(placeNormalized); place.setContentType("place_fullname");
status.geo = coords; final Place place = this.status.getPlace(); if (place != null) { status.location = place.getName();
status.geo = coords; final Place place = this.status.getPlace(); if (place != null) { status.location = place.getName();