class Assembla::Client::Tasks

Constants

VALID_PARAMS_NAMES

Public Instance Methods

create(*args) click to toggle source
# File lib/assembla_api/client/tasks.rb, line 22
def create(*args)
  arguments(args) do
    permit VALID_PARAMS_NAMES, recursive: true
    assert_required %w[ description space_id ]
  end

  task = arguments.params['user_task'] = arguments.params.delete 'task'
  task['begin_at'] ||= Time.now.utc.strftime '%FT%TZ'
  task['hours'] ||= 1

  post_request("/tasks", arguments.params)
end
delete(*args) click to toggle source
# File lib/assembla_api/client/tasks.rb, line 35
def delete(*args)
  arguments(args, required: [:id])
  delete_request("/tasks/#{arguments.id}", arguments.params)
end
Also aliased as: remove
edit(*args) click to toggle source

Edit a task

@param [Hash] params @option params [String] :description

Optional string

@example

api = Assembla.new
api.tasks.edit 963, task: {
  url: 'http://google.com',
  description: 'Search using new engine'
}
# File lib/assembla_api/client/tasks.rb, line 53
def edit(*args)
  arguments(args, required: [:id]) do
    permit VALID_PARAMS_NAMES, recursive: true
  end

  arguments.params['user_task'] = arguments.params.delete 'task'

  put_request("/tasks/#{arguments.id}", arguments.params)
end
find(*args)
Alias for: get
get(*args) click to toggle source

@example api.tasks.get 963

# File lib/assembla_api/client/tasks.rb, line 16
def get(*args)
  arguments(args, required: [:id])
  get_request("/tasks/#{arguments.id}", arguments.params)
end
Also aliased as: find
list(*args) { |el| ... } click to toggle source

@example api.tasks.list

# File lib/assembla_api/client/tasks.rb, line 65
def list(*args)
  arguments(args)
  response = get_request("/tasks", arguments.params)
  return response unless block_given?
  response.each { |el| yield el }
end
remove(*args)
Alias for: delete