class Troo::Remote::Persistence::MoveCard

Attributes

external_board_id[R]
external_card_id[R]
external_list_id[R]

Public Class Methods

new(external_card_id, external_list_id, external_board_id = nil) click to toggle source

@param [String] @param [String] @param [String, NilClass] @return [Troo::Remote::Persistence::MoveCard]

# File lib/troo/remote/persistence/move_card.rb, line 22
def initialize(external_card_id,
               external_list_id,
               external_board_id = nil)
  @external_card_id  = external_card_id
  @external_list_id  = external_list_id
  @external_board_id = external_board_id
end
with(external_card_id, external_list_id, external_board_id = nil) click to toggle source

@param [String] @param [String] @param [String, NilClass] @return []

# File lib/troo/remote/persistence/move_card.rb, line 10
def with(external_card_id,
         external_list_id,
         external_board_id = nil)
  new(external_card_id, external_list_id, external_board_id)
    .update_cards
end

Public Instance Methods

update_cards() click to toggle source

@return []

# File lib/troo/remote/persistence/move_card.rb, line 31
def update_cards
  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/move_card.rb, line 43
def any?
  resource.any?
end
board_query() click to toggle source
# File lib/troo/remote/persistence/move_card.rb, line 75
def board_query
  {
    value:  external_board_id,
    idList: external_list_id
  }
end
endpoint() click to toggle source
# File lib/troo/remote/persistence/move_card.rb, line 61
def endpoint
  return :move_card_board if external_board_id
  :move_card_list
end
interpolation() click to toggle source
# File lib/troo/remote/persistence/move_card.rb, line 66
def interpolation
  { external_id: external_card_id }
end
list_query() click to toggle source
# File lib/troo/remote/persistence/move_card.rb, line 82
def list_query
  {
    value: external_list_id
  }
end
parameters() click to toggle source
# File lib/troo/remote/persistence/move_card.rb, line 51
def parameters
  {
    verb:          :put,
    endpoint:      endpoint,
    interpolation: interpolation,
    query:         query,
    model:         Remote::Card
  }
end
query() click to toggle source
# File lib/troo/remote/persistence/move_card.rb, line 70
def query
  return board_query if external_board_id
  list_query
end
resource() click to toggle source
# File lib/troo/remote/persistence/move_card.rb, line 47
def resource
  @resource ||= API::Client.perform(parameters)
end