Sha256: 1d115a0a6abac7dd77c814fd3f5279684ca2acaeb207da43b5bac36d6077d61e
Contents?: true
Size: 974 Bytes
Versions: 4
Compression:
Stored size: 974 Bytes
Contents
module Twitter module Streaming class Event LIST_EVENTS = [ :list_created, :list_destroyed, :list_updated, :list_member_added, :list_member_added, :list_member_removed, :list_user_subscribed, :list_user_subscribed, :list_user_unsubscribed, :list_user_unsubscribed ] TWEET_EVENTS = [ :favorite, :unfavorite ] attr_reader :name, :source, :target, :target_object # @param data [Hash] def initialize(data) @name = data[:event].to_sym @source = Twitter::User.new(data[:source]) @target = Twitter::User.new(data[:target]) @target_object = target_object_factory(@name, data[:target_object]) end private def target_object_factory(event_name, data) if LIST_EVENTS.include?(event_name) Twitter::List.new(data) elsif TWEET_EVENTS.include?(event_name) Twitter::Tweet.new(data) end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
twitter-5.15.0 | lib/twitter/streaming/event.rb |
twitter-5.14.0 | lib/twitter/streaming/event.rb |
twitter-5.13.0 | lib/twitter/streaming/event.rb |
twitter-5.12.0 | lib/twitter/streaming/event.rb |