module Fog::Compute::XenServer::Models::InstanceMethods
Public Instance Methods
collection()
click to toggle source
# File lib/fog/compute/xen_server/models/instance_methods.rb, line 10 def collection service.send(self.class.collection_name) end
destroy()
click to toggle source
# File lib/fog/compute/xen_server/models/instance_methods.rb, line 30 def destroy requires :reference service.send(:destroy_record, reference, provider_class) true end
method_missing(method_name, *args)
click to toggle source
Calls superclass method
# File lib/fog/compute/xen_server/models/instance_methods.rb, line 36 def method_missing(method_name, *args) if service.respond_to?("#{method_name}_#{provider_class.downcase}") result = service.send("#{method_name}_#{provider_class.downcase}", reference, *args) reload result else super end end
provider_class()
click to toggle source
# File lib/fog/compute/xen_server/models/instance_methods.rb, line 6 def provider_class self.class.provider_class end
require_creation_attributes()
click to toggle source
# File lib/fog/compute/xen_server/models/instance_methods.rb, line 14 def require_creation_attributes requires *self.class.instance_variable_get("@require_before_save") end
respond_to?(method_name, include_private = false)
click to toggle source
Calls superclass method
# File lib/fog/compute/xen_server/models/instance_methods.rb, line 46 def respond_to?(method_name, include_private = false) return true if service.respond_to?("#{method_name}_#{provider_class.downcase}") super end
save(extra_params = {})
click to toggle source
# File lib/fog/compute/xen_server/models/instance_methods.rb, line 22 def save(extra_params = {}) require_creation_attributes attrs = all_associations_and_attributes.reject { |_key, value| value.nil? } ref = service.send("create_#{provider_class.downcase}", attrs, extra_params) merge_attributes collection.get(ref).attributes true end
set_attribute(name, *val)
click to toggle source
# File lib/fog/compute/xen_server/models/instance_methods.rb, line 18 def set_attribute(name, *val) service.set_attribute(provider_class, reference, name, *val) end