class Troo::Remote::Persistence::Board

Attributes

description[R]
name[R]

Public Class Methods

new(name, description = nil) click to toggle source

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

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

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

# File lib/troo/remote/persistence/board.rb, line 9
def with(name, description = nil)
  new(name, description).create_local
end

Public Instance Methods

create_local() click to toggle source

@return []

# File lib/troo/remote/persistence/board.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/board.rb, line 33
def any?
  resource.any?
end
parameters() click to toggle source
# File lib/troo/remote/persistence/board.rb, line 41
def parameters
  {
    verb:          :post,
    endpoint:      :create_board,
    interpolation: {},
    query:         query,
    model:         Remote::Board
  }
end
query() click to toggle source
# File lib/troo/remote/persistence/board.rb, line 51
def query
  {
    name: name,
    desc: description
  }
end
resource() click to toggle source
# File lib/troo/remote/persistence/board.rb, line 37
def resource
  @resource ||= API::Client.perform(parameters)
end