class Azure::Armrest::ResourceGroupBasedSubservice
Base class for services that have two levels in the path and need to run in a resource group
Public Class Methods
new(configuration, service_name, subservice_name, default_provider, options)
click to toggle source
Do not instantiate directly. This is an abstract base class from which all other service classes should subclass, and call super within their own constructors.
Calls superclass method
Azure::Armrest::ArmrestService::new
# File lib/azure/armrest/resource_group_based_subservice.rb, line 9 def initialize(configuration, service_name, subservice_name, default_provider, options) @subservice_name = subservice_name super(configuration, service_name, default_provider, options) end
Public Instance Methods
create(resource, subresource, rgroup = configuration.resource_group, options = {})
click to toggle source
Calls superclass method
Azure::Armrest::ResourceGroupBasedService#create
# File lib/azure/armrest/resource_group_based_subservice.rb, line 14 def create(resource, subresource, rgroup = configuration.resource_group, options = {}) validate_resource_group(rgroup) validate_resource(resource) validate_subresource(subresource) super(combine(resource, subresource), rgroup, options) end
Also aliased as: update
delete(resource, subresource, rgroup = configuration.resource_group)
click to toggle source
Calls superclass method
Azure::Armrest::ResourceGroupBasedService#delete
# File lib/azure/armrest/resource_group_based_subservice.rb, line 42 def delete(resource, subresource, rgroup = configuration.resource_group) validate_resource_group(rgroup) validate_resource(resource) validate_subresource(subresource) super(combine(resource, subresource), rgroup) end
get(resource, subresource, rgroup = configuration.resource_group)
click to toggle source
Calls superclass method
Azure::Armrest::ResourceGroupBasedService#get
# File lib/azure/armrest/resource_group_based_subservice.rb, line 35 def get(resource, subresource, rgroup = configuration.resource_group) validate_resource_group(rgroup) validate_resource(resource) validate_subresource(subresource) super(combine(resource, subresource), rgroup) end
list(resource, rgroup = configuration.resource_group) { |url| ... }
click to toggle source
# File lib/azure/armrest/resource_group_based_subservice.rb, line 23 def list(resource, rgroup = configuration.resource_group) validate_resource_group(rgroup) validate_resource(resource) url = build_url(rgroup, resource, @subservice_name) url = yield(url) || url if block_given? response = rest_get(url) JSON.parse(response)['value'].map { |hash| model_class.new(hash) } end
Also aliased as: list_all
update(resource, subresource, rgroup = configuration.resource_group, options = {})
Alias for: create
Private Instance Methods
combine(resource, subresource)
click to toggle source
# File lib/azure/armrest/resource_group_based_subservice.rb, line 55 def combine(resource, subresource) File.join(resource, @subservice_name, subresource) end
validate_subresource(name)
click to toggle source
# File lib/azure/armrest/resource_group_based_subservice.rb, line 51 def validate_subresource(name) raise ArgumentError, "must specify #{@subservice_name.singularize.underscore.humanize}" unless name end