Sha256: 69ff4288972b3f6fbf660d4901bbf052e748ef1a1e73549c69f065aa5272c9d8

Contents?: true

Size: 1.12 KB

Versions: 7

Compression:

Stored size: 1.12 KB

Contents

require 'twitter/base'
require 'twitter/creatable'
require 'twitter/tweet'
require 'twitter/user'

module Twitter
  module Action
    class Mention < Twitter::Base
      include Twitter::Creatable
      attr_reader :max_position, :min_position

      # A collection of users who mentioned a user
      #
      # @return [Array<Twitter::User>]
      def sources
        @sources = Array(@attrs[:sources]).map do |user|
          Twitter::User.fetch_or_new(user)
        end
      end

      # The user who mentioned a user
      #
      # @return [Twitter::User]
      def source
        @source = sources.first
      end

      # A collection of tweets that mention a user
      #
      # @return [Array<Twitter::Tweet>]
      def target_objects
        @target_objects = Array(@attrs[:target_objects]).map do |tweet|
          Twitter::Tweet.fetch_or_new(tweet)
        end
      end

      # A collection containing the mentioned user
      #
      # @return [Array<Twitter::User>]
      def targets
        @targets = Array(@attrs[:targets]).map do |user|
          Twitter::User.fetch_or_new(user)
        end
      end

    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
twitter-4.4.0 lib/twitter/action/mention.rb
twitter-4.3.0 lib/twitter/action/mention.rb
twitter-4.2.0 lib/twitter/action/mention.rb
twitter-4.1.2 lib/twitter/action/mention.rb
twitter-4.1.1 lib/twitter/action/mention.rb
twitter-4.1.0 lib/twitter/action/mention.rb
twitter-4.0.0 lib/twitter/action/mention.rb