Class: Basecamp::Types::Question

Inherits:
Object
  • Object
show all
Includes:
TypeHelpers
Defined in:
lib/basecamp/generated/types.rb

Overview

Question

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data = {}) ⇒ Question

Returns a new instance of Question.



2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
# File 'lib/basecamp/generated/types.rb', line 2611

def initialize(data = {})
  @app_url = data["app_url"]
  @bucket = parse_type(data["bucket"], "RecordingBucket")
  @created_at = parse_datetime(data["created_at"])
  @creator = parse_type(data["creator"], "Person")
  @id = parse_integer(data["id"])
  @inherits_status = parse_boolean(data["inherits_status"])
  @parent = parse_type(data["parent"], "RecordingParent")
  @status = data["status"]
  @title = data["title"]
  @type = data["type"]
  @updated_at = parse_datetime(data["updated_at"])
  @url = data["url"]
  @visible_to_clients = parse_boolean(data["visible_to_clients"])
  @answers_count = parse_integer(data["answers_count"])
  @answers_url = data["answers_url"]
  @bookmark_url = data["bookmark_url"]
  @paused = parse_boolean(data["paused"])
  @schedule = parse_type(data["schedule"], "QuestionSchedule")
  @subscription_url = data["subscription_url"]
end

Instance Attribute Details

#answers_countObject

Returns the value of attribute answers_count.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def answers_count
  @answers_count
end

#answers_urlObject

Returns the value of attribute answers_url.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def answers_url
  @answers_url
end

#app_urlObject

Returns the value of attribute app_url.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def app_url
  @app_url
end

#bookmark_urlObject

Returns the value of attribute bookmark_url.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def bookmark_url
  @bookmark_url
end

#bucketObject

Returns the value of attribute bucket.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def bucket
  @bucket
end

#created_atObject

Returns the value of attribute created_at.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def created_at
  @created_at
end

#creatorObject

Returns the value of attribute creator.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def creator
  @creator
end

#idObject

Returns the value of attribute id.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def id
  @id
end

#inherits_statusObject

Returns the value of attribute inherits_status.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def inherits_status
  @inherits_status
end

#parentObject

Returns the value of attribute parent.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def parent
  @parent
end

#pausedObject

Returns the value of attribute paused.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def paused
  @paused
end

#scheduleObject

Returns the value of attribute schedule.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def schedule
  @schedule
end

#statusObject

Returns the value of attribute status.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def status
  @status
end

#subscription_urlObject

Returns the value of attribute subscription_url.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def subscription_url
  @subscription_url
end

#titleObject

Returns the value of attribute title.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def title
  @title
end

#typeObject

Returns the value of attribute type.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def type
  @type
end

#updated_atObject

Returns the value of attribute updated_at.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def updated_at
  @updated_at
end

#urlObject

Returns the value of attribute url.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def url
  @url
end

#visible_to_clientsObject

Returns the value of attribute visible_to_clients.



2604
2605
2606
# File 'lib/basecamp/generated/types.rb', line 2604

def visible_to_clients
  @visible_to_clients
end

Class Method Details

.required_fieldsArray<Symbol>

Returns:

  • (Array<Symbol>)


2607
2608
2609
# File 'lib/basecamp/generated/types.rb', line 2607

def self.required_fields
  %i[app_url bucket created_at creator id inherits_status parent status title type updated_at url visible_to_clients].freeze
end

Instance Method Details

#to_hObject



2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
# File 'lib/basecamp/generated/types.rb', line 2633

def to_h
  {
    "app_url" => @app_url,
    "bucket" => @bucket,
    "created_at" => @created_at,
    "creator" => @creator,
    "id" => @id,
    "inherits_status" => @inherits_status,
    "parent" => @parent,
    "status" => @status,
    "title" => @title,
    "type" => @type,
    "updated_at" => @updated_at,
    "url" => @url,
    "visible_to_clients" => @visible_to_clients,
    "answers_count" => @answers_count,
    "answers_url" => @answers_url,
    "bookmark_url" => @bookmark_url,
    "paused" => @paused,
    "schedule" => @schedule,
    "subscription_url" => @subscription_url,
  }.compact
end

#to_json(*args) ⇒ Object



2657
2658
2659
# File 'lib/basecamp/generated/types.rb', line 2657

def to_json(*args)
  to_h.to_json(*args)
end