class Troo::Remote::Persistence::List

Attributes

external_board_id[R]
name[R]

Public Class Methods

new(external_board_id, name) click to toggle source

@param [String] @param [String] @return [Troo::Remote::Persistence::List]

# File lib/troo/remote/persistence/list.rb, line 17
def initialize(external_board_id, name)
  @external_board_id = external_board_id
  @name              = name
end
with(external_board_id, name) click to toggle source

@param [String] @param [String] @return []

# File lib/troo/remote/persistence/list.rb, line 9
def with(external_board_id, name)
  new(external_board_id, name).create_local
end

Public Instance Methods

create_local() click to toggle source

@return []

# File lib/troo/remote/persistence/list.rb, line 23
def create_local
  return Troo::Persistence::Local
    .with_collection(resource).first if any?
  false
end

Private Instance Methods

any?() click to toggle source
# File lib/troo/remote/persistence/list.rb, line 33
def any?
  resource.any?
end
parameters() click to toggle source
# File lib/troo/remote/persistence/list.rb, line 41
def parameters
  {
    verb:          :post,
    endpoint:      :create_list,
    interpolation: {},
    query:         query,
    model:         Remote::List
  }
end
query() click to toggle source
# File lib/troo/remote/persistence/list.rb, line 51
def query
  {
    name:     name,
    board_id: external_board_id
  }
end
resource() click to toggle source
# File lib/troo/remote/persistence/list.rb, line 37
def resource
  @resource ||= API::Client.perform(parameters)
end