class FirefoxJson::Session::Tab

A tab collects all its history and knows whether it's closed or not

Attributes

is_closed[R]

Public Class Methods

new(data, is_closed) click to toggle source

is_closed passed from Window and means the real data is inside the 'state' key

# File lib/firefox-json/session.rb, line 182
def initialize data, is_closed
  @is_closed = is_closed
  if is_closed
    @closed_data = data.reject {|key,_v| 'state' == key}
  end
  tab_state = is_closed ? data['state'] : data
  setup tab_state
end

Public Instance Methods

dump() click to toggle source
Calls superclass method FirefoxJson::Session::Base#dump
# File lib/firefox-json/session.rb, line 195
def dump
  is_closed ? @closed_data.merge('state' => super) : super
end
hash() click to toggle source
# File lib/firefox-json/session.rb, line 191
def hash
  selected_url.hash
end
selected_domain() click to toggle source
# File lib/firefox-json/session.rb, line 207
def selected_domain
  selected&.domain
end
selected_title() click to toggle source
# File lib/firefox-json/session.rb, line 199
def selected_title
  selected&.title
end
selected_url() click to toggle source
# File lib/firefox-json/session.rb, line 203
def selected_url
  selected&.url
end
to_s() click to toggle source
# File lib/firefox-json/session.rb, line 211
def to_s
  "#<FirefoxJson::Tab#{' closed!' if is_closed} entries=#{entries.size} selected=\"#{selected_title}\">"
end