class TimeCamp::Task
Attributes
archived[R]
assigned_by[R]
billable[R]
budget_unit[R]
budgeted[R]
color[R]
external_parent_id[R]
external_task_id[R]
level[R]
name[R]
note[R]
parent_id[R]
public_hash[R]
root_group_id[R]
task_id[R]
user_access_type[R]
users[R]
Public Class Methods
create(opts={})
click to toggle source
required :name optional :tags, :parent_id, :external_task_id, :external_parent_id,
:budgeted, :note, :archived, :billable, :budget_unit, :user_ids (comma separated), :role
# File lib/ruby-timecamp/resources/task.rb, line 22 def self.create(opts={}) data_keys = [:name, :tags, :parent_id, :external_task_id, :external_parent_id, :budgeted, :note, :archived, :billable, :budget_unit, :user_ids, :role] data, opts = opts.partition{ |k, v| data_keys.include?(k) }.map(&:to_h) response = TimeCamp::Request.post(resource_name, opts, data) return TaskCollection.parse(response) end
get(opts={})
click to toggle source
optional :task_id
# File lib/ruby-timecamp/resources/task.rb, line 13 def self.get(opts={}) response = TimeCamp::Request.get(resource_name, opts) return TaskCollection.parse(response) end
update(opts={})
click to toggle source
required :task_id optional :name, :tags, :parent_id, :external_task_id,
:external_parent_id, :budgeted, :note, :archived, :billable, :budget_unit, :user_ids (comma separated), :role
# File lib/ruby-timecamp/resources/task.rb, line 33 def self.update(opts={}) data_keys = [:task_id, :name, :tags, :parent_id, :external_task_id, :external_parent_id, :budgeted, :note, :archived, :billable, :budget_unit, :user_ids, :role] data, opts = opts.partition{ |k, v| data_keys.include?(k) }.map(&:to_h) response = TimeCamp::Request.put(resource_name, opts, data) return TaskCollection.parse(response) end
Private Instance Methods
load_attributes(response)
click to toggle source
INSTANCE METHODS #
# File lib/ruby-timecamp/resources/task.rb, line 45 def load_attributes(response) @task_id = response[:task_id] @parent_id = response[:parent_id] @assigned_by = response[:assigned_by] @name = response[:name] @external_task_id = response[:external_task_id] @external_parent_id = response[:external_parent_id] @level = response[:level] @archived = response[:archived] @color = response[:color] @tags = response[:tags] @budgeted = response[:budgeted] @budget_unit = response[:budget_unit] @root_group_id = response[:root_group_id] @billable = response[:billable] @note = response[:note] @public_hash = response[:public_hash] @users = response[:users] @user_access_type = response[:user_access_type] end