Sha256: 32177f22679967f8d9670fc047782f9f52a885286b220cf0faeab29ac6ddab79

Contents?: true

Size: 815 Bytes

Versions: 3

Compression:

Stored size: 815 Bytes

Contents

# Class handling user data.
# Takes a data object extended Hashie::Extensions::DeepFind
class UserData

  attr_reader :id, :username, :full_name, :follower_count, :following_count

  def initialize(data)
    @id              = data.deep_find('pk')
    @username        = data.deep_find('username')
    @full_name       = data.deep_find('full_name')
    @following_count = data.deep_find('following_count')
    @follower_count  = data.deep_find('follower_count')
    @is_private      = data.deep_find('is_private')
  end

  def private?
    @is_private
  end

  def insert_into_db(table)
    table.insert(user_id: @id, username: @username, follow_time: Time.now)
  end

  def delete_from_db(table)
    table.where(user_id: @id).delete
  end

  def exists_in_db?(table)
    !table.where(user_id: @id).empty?
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
botinsta-0.1.3 lib/botinsta/data/user_data.rb
botinsta-0.1.2 lib/botinsta/data/user_data.rb
botinsta-0.1.1 lib/botinsta/data/user_data.rb