Class: Gonebusy::CreateScheduleBody
- Defined in:
- lib/gonebusy/models/create_schedule_body.rb
Instance Attribute Summary collapse
-
#date_recurs_by ⇒ DateRecursByEnum
Required only when :recurs_by is ‘monthly’ or ‘yearly’ to differentiate between exact date or ‘day in month/year’.
-
#days ⇒ String
List of comma-separated days of the week this window of time falls on.
-
#end_date ⇒ DateTime
Optional End Date of first TimeWindow, leave blank for infinitely available.
-
#end_time ⇒ String
End Time of first TimeWindow.
-
#frequency ⇒ FrequencyEnum
Optional frequency of recurrence as specified by :recurs_by.
-
#occurrence ⇒ OccurrenceEnum
Optional occurrence of frequency.
-
#recurs_by ⇒ RecursByEnum
One of the possible recurrence values.
-
#resource_id ⇒ Integer
ID of Resource being scheduled.
-
#service_id ⇒ Integer
ID of Service being scheduled.
-
#start_date ⇒ DateTime
Start Date of first TimeWindow.
-
#start_time ⇒ String
Start Time of first TimeWindow.
-
#total_minutes ⇒ Integer
Optional total number of minutes in TimeWindow.
-
#user_id ⇒ Integer
ID of User to create Schedule for.
Class Method Summary collapse
-
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
-
.names ⇒ Object
A mapping from model property names to API property names.
Instance Method Summary collapse
-
#initialize(service_id = nil, date_recurs_by = nil, days = nil, end_date = nil, end_time = nil, frequency = nil, occurrence = nil, recurs_by = nil, resource_id = nil, start_date = nil, start_time = nil, total_minutes = nil, user_id = nil) ⇒ CreateScheduleBody
constructor
A new instance of CreateScheduleBody.
Methods inherited from BaseModel
Constructor Details
#initialize(service_id = nil, date_recurs_by = nil, days = nil, end_date = nil, end_time = nil, frequency = nil, occurrence = nil, recurs_by = nil, resource_id = nil, start_date = nil, start_time = nil, total_minutes = nil, user_id = nil) ⇒ CreateScheduleBody
Returns a new instance of CreateScheduleBody.
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 79 def initialize(service_id = nil, date_recurs_by = nil, days = nil, end_date = nil, end_time = nil, frequency = nil, occurrence = nil, recurs_by = nil, resource_id = nil, start_date = nil, start_time = nil, total_minutes = nil, user_id = nil) @service_id = service_id @date_recurs_by = date_recurs_by @days = days @end_date = end_date @end_time = end_time @frequency = frequency @occurrence = occurrence @recurs_by = recurs_by @resource_id = resource_id @start_date = start_date @start_time = start_time @total_minutes = total_minutes @user_id = user_id end |
Instance Attribute Details
#date_recurs_by ⇒ DateRecursByEnum
Required only when :recurs_by is ‘monthly’ or ‘yearly’ to differentiate between exact date or ‘day in month/year’. See Schedule examples.
12 13 14 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 12 def date_recurs_by @date_recurs_by end |
#days ⇒ String
List of comma-separated days of the week this window of time falls on. If provided, at least one must be specified.
16 17 18 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 16 def days @days end |
#end_date ⇒ DateTime
Optional End Date of first TimeWindow, leave blank for infinitely available. Several formats are supported: ‘2014-10-31’, ‘October 31, 2014’.
20 21 22 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 20 def end_date @end_date end |
#end_time ⇒ String
End Time of first TimeWindow. Several formats are supported: ‘5pm’, ‘17:00’, ‘1700’
24 25 26 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 24 def end_time @end_time end |
#frequency ⇒ FrequencyEnum
Optional frequency of recurrence as specified by :recurs_by. E.g, :single, :every, :every_other, etc. If not provided, assumed to be :every
28 29 30 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 28 def frequency @frequency end |
#occurrence ⇒ OccurrenceEnum
Optional occurrence of frequency. E.g, :first, :2nd, :last, :2nd_to_last, etc. If not provided, assumed to be :every
32 33 34 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 32 def occurrence @occurrence end |
#recurs_by ⇒ RecursByEnum
One of the possible recurrence values
36 37 38 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 36 def recurs_by @recurs_by end |
#resource_id ⇒ Integer
ID of Resource being scheduled. If not provided and :user_id is not present, the default Resource of the API user is assumed to be the Resource being scheduled. If not provided and :user_id is present, the default Resource of the User is assumed to be the Resource being Scheduled.
40 41 42 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 40 def resource_id @resource_id end |
#service_id ⇒ Integer
ID of Service being scheduled.
8 9 10 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 8 def service_id @service_id end |
#start_date ⇒ DateTime
Start Date of first TimeWindow. Several formats are supported: ‘2014-10-31’, ‘October 31, 2014’.
44 45 46 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 44 def start_date @start_date end |
#start_time ⇒ String
Start Time of first TimeWindow. Several formats are supported: ‘9am’, ‘09:00’, ‘9:00’, ‘0900’
48 49 50 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 48 def start_time @start_time end |
#total_minutes ⇒ Integer
Optional total number of minutes in TimeWindow. Useful when duration of window is greater than 24 hours.
52 53 54 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 52 def total_minutes @total_minutes end |
#user_id ⇒ Integer
ID of User to create Schedule for. You must be authorized to manage this User Id and User must own desired Service and Resource.
56 57 58 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 56 def user_id @user_id end |
Class Method Details
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash
108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 108 def self.from_hash(hash) if hash == nil nil else # Extract variables from the hash service_id = hash["service_id"] date_recurs_by = hash["date_recurs_by"] days = hash["days"] end_date = DateTime.iso8601(hash["end_date"]) if hash["end_date"] end_time = hash["end_time"] frequency = hash["frequency"] occurrence = hash["occurrence"] recurs_by = hash["recurs_by"] resource_id = hash["resource_id"] start_date = DateTime.iso8601(hash["start_date"]) if hash["start_date"] start_time = hash["start_time"] total_minutes = hash["total_minutes"] user_id = hash["user_id"] # Create object from extracted values CreateScheduleBody.new(service_id, date_recurs_by, days, end_date, end_time, frequency, occurrence, recurs_by, resource_id, start_date, start_time, total_minutes, user_id) end end |
.names ⇒ Object
A mapping from model property names to API property names
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/gonebusy/models/create_schedule_body.rb', line 59 def self.names if @hash.nil? @hash = {} @hash["service_id"] = "service_id" @hash["date_recurs_by"] = "date_recurs_by" @hash["days"] = "days" @hash["end_date"] = "end_date" @hash["end_time"] = "end_time" @hash["frequency"] = "frequency" @hash["occurrence"] = "occurrence" @hash["recurs_by"] = "recurs_by" @hash["resource_id"] = "resource_id" @hash["start_date"] = "start_date" @hash["start_time"] = "start_time" @hash["total_minutes"] = "total_minutes" @hash["user_id"] = "user_id" end @hash end |