/** {@inheritDoc} */ @Override public void updateStory( String message, String name, String caption, String description, String link, String picture, final SocialCallbacks.SocialActionListener socialActionListener) { if (!isInitialized) { return; } SoomlaUtils.LogDebug(TAG, "updateStory"); RefProvider = getProvider(); RefSocialActionListener = socialActionListener; preformingAction = ACTION_PUBLISH_STORY; try { twitter.updateStatus(message + " " + link); } catch (Exception e) { failListener(ACTION_PUBLISH_STORY, e.getMessage()); } }
public void onDisable() { try { if (connection != null && !connection.isClosed()) { connection.close(); } } catch (Exception e) { // e.printStackTrace(); this.getLogger().warning("Couldn't close MySQL Connection: " + e.getMessage() + "\n"); } }
/** {@inheritDoc} */ @Override public void getUserProfile(final AuthCallbacks.UserProfileListener userProfileListener) { if (!isInitialized) { return; } SoomlaUtils.LogDebug(TAG, "getUserProfile"); RefProvider = getProvider(); RefUserProfileListener = userProfileListener; preformingAction = ACTION_GET_USER_PROFILE; try { twitter.showUser(twitterScreenName); } catch (Exception e) { failListener(ACTION_GET_USER_PROFILE, e.getMessage()); } }
/** {@inheritDoc} */ @Override public void updateStatus( String status, final SocialCallbacks.SocialActionListener socialActionListener) { if (!isInitialized) { return; } SoomlaUtils.LogDebug(TAG, "updateStatus"); RefProvider = getProvider(); RefSocialActionListener = socialActionListener; preformingAction = ACTION_PUBLISH_STATUS; try { twitter.updateStatus(status); } catch (Exception e) { failListener(ACTION_PUBLISH_STATUS, e.getMessage()); } }
/** {@inheritDoc} */ @Override public void getContacts( boolean fromStart, final SocialCallbacks.ContactsListener contactsListener) { if (!isInitialized) { return; } SoomlaUtils.LogDebug(TAG, "getContacts"); RefProvider = getProvider(); RefContactsListener = contactsListener; preformingAction = ACTION_GET_USER_PROFILE; try { twitter.getFriendsList(twitterScreenName, fromStart ? -1 : this.lastContactCursor); this.lastContactCursor = -1; } catch (Exception e) { failListener(ACTION_GET_USER_PROFILE, e.getMessage()); } }
/** {@inheritDoc} */ @Override public void uploadImage( String message, String filePath, final SocialCallbacks.SocialActionListener socialActionListener) { if (!isInitialized) { return; } SoomlaUtils.LogDebug(TAG, "uploadImage"); RefProvider = getProvider(); RefSocialActionListener = socialActionListener; preformingAction = ACTION_UPLOAD_IMAGE; try { StatusUpdate updateImage = new StatusUpdate(message); updateImage.media(new File(filePath)); twitter.updateStatus(updateImage); } catch (Exception e) { failListener(ACTION_UPLOAD_IMAGE, e.getMessage()); } }
/** {@inheritDoc} */ @Override public void getFeed(Boolean fromStart, final SocialCallbacks.FeedListener feedListener) { if (!isInitialized) { return; } SoomlaUtils.LogDebug(TAG, "getFeed"); RefProvider = getProvider(); RefFeedListener = feedListener; preformingAction = ACTION_GET_FEED; try { if (fromStart) { this.lastFeedCursor = 1; } Paging paging = new Paging(this.lastFeedCursor, PAGE_SIZE); twitter.getUserTimeline(paging); } catch (Exception e) { failListener(ACTION_GET_FEED, e.getMessage()); } }
public List<Tweet> readFile(String fileLocation, int limit, String fromTweetId) { long startTime = System.currentTimeMillis(); int errors = 0; int added = 0; int ignored = 0; int skipped = 0; List<Tweet> tweets = new ArrayList<Tweet>(); try { // Read gzFile InputStream inputStream = new GZIPInputStream(new FileInputStream(fileLocation)); Reader decoder = new InputStreamReader(inputStream); BufferedReader br = new BufferedReader(decoder); String status; while ((status = br.readLine()) != null) { // Ignore garbage and log output lines, all statuses start with JSON bracket if (!status.equals("") && status.charAt(0) == '{') { try { JSONObject jsonObject = new JSONObject(status); // We use created_at as an indicator that this is a Tweet. if (jsonObject.has("created_at")) { Status statusObject = TwitterObjectFactory.createStatus(status); Tweet tweet = this.getTweetObjectFromStatus(statusObject); if (fromTweetId != null) { if (fromTweetId.equals(tweet.getId())) { this.log.write("StatusFileReader - Scanner pickup from " + fromTweetId); fromTweetId = null; } else { skipped++; } continue; } added++; tweets.add(tweet); if (limit > 0 && added >= limit) { break; } } else { ignored++; } } catch (JSONException e) { this.log.write( "Exception in StatusFileReader: Json Parse Failure on: " + status + ", " + e.getMessage()); } } else { ignored++; } } br.close(); decoder.close(); inputStream.close(); } catch (Exception e) { this.log.write( "Exception in StatusFileReader: Error Reading File: " + e.getClass().getName() + ": " + e.getMessage()); } long runTimeSeconds = TimeUnit.MILLISECONDS.toSeconds(System.currentTimeMillis() - startTime); double ops = ((double) added / (double) Math.max(runTimeSeconds, 1)); this.log.write( "StatusFileReader - " + fileLocation + " processed in " + runTimeSeconds + "s. " + added + " ok / " + errors + " errors / " + ignored + " ignored / " + skipped + " skipped. " + ops + " ops. Limit: " + limit + ", Fetch: " + tweets.size()); return tweets; }