
From Juan Hernandez <juan.hernandez@redhat.com>:
Juan Hernandez has submitted this change and it was merged. Change subject: Add Error.code ...................................................................... Add Error.code This patch adds a new 'code' attribute to the Error class. For errors that are HTTP related, this will contain the HTTP response code. For example, if the method to retrieve a virtual machine fails because it doesn't exist, this will contain the value 404. The users of the SDK can use it like this: # Get the identifier of the virtual machine from some place, maybe # from a database that is out of sync with the engine: id = ... # Find the service that manages that virtual machine. Note that this # will always succeed, even if the virtual machine doesn't exist, as # the calls to the 'whatever_service' methods *do not* perform any # call to the server. vm_service = vms_service.vm_service(id) # Try to retrieve the virtual machine. This *does* send the request # to the server, hence it may fail if the virtual machine doesn't # exist. begin vm = vm_service.get rescue OvirtSDK4::Error => error if error.code == 404 # The virtual machine doesn't exist, handle it. ... else # Something else happened that we don't know how to handle. raise end end For errors that aren't HTTP related, the value of the new attribute will be 'nil'. Change-Id: I6e3fc71e17fa1726049ca1e49c8cc9e295c15b0c Bug-Url: https://bugzilla.redhat.com/1443420 Signed-off-by: Juan Hernandez <juan.hernandez@redhat.com> (cherry picked from commit 512ab31f477f9f1ec763a7face556013ffef4c7e) --- M sdk/lib/ovirtsdk4.rb M sdk/lib/ovirtsdk4/connection.rb A sdk/lib/ovirtsdk4/error.rb M sdk/spec/vm_service_spec.rb 4 files changed, 47 insertions(+), 1 deletion(-) Approvals: Juan Hernandez: Verified; Looks good to me, approved; Passed CI tests -- To view, visit https://gerrit.ovirt.org/77009 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: I6e3fc71e17fa1726049ca1e49c8cc9e295c15b0c Gerrit-PatchSet: 2 Gerrit-Project: ovirt-engine-sdk-ruby Gerrit-Branch: sdk_4.1 Gerrit-Owner: Juan Hernandez <juan.hernandez@redhat.com> Gerrit-Reviewer: Jenkins CI Gerrit-Reviewer: Juan Hernandez <juan.hernandez@redhat.com> Gerrit-Reviewer: gerrit-hooks <automation@ovirt.org>
participants (1)
-
Code Review