Class: Twilio::REST::Assistants::V1::ToolList
- Inherits:
-
ListResource
- Object
- ListResource
- Twilio::REST::Assistants::V1::ToolList
- Defined in:
- lib/twilio-ruby/rest/assistants/v1/tool.rb
Defined Under Namespace
Classes: AssistantsV1ServiceCreatePolicyRequest, AssistantsV1ServiceCreateToolRequest, AssistantsV1ServiceUpdateToolRequest
Instance Method Summary collapse
-
#create(assistants_v1_service_create_tool_request: nil) ⇒ ToolInstance
Create the ToolInstance.
-
#create_with_metadata(assistants_v1_service_create_tool_request: nil) ⇒ ToolInstance
Create the ToolInstanceMetadata.
-
#each ⇒ Object
When passed a block, yields ToolInstance records from the API.
-
#get_page(target_url) ⇒ Page
Retrieve a single page of ToolInstance records from the API.
-
#initialize(version) ⇒ ToolList
constructor
Initialize the ToolList.
-
#list(assistant_id: :unset, limit: nil, page_size: nil) ⇒ Array
Lists ToolInstance records from the API as a list.
-
#list_with_metadata(assistant_id: :unset, limit: nil, page_size: nil) ⇒ Array
Array of up to limit results.
-
#page(assistant_id: :unset, page_token: :unset, page_number: :unset, page_size: :unset) ⇒ Page
Retrieve a single page of ToolInstance records from the API.
-
#stream(assistant_id: :unset, limit: nil, page_size: nil) ⇒ Enumerable
Streams Instance records from the API as an Enumerable.
-
#to_s ⇒ Object
Provide a user friendly representation.
Constructor Details
#initialize(version) ⇒ ToolList
Initialize the ToolList
202 203 204 205 206 207 208 209 |
# File 'lib/twilio-ruby/rest/assistants/v1/tool.rb', line 202 def initialize(version) super(version) # Path Solution @solution = { } @uri = "/Tools" end |
Instance Method Details
#create(assistants_v1_service_create_tool_request: nil) ⇒ ToolInstance
Create the ToolInstance
214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 |
# File 'lib/twilio-ruby/rest/assistants/v1/tool.rb', line 214 def create(assistants_v1_service_create_tool_request: nil ) headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', }) headers['Content-Type'] = 'application/json' payload = @version.create('POST', @uri, headers: headers, data: assistants_v1_service_create_tool_request.to_json) ToolInstance.new( @version, payload, ) end |
#create_with_metadata(assistants_v1_service_create_tool_request: nil) ⇒ ToolInstance
Create the ToolInstanceMetadata
234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 |
# File 'lib/twilio-ruby/rest/assistants/v1/tool.rb', line 234 def (assistants_v1_service_create_tool_request: nil ) headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', }) headers['Content-Type'] = 'application/json' response = @version.('POST', @uri, headers: headers, data: assistants_v1_service_create_tool_request.to_json) tool_instance = ToolInstance.new( @version, response.body, ) ToolInstanceMetadata.new( @version, tool_instance, response.headers, response.status_code ) end |
#each ⇒ Object
When passed a block, yields ToolInstance records from the API. This operation lazily loads records as efficiently as possible until the limit is reached.
331 332 333 334 335 336 337 338 339 340 341 342 343 |
# File 'lib/twilio-ruby/rest/assistants/v1/tool.rb', line 331 def each limits = @version.read_limits page = self.page(page_size: limits[:page_size], ) return [].each if page.nil? result = @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit]) return [].each if result.nil? result.each {|x| yield x} end |
#get_page(target_url) ⇒ Page
Retrieve a single page of ToolInstance records from the API. Request is executed immediately.
374 375 376 377 378 379 380 |
# File 'lib/twilio-ruby/rest/assistants/v1/tool.rb', line 374 def get_page(target_url) response = @version.domain.request( 'GET', target_url ) ToolPage.new(@version, response, @solution) end |
#list(assistant_id: :unset, limit: nil, page_size: nil) ⇒ Array
Lists ToolInstance records from the API as a list. Unlike stream(), this operation is eager and will load ‘limit` records into memory before returning.
269 270 271 272 273 274 275 |
# File 'lib/twilio-ruby/rest/assistants/v1/tool.rb', line 269 def list(assistant_id: :unset, limit: nil, page_size: nil) self.stream( assistant_id: assistant_id, limit: limit, page_size: page_size ).entries end |
#list_with_metadata(assistant_id: :unset, limit: nil, page_size: nil) ⇒ Array
Returns Array of up to limit results.
313 314 315 316 317 318 319 320 321 322 323 324 325 |
# File 'lib/twilio-ruby/rest/assistants/v1/tool.rb', line 313 def (assistant_id: :unset, limit: nil, page_size: nil) limits = @version.read_limits(limit, page_size) params = Twilio::Values.of({ 'AssistantId' => assistant_id, 'PageSize' => limits[:page_size], }); headers = Twilio::Values.of({}) response = @version.page('GET', @uri, params: params, headers: headers) ToolPageMetadata.new(@version, response, @solution, limits[:limit]) end |
#page(assistant_id: :unset, page_token: :unset, page_number: :unset, page_size: :unset) ⇒ Page
Retrieve a single page of ToolInstance records from the API. Request is executed immediately.
353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 |
# File 'lib/twilio-ruby/rest/assistants/v1/tool.rb', line 353 def page(assistant_id: :unset, page_token: :unset, page_number: :unset,page_size: :unset) params = Twilio::Values.of({ 'AssistantId' => assistant_id, 'PageToken' => page_token, 'Page' => page_number, 'PageSize' => page_size, }) headers = Twilio::Values.of({}) response = @version.page('GET', @uri, params: params, headers: headers) ToolPage.new(@version, response, @solution) end |
#stream(assistant_id: :unset, limit: nil, page_size: nil) ⇒ Enumerable
Streams Instance records from the API as an Enumerable. This operation lazily loads records as efficiently as possible until the limit is reached.
289 290 291 292 293 294 295 296 297 298 299 300 301 |
# File 'lib/twilio-ruby/rest/assistants/v1/tool.rb', line 289 def stream(assistant_id: :unset, limit: nil, page_size: nil) limits = @version.read_limits(limit, page_size) page = self.page( assistant_id: assistant_id, page_size: limits[:page_size], ) return [].each if page.nil? result = @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit]) return [].each if result.nil? result end |
#to_s ⇒ Object
Provide a user friendly representation
385 386 387 |
# File 'lib/twilio-ruby/rest/assistants/v1/tool.rb', line 385 def to_s '#<Twilio.Assistants.V1.ToolList>' end |