List of usage examples for twitter4j Status getInReplyToUserId
long getInReplyToUserId();
From source file:ac.simons.tweetarchive.tweets.TweetStorageService.java
License:Apache License
@Transactional public TweetEntity store(final Status status, final String rawContent) { final Optional<TweetEntity> existingTweet = this.tweetRepository.findOne(status.getId()); if (existingTweet.isPresent()) { final TweetEntity rv = existingTweet.get(); log.warn("Tweet with status {} already existed...", rv.getId()); return rv; }/*from w ww. j a va 2 s . c o m*/ final TweetEntity tweet = new TweetEntity(status.getId(), status.getUser().getId(), status.getUser().getScreenName(), status.getCreatedAt().toInstant().atZone(ZoneId.of("UTC")), extractContent(status), extractSource(status), rawContent); tweet.setCountryCode(Optional.ofNullable(status.getPlace()).map(Place::getCountryCode).orElse(null)); if (status.getInReplyToStatusId() != -1L && status.getInReplyToUserId() != -1L && status.getInReplyToScreenName() != null) { tweet.setInReplyTo(new InReplyTo(status.getInReplyToStatusId(), status.getInReplyToScreenName(), status.getInReplyToUserId())); } tweet.setLang(status.getLang()); tweet.setLocation(Optional.ofNullable(status.getGeoLocation()) .map(g -> new TweetEntity.Location(g.getLatitude(), g.getLongitude())).orElse(null)); // TODO Handle quoted tweets return this.tweetRepository.save(tweet); }
From source file:au.net.moon.tSearchArchiver.SearchArchiver.java
License:Open Source License
SearchArchiver() {
Twitter twitter;/*from w w w . j a v a2 s . c o m*/
int waitBetweenRequests = 2000;
// 2 sec delay between requests to avoid maxing out the API.
Status theTweet;
Query query;
QueryResult result;
// String[] searches;
ArrayList<String> searchQuery = new ArrayList<String>();
ArrayList<Integer> searchId = new ArrayList<Integer>();
int searchIndex;
int totalTweets;
SimpleDateFormat myFormatter = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z");
System.out.println("tSearchArchiver: Loading search queries...");
// Set timezone to UTC for the Twitter created at dates
myFormatter.setTimeZone(TimeZone.getTimeZone("UTC"));
twitterAuthorise twitterAuth = new twitterAuthorise(false);
twitter = twitterAuth.getTwitter();
// Open the old twitter_archive database
openSQLDataBase();
if (isDatabaseReady()) {
// probably should have these in an object not separate arrays?
try {
rs = stmt.executeQuery("select * from searches where active = true");
// perform each search
while (rs.next()) {
// if (searchQuery
searchQuery.add(rs.getString("query"));
searchId.add(rs.getInt("id"));
}
if (rs.wasNull()) {
System.out.println("tSearchArchiver: No searches in the table \"searches\"");
System.exit(30);
} else {
System.out.println("tSearchArchiver: Found " + searchQuery.size() + " searches.");
}
} catch (SQLException e) {
System.out.println("tSearchArchiver: e:" + e.toString());
}
searchIndex = 0;
totalTweets = 0;
// set initial value of i to start from middle of search set
while (searchIndex < searchQuery.size()) {
query = new Query();
query.setQuery(searchQuery.get(searchIndex));
// check to see if their are any tweets already in the database for
// this search
//TODO: Change this to look in new raw data files for each search instead
long max_tw_id = 0;
try {
rs = stmt.executeQuery("select max(tweet_id) as max_id from archive where search_id = "
+ searchId.get(searchIndex));
if (rs.next()) {
max_tw_id = rs.getLong("max_id");
// System.out.println("MaxID: " + max_tw_id);
query.setSinceId(max_tw_id);
}
} catch (SQLException e1) {
System.err.println("tSearchArchiver: Error looking for maximum tweet_id for " + query.getQuery()
+ " in archive");
e1.printStackTrace();
}
// System.out.println("Starting searching for tweets for: " +
// query.getQuery());
// new style replacement for pagination
// Query query = new Query("whatEverYouWantToSearch");
// do {
// result = twitter.search(query);
// System.out.println(result);
// do something
// } while ((query = result.nextQuery()) != null);
// TODO: check if twitter4j is doing all the backing off handling already
int tweetCount = 0;
Boolean searching = true;
do {
// delay waitBetweenRequests milliseconds before making request
// to make sure not overloading API
try {
Thread.sleep(waitBetweenRequests);
} catch (InterruptedException e1) {
System.err.println("tSearchArchiver: Sleep between requests failed.");
e1.printStackTrace();
}
try {
result = twitter.search(query);
} catch (TwitterException e) {
System.out.println(e.getStatusCode());
System.out.println(e.toString());
if (e.getStatusCode() == 503) {
// TODO use the Retry-After header value to delay & then
// retry the request
System.out
.println("tSearchArchiver: Delaying for 10 minutes before making new request");
try {
Thread.sleep(600000);
} catch (InterruptedException e1) {
System.err.println(
"tSearchArchiver: Sleep for 10 minutes because of API load failed.");
e1.printStackTrace();
}
}
result = null;
}
if (result != null) {
List<Status> results = result.getTweets();
if (results.size() == 0) {
searching = false;
} else {
tweetCount += results.size();
for (int j = 0; j < results.size(); j++) {
theTweet = (Status) results.get(j);
String cleanText = theTweet.getText();
cleanText = cleanText.replaceAll("'", "'");
cleanText = cleanText.replaceAll("\"", """);
try {
stmt.executeUpdate("insert into archive values (0, " + searchId.get(searchIndex)
+ ", '" + theTweet.getId() + "', now())");
} catch (SQLException e) {
System.err.println("tSearchArchiver: Insert into archive failed.");
System.err.println(searchId.get(searchIndex) + ", " + theTweet.getId());
e.printStackTrace();
}
// TODO: change to storing in file instead of database
try {
rs = stmt.executeQuery("select id from tweets where id = " + theTweet.getId());
} catch (SQLException e) {
System.err.println(
"tSearchArchiver: checking for tweet in tweets archive failed.");
e.printStackTrace();
}
Boolean tweetNotInArchive = false;
try {
tweetNotInArchive = !rs.next();
} catch (SQLException e) {
System.err.println(
"tSearchArchiver: checking for tweet in archive failed at rs.next().");
e.printStackTrace();
}
if (tweetNotInArchive) {
String tempLangCode = "";
// getIsoLanguageCode() has been removed from twitter4j
// looks like it might be added back in in the next version
// if (tweet.getIsoLanguageCode() != null) {
// if (tweet.getIsoLanguageCode().length() > 2) {
// System.out
// .println("tSearchArchiver Error: IsoLanguageCode too long: >"
// + tweet.getIsoLanguageCode()
// + "<");
// tempLangCode = tweet
// .getIsoLanguageCode()
// .substring(0, 2);
// } else {
// tempLangCode = tweet
// .getIsoLanguageCode();
// }
// }
double myLatitude = 0;
double myLongitude = 0;
int hasGeoCode = 0;
if (theTweet.getGeoLocation() != null) {
System.out.println("GeoLocation: " + theTweet.getGeoLocation().toString());
myLatitude = theTweet.getGeoLocation().getLatitude();
myLongitude = theTweet.getGeoLocation().getLongitude();
hasGeoCode = 1;
}
Date tempCreatedAt = theTweet.getCreatedAt();
String myDate2 = myFormatter
.format(tempCreatedAt, new StringBuffer(), new FieldPosition(0))
.toString();
totalTweets++;
try {
stmt.executeUpdate("insert into tweets values (" + theTweet.getId() + ", '"
+ tempLangCode + "', '" + theTweet.getSource() + "', '" + cleanText
+ "', '" + myDate2 + "', '" + theTweet.getInReplyToUserId() + "', '"
+ theTweet.getInReplyToScreenName() + "', '"
+ theTweet.getUser().getId() + "', '"
+ theTweet.getUser().getScreenName() + "', '" + hasGeoCode + "',"
+ myLatitude + ", " + myLongitude + ", now())");
} catch (SQLException e) {
System.err.println("tSearchArchiver: Insert into tweets failed.");
System.err.println(theTweet.getId() + ", '" + tempLangCode + "', '"
+ theTweet.getSource() + "', '" + cleanText + "', '" + myDate2
+ "', '" + theTweet.getInReplyToUserId() + "', '"
+ theTweet.getInReplyToScreenName() + "', '"
+ theTweet.getUser().getId() + "', '"
+ theTweet.getUser().getScreenName());
e.printStackTrace();
}
}
}
}
}
} while ((query = result.nextQuery()) != null && searching);
if (tweetCount > 0) {
System.out.println("tSearchArchiver: New Tweets Found for \"" + searchQuery.get(searchIndex)
+ "\" = " + tweetCount);
} else {
// System.out.println("tSearchArchiver: No Tweets Found for \""
// + searchQuery.get(searchIndex) + "\" = " + tweetCount);
}
try {
stmt.executeUpdate("update searches SET lastFoundCount=" + tweetCount
+ ", lastSearchDate=now() where id=" + searchId.get(searchIndex));
} catch (SQLException e) {
System.err.println("tSearchArchiver: failed to update searches with lastFoundCount="
+ tweetCount + " and datetime for search: " + searchId.get(searchIndex));
e.printStackTrace();
}
searchIndex++;
}
System.out.println("tSearchArchiver: Completed all " + searchQuery.size() + " searches");
System.out.println("tSearchArchiver: Archived " + totalTweets + " new tweets");
}
}
From source file:au.net.moon.tUtils.twitterFields.java
License:Open Source License
/** * Get a <CODE>HashMap</CODE> of tweet fields by parsing a twitter4j Status * // w w w.ja v a 2s. co m * @param status * the twitter4j Status object * @return the tweet fields as name, value pairs in a <CODE>HashMap</CODE>. */ public static HashMap<String, String> parseStatusObj(Status status) { HashMap<String, String> splitFields = new HashMap<String, String>(); splitFields.put("createdAt", status.getCreatedAt().toString()); splitFields.put("id", Long.toString(status.getId())); splitFields.put("text", status.getText()); splitFields.put("source", status.getSource()); splitFields.put("isTruncated", status.isTruncated() ? "1" : "0"); splitFields.put("inReplyToStatusId", Long.toString(status.getInReplyToStatusId())); splitFields.put("inReplyToUserId", Long.toString(status.getInReplyToUserId())); splitFields.put("isFavorited", status.isFavorited() ? "1" : "0"); splitFields.put("inReplyToScreenName", status.getInReplyToScreenName()); if (status.getGeoLocation() != null) { splitFields.put("geoLocation", status.getGeoLocation().toString()); } else { splitFields.put("geoLocation", ""); } if (status.getPlace() != null) { splitFields.put("place", status.getPlace().toString()); } else { splitFields.put("place", ""); } splitFields.put("retweetCount", Long.toString(status.getRetweetCount())); splitFields.put("wasRetweetedByMe", status.isRetweetedByMe() ? "1" : "0"); String contributors = ""; if (status.getContributors() != null) { long[] tempContributors = status.getContributors(); for (int i = 0; i < tempContributors.length; i++) { contributors += Long.toString(tempContributors[i]); if (i != tempContributors.length - 1) { contributors += ", "; } } } splitFields.put("contributors", contributors); splitFields.put("annotations", ""); if (status.getRetweetedStatus() != null) { splitFields.put("retweetedStatus", "1"); } else { splitFields.put("retweetedStatus", "0"); } splitFields.put("userMentionEntities", status.getUserMentionEntities().toString()); splitFields.put("urlEntities", status.getURLEntities().toString()); splitFields.put("hashtagEntities", status.getHashtagEntities().toString()); splitFields.put("user", status.getUser().toString()); return splitFields; }
From source file:br.com.porcelli.hornetq.integration.twitter.support.TweetMessageConverterSupport.java
License:Apache License
public static ServerMessage buildMessage(final String queueName, final Status status) { final ServerMessage msg = new ServerMessageImpl(status.getId(), InternalTwitterConstants.INITIAL_MESSAGE_BUFFER_SIZE); msg.setAddress(new SimpleString(queueName)); msg.setDurable(true);//w w w . j a v a 2 s .c o m msg.putStringProperty(TwitterConstants.KEY_MSG_TYPE, MessageType.TWEET.toString()); msg.putStringProperty(TwitterConstants.KEY_CREATED_AT, read(status.getCreatedAt())); msg.putStringProperty(TwitterConstants.KEY_ID, read(status.getId())); msg.putStringProperty(TwitterConstants.KEY_TEXT, read(status.getText())); msg.putStringProperty(TwitterConstants.KEY_SOURCE, read(status.getSource())); msg.putStringProperty(TwitterConstants.KEY_TRUNCATED, read(status.isTruncated())); msg.putStringProperty(TwitterConstants.KEY_IN_REPLY_TO_STATUS_ID, read(status.getInReplyToStatusId())); msg.putStringProperty(TwitterConstants.KEY_IN_REPLY_TO_USER_ID, read(status.getInReplyToUserId())); msg.putStringProperty(TwitterConstants.KEY_IN_REPLY_TO_SCREEN_NAME, read(status.getInReplyToScreenName())); msg.putStringProperty(TwitterConstants.KEY_RETWEET, read(status.isRetweet())); msg.putStringProperty(TwitterConstants.KEY_FAVORITED, read(status.isFavorited())); msg.putStringProperty(TwitterConstants.KEY_ENTITIES_URLS_JSON, read(status.getURLEntities())); msg.putStringProperty(TwitterConstants.KEY_ENTITIES_HASHTAGS_JSON, read(status.getHashtagEntities())); msg.putStringProperty(TwitterConstants.KEY_ENTITIES_MENTIONS_JSON, read(status.getUserMentionEntities())); msg.putStringProperty(TwitterConstants.KEY_CONTRIBUTORS_JSON, read(status.getContributors())); if (status.getUser() != null) { buildUserData("", status.getUser(), msg); } GeoLocation gl; if ((gl = status.getGeoLocation()) != null) { msg.putStringProperty(TwitterConstants.KEY_GEO_LATITUDE, read(gl.getLatitude())); msg.putStringProperty(TwitterConstants.KEY_GEO_LONGITUDE, read(gl.getLongitude())); } Place place; if ((place = status.getPlace()) != null) { msg.putStringProperty(TwitterConstants.KEY_PLACE_ID, read(place.getId())); msg.putStringProperty(TwitterConstants.KEY_PLACE_URL, read(place.getURL())); msg.putStringProperty(TwitterConstants.KEY_PLACE_NAME, read(place.getName())); msg.putStringProperty(TwitterConstants.KEY_PLACE_FULL_NAME, read(place.getFullName())); msg.putStringProperty(TwitterConstants.KEY_PLACE_COUNTRY_CODE, read(place.getCountryCode())); msg.putStringProperty(TwitterConstants.KEY_PLACE_COUNTRY, read(place.getCountry())); msg.putStringProperty(TwitterConstants.KEY_PLACE_STREET_ADDRESS, read(place.getStreetAddress())); msg.putStringProperty(TwitterConstants.KEY_PLACE_TYPE, read(place.getPlaceType())); msg.putStringProperty(TwitterConstants.KEY_PLACE_GEO_TYPE, read(place.getGeometryType())); msg.putStringProperty(TwitterConstants.KEY_PLACE_BOUNDING_BOX_TYPE, read(place.getBoundingBoxType())); msg.putStringProperty(TwitterConstants.KEY_PLACE_BOUNDING_BOX_COORDINATES_JSON, read(place.getBoundingBoxCoordinates().toString())); msg.putStringProperty(TwitterConstants.KEY_PLACE_BOUNDING_BOX_GEOMETRY_COORDINATES_JSON, read(place.getGeometryCoordinates().toString())); } msg.putStringProperty(TwitterConstants.KEY_RAW_JSON, status.toString()); return msg; }
From source file:com.aremaitch.codestock2010.repository.TweetObj.java
License:Apache License
public static TweetObj createInstance(Status status) { TweetObj to = new TweetObj(); to.setId(status.getId());/* ww w . j ava 2 s . com*/ to.setText(status.getText()); to.setToUserId(status.getInReplyToUserId()); to.setToUser(status.getInReplyToScreenName()); if (status.getUser() != null) { to.setFromUser(status.getUser().getScreenName()); to.setFromUserId(status.getUser().getId()); to.setIsoLanguageCode(status.getUser().getLang()); to.setProfileImageUrl(status.getUser().getProfileBackgroundImageUrl()); } to.setSource(status.getSource()); to.setCreatedAt(status.getCreatedAt()); if (status.getGeoLocation() != null) { to.setLatitude(status.getGeoLocation().getLatitude()); to.setLongitude(status.getGeoLocation().getLongitude()); } return to; }
From source file:com.github.jcustenborder.kafka.connect.twitter.StatusConverter.java
License:Apache License
public static void convert(Status status, Struct struct) { struct.put("CreatedAt", status.getCreatedAt()).put("Id", status.getId()).put("Text", status.getText()) .put("Source", status.getSource()).put("Truncated", status.isTruncated()) .put("InReplyToStatusId", status.getInReplyToStatusId()) .put("InReplyToUserId", status.getInReplyToUserId()) .put("InReplyToScreenName", status.getInReplyToScreenName()).put("Favorited", status.isFavorited()) .put("Retweeted", status.isRetweeted()).put("FavoriteCount", status.getFavoriteCount()) .put("Retweet", status.isRetweet()).put("RetweetCount", status.getRetweetCount()) .put("RetweetedByMe", status.isRetweetedByMe()) .put("CurrentUserRetweetId", status.getCurrentUserRetweetId()) .put("PossiblySensitive", status.isPossiblySensitive()).put("Lang", status.getLang()); Struct userStruct;/*from w w w .j a va 2 s .c om*/ if (null != status.getUser()) { userStruct = new Struct(USER_SCHEMA); convert(status.getUser(), userStruct); } else { userStruct = null; } struct.put("User", userStruct); Struct placeStruct; if (null != status.getPlace()) { placeStruct = new Struct(PLACE_SCHEMA); convert(status.getPlace(), placeStruct); } else { placeStruct = null; } struct.put("Place", placeStruct); Struct geoLocationStruct; if (null != status.getGeoLocation()) { geoLocationStruct = new Struct(GEO_LOCATION_SCHEMA); convert(status.getGeoLocation(), geoLocationStruct); } else { geoLocationStruct = null; } struct.put("GeoLocation", geoLocationStruct); List<Long> contributers = new ArrayList<>(); if (null != status.getContributors()) { for (Long l : status.getContributors()) { contributers.add(l); } } struct.put("Contributors", contributers); List<String> withheldInCountries = new ArrayList<>(); if (null != status.getWithheldInCountries()) { for (String s : status.getWithheldInCountries()) { withheldInCountries.add(s); } } struct.put("WithheldInCountries", withheldInCountries); struct.put("HashtagEntities", convert(status.getHashtagEntities())); struct.put("UserMentionEntities", convert(status.getUserMentionEntities())); struct.put("MediaEntities", convert(status.getMediaEntities())); struct.put("SymbolEntities", convert(status.getSymbolEntities())); struct.put("URLEntities", convert(status.getURLEntities())); }
From source file:com.javielinux.infos.InfoTweet.java
License:Apache License
public InfoTweet(Status status) { urls = new ArrayList<URLContent>(); mTypeFrom = FROM_STATUS;/* ww w .j av a 2 s . c o m*/ id = status.getId(); urlAvatar = status.getUser().getProfileImageURL().toString(); userId = status.getUser().getId(); text = status.getText(); username = status.getUser().getScreenName(); fullname = status.getUser().getName(); source = status.getSource(); toUsername = status.getInReplyToScreenName(); toUserId = status.getInReplyToUserId(); createAt = status.getCreatedAt(); toReplyId = status.getInReplyToStatusId(); favorited = status.isFavorited(); if (status.getGeoLocation() != null) { latitude = status.getGeoLocation().getLatitude(); longitude = status.getGeoLocation().getLongitude(); } if (status.getRetweetedStatus() != null) { retweet = true; urlAvatarRetweet = status.getRetweetedStatus().getUser().getProfileImageURL().toString(); textRetweet = status.getRetweetedStatus().getText(); usernameRetweet = status.getRetweetedStatus().getUser().getScreenName(); fullnameRetweet = status.getRetweetedStatus().getUser().getName(); sourceRetweet = status.getRetweetedStatus().getSource(); } urlTweet = "http://twitter.com/#!/" + username.toLowerCase() + PREFIX_URL_TWITTER + id; calculateLinks(); }
From source file:com.marpies.ane.twitter.utils.StatusUtils.java
License:Apache License
/** * Creates JSON from given response list and dispatches generic event. * Helper method for queries like getHomeTimeline, getLikes... * @param statuses//from w w w.ja v a2s . com * @param excludeReplies * @param callbackID */ public static void dispatchStatuses(ResponseList<Status> statuses, boolean excludeReplies, final int callbackID) { try { AIR.log("Got response with " + statuses.size() + " statuses" + (excludeReplies ? " (yet to filter out replies)" : "")); /* Create array of statuses (tweets) */ JSONArray tweets = new JSONArray(); for (Status status : statuses) { /* Exclude reply if requested */ if (excludeReplies && status.getInReplyToUserId() >= 0) continue; /* Create JSON for the status and put it to the array */ JSONObject statusJSON = getJSON(status); tweets.put(statusJSON.toString()); } JSONObject result = new JSONObject(); result.put("statuses", tweets); result.put("listenerID", callbackID); AIR.dispatchEvent(AIRTwitterEvent.TIMELINE_QUERY_SUCCESS, result.toString()); } catch (JSONException e) { AIR.dispatchEvent(AIRTwitterEvent.TIMELINE_QUERY_ERROR, StringUtils.getEventErrorJSON(callbackID, "Error creating result JSON: " + e.getMessage())); } }
From source file:com.marpies.ane.twitter.utils.StatusUtils.java
License:Apache License
public static JSONObject getJSON(Status status) throws JSONException { JSONObject statusJSON = new JSONObject(); statusJSON.put("id", status.getId()); statusJSON.put("idStr", String.valueOf(status.getId())); statusJSON.put("text", status.getText()); statusJSON.put("replyToUserID", status.getInReplyToUserId()); statusJSON.put("replyToStatusID", status.getInReplyToStatusId()); statusJSON.put("likesCount", status.getFavoriteCount()); statusJSON.put("retweetCount", status.getRetweetCount()); statusJSON.put("isRetweet", status.isRetweet()); statusJSON.put("isSensitive", status.isPossiblySensitive()); statusJSON.put("createdAt", status.getCreatedAt()); Status retweetedStatus = status.getRetweetedStatus(); if (retweetedStatus != null) { statusJSON.put("retweetedStatus", getJSON(retweetedStatus)); }/*from w w w . j av a 2s . c o m*/ User user = status.getUser(); if (user != null) { statusJSON.put("user", UserUtils.getJSON(user)); } return statusJSON; }
From source file:com.raythos.sentilexo.twitter.domain.QueryResultItemMapper.java
License:Apache License
public static Map getFieldsMapFromStatus(String queryOwner, String queryName, String queryString, Status status) { if (queryName != null) queryName = queryName.toLowerCase(); if (queryOwner != null) queryOwner = queryOwner.toLowerCase(); Map m = StatusArraysHelper.getUserMentionMap(status); Map newMap = new HashMap(); for (Object key : m.keySet()) { newMap.put(key.toString(), (Long) m.get(key)); }//from w ww . j av a 2s.com Double longitude = null; Double lattitude = null; if (status.getGeoLocation() != null) { longitude = status.getGeoLocation().getLongitude(); lattitude = status.getGeoLocation().getLatitude(); } String place = null; if (status.getPlace() != null) { place = status.getPlace().getFullName(); } boolean isRetweet = status.getRetweetedStatus() != null; Long retweetedId = null; String retweetedText = null; if (isRetweet) { retweetedId = status.getRetweetedStatus().getId(); retweetedText = status.getRetweetedStatus().getText(); } Map<String, Object> result = new HashMap<>(); result.put(QueryResultItemFieldNames.STATUS_ID, status.getId()); result.put(QueryResultItemFieldNames.CREATED_AT, status.getCreatedAt()); result.put(QueryResultItemFieldNames.CURRENT_USER_RETWEET_ID, status.getCurrentUserRetweetId()); result.put(QueryResultItemFieldNames.FAVOURITE_COUNT, status.getFavoriteCount()); result.put(QueryResultItemFieldNames.FAVOURITED, status.isFavorited()); result.put(QueryResultItemFieldNames.HASHTAGS, StatusArraysHelper.getHashTagsList(status)); result.put(QueryResultItemFieldNames.IN_REPLY_TO_SCREEN_NAME, (status.getInReplyToScreenName())); result.put(QueryResultItemFieldNames.IN_REPLY_TO_STATUS_ID, status.getInReplyToStatusId()); result.put(QueryResultItemFieldNames.IN_REPLY_TO_USER_ID, status.getInReplyToUserId()); result.put(QueryResultItemFieldNames.LATITUDE, lattitude); result.put(QueryResultItemFieldNames.LONGITUDE, longitude); result.put(QueryResultItemFieldNames.MENTIONS, newMap); result.put(QueryResultItemFieldNames.LANGUAGE, status.getLang()); result.put(QueryResultItemFieldNames.PLACE, place); result.put(QueryResultItemFieldNames.POSSIBLY_SENSITIVE, status.isPossiblySensitive()); result.put(QueryResultItemFieldNames.QUERY_NAME, queryName); result.put(QueryResultItemFieldNames.QUERY_OWNER, queryOwner); result.put(QueryResultItemFieldNames.QUERY, queryString); result.put(QueryResultItemFieldNames.RELEVANT_QUERY_TERMS, TwitterUtils.relevantQueryTermsFromStatus(queryString, status)); result.put(QueryResultItemFieldNames.RETWEET, isRetweet); result.put(QueryResultItemFieldNames.RETWEET_COUNT, status.getRetweetCount()); result.put(QueryResultItemFieldNames.RETWEETED, status.isRetweeted()); result.put(QueryResultItemFieldNames.RETWEETED_BY_ME, status.isRetweetedByMe()); result.put(QueryResultItemFieldNames.RETWEET_STATUS_ID, retweetedId); result.put(QueryResultItemFieldNames.RETWEETED_TEXT, retweetedText); result.put(QueryResultItemFieldNames.SCOPES, StatusArraysHelper.getScopesList(status)); result.put(QueryResultItemFieldNames.SCREEN_NAME, status.getUser().getScreenName()); result.put(QueryResultItemFieldNames.SOURCE, (status.getSource())); result.put(QueryResultItemFieldNames.TEXT, (status.getText())); result.put(QueryResultItemFieldNames.TRUNCATED, status.isTruncated()); result.put(QueryResultItemFieldNames.URLS, StatusArraysHelper.getUrlsList(status)); result.put(QueryResultItemFieldNames.USER_ID, status.getUser().getId()); result.put(QueryResultItemFieldNames.USER_NAME, (status.getUser().getName())); result.put(QueryResultItemFieldNames.USER_DESCRIPTION, (status.getUser().getDescription())); result.put(QueryResultItemFieldNames.USER_LOCATION, (status.getUser().getLocation())); result.put(QueryResultItemFieldNames.USER_URL, (status.getUser().getURL())); result.put(QueryResultItemFieldNames.USER_IS_PROTECTED, status.getUser().isProtected()); result.put(QueryResultItemFieldNames.USER_FOLLOWERS_COUNT, status.getUser().getFollowersCount()); result.put(QueryResultItemFieldNames.USER_CREATED_AT, status.getUser().getCreatedAt()); result.put(QueryResultItemFieldNames.USER_FRIENDS_COUNT, status.getUser().getFriendsCount()); result.put(QueryResultItemFieldNames.USER_LISTED_COUNT, status.getUser().getListedCount()); result.put(QueryResultItemFieldNames.USER_STATUSES_COUNT, status.getUser().getStatusesCount()); result.put(QueryResultItemFieldNames.USER_FAVOURITES_COUNT, status.getUser().getFavouritesCount()); return result; }