Class: Twilio::REST::Serverless::V1::ServiceContext

Inherits:
InstanceContext show all
Defined in:
lib/twilio-ruby/rest/serverless/v1/service.rb,
lib/twilio-ruby/rest/serverless/v1/service/asset.rb,
lib/twilio-ruby/rest/serverless/v1/service/build.rb,
lib/twilio-ruby/rest/serverless/v1/service/function.rb,
lib/twilio-ruby/rest/serverless/v1/service/environment.rb,
lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb,
lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb,
lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb,
lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb,
lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb

Overview

PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact [email protected].

Defined Under Namespace

Classes: AssetContext, AssetInstance, AssetList, AssetPage, BuildContext, BuildInstance, BuildList, BuildPage, EnvironmentContext, EnvironmentInstance, EnvironmentList, EnvironmentPage, FunctionContext, FunctionInstance, FunctionList, FunctionPage

Instance Method Summary collapse

Constructor Details

#initialize(version, sid) ⇒ ServiceContext

Initialize the ServiceContext

Parameters:

  • version (Version)

    Version that contains the resource

  • sid (String)

    Identifier of the Serverless Service Instance. Either a SID or UniqueName.



184
185
186
187
188
189
190
191
192
193
194
195
196
# File 'lib/twilio-ruby/rest/serverless/v1/service.rb', line 184

def initialize(version, sid)
  super(version)

  # Path Solution
  @solution = {sid: sid, }
  @uri = "/Services/#{@solution[:sid]}"

  # Dependents
  @environments = nil
  @functions = nil
  @assets = nil
  @builds = nil
end

Instance Method Details

#assets(sid = :unset) ⇒ AssetList, AssetContext

Access the assets

Returns:

Raises:

  • (ArgumentError)


282
283
284
285
286
287
288
289
290
291
292
293
294
# File 'lib/twilio-ruby/rest/serverless/v1/service.rb', line 282

def assets(sid=:unset)
  raise ArgumentError, 'sid cannot be nil' if sid.nil?

  if sid != :unset
    return AssetContext.new(@version, @solution[:sid], sid, )
  end

  unless @assets
    @assets = AssetList.new(@version, service_sid: @solution[:sid], )
  end

  @assets
end

#builds(sid = :unset) ⇒ BuildList, BuildContext

Access the builds

Returns:

Raises:

  • (ArgumentError)


300
301
302
303
304
305
306
307
308
309
310
311
312
# File 'lib/twilio-ruby/rest/serverless/v1/service.rb', line 300

def builds(sid=:unset)
  raise ArgumentError, 'sid cannot be nil' if sid.nil?

  if sid != :unset
    return BuildContext.new(@version, @solution[:sid], sid, )
  end

  unless @builds
    @builds = BuildList.new(@version, service_sid: @solution[:sid], )
  end

  @builds
end

#deleteBoolean

Deletes the ServiceInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



216
217
218
# File 'lib/twilio-ruby/rest/serverless/v1/service.rb', line 216

def delete
  @version.delete('delete', @uri)
end

#environments(sid = :unset) ⇒ EnvironmentList, EnvironmentContext

Access the environments

Returns:

Raises:

  • (ArgumentError)


246
247
248
249
250
251
252
253
254
255
256
257
258
# File 'lib/twilio-ruby/rest/serverless/v1/service.rb', line 246

def environments(sid=:unset)
  raise ArgumentError, 'sid cannot be nil' if sid.nil?

  if sid != :unset
    return EnvironmentContext.new(@version, @solution[:sid], sid, )
  end

  unless @environments
    @environments = EnvironmentList.new(@version, service_sid: @solution[:sid], )
  end

  @environments
end

#fetchServiceInstance

Fetch a ServiceInstance

Returns:



201
202
203
204
205
206
207
208
209
210
211
# File 'lib/twilio-ruby/rest/serverless/v1/service.rb', line 201

def fetch
  params = Twilio::Values.of({})

  payload = @version.fetch(
      'GET',
      @uri,
      params,
  )

  ServiceInstance.new(@version, payload, sid: @solution[:sid], )
end

#functions(sid = :unset) ⇒ FunctionList, FunctionContext

Access the functions

Returns:

Raises:

  • (ArgumentError)


264
265
266
267
268
269
270
271
272
273
274
275
276
# File 'lib/twilio-ruby/rest/serverless/v1/service.rb', line 264

def functions(sid=:unset)
  raise ArgumentError, 'sid cannot be nil' if sid.nil?

  if sid != :unset
    return FunctionContext.new(@version, @solution[:sid], sid, )
  end

  unless @functions
    @functions = FunctionList.new(@version, service_sid: @solution[:sid], )
  end

  @functions
end

#inspectObject

Provide a detailed, user friendly representation



323
324
325
326
# File 'lib/twilio-ruby/rest/serverless/v1/service.rb', line 323

def inspect
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
  "#<Twilio.Serverless.V1.ServiceContext #{context}>"
end

#to_sObject

Provide a user friendly representation



316
317
318
319
# File 'lib/twilio-ruby/rest/serverless/v1/service.rb', line 316

def to_s
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
  "#<Twilio.Serverless.V1.ServiceContext #{context}>"
end

#update(include_credentials: :unset, friendly_name: :unset) ⇒ ServiceInstance

Update the ServiceInstance

Parameters:

  • include_credentials (Boolean) (defaults to: :unset)

    A boolean value that indicates whether to inject Account credentials into a Function invocation context. Optional.

  • friendly_name (String) (defaults to: :unset)

    A human-readable description of this Service, fewer than 256 characters. Optional

Returns:



227
228
229
230
231
232
233
234
235
236
237
238
239
240
# File 'lib/twilio-ruby/rest/serverless/v1/service.rb', line 227

def update(include_credentials: :unset, friendly_name: :unset)
  data = Twilio::Values.of({
      'IncludeCredentials' => include_credentials,
      'FriendlyName' => friendly_name,
  })

  payload = @version.update(
      'POST',
      @uri,
      data: data,
  )

  ServiceInstance.new(@version, payload, sid: @solution[:sid], )
end