From c7c6be9fdf6a5f3f469b8a9a8742e613f2f202f7 Mon Sep 17 00:00:00 2001 From: tvl2386 Date: Mon, 22 Feb 2021 11:48:16 +0100 Subject: [PATCH] first implementation of dirty_tracking (fails test suite) --- lib/netbox_client_ruby/entity.rb | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lib/netbox_client_ruby/entity.rb b/lib/netbox_client_ruby/entity.rb index 726fab4..4cf7b4b 100644 --- a/lib/netbox_client_ruby/entity.rb +++ b/lib/netbox_client_ruby/entity.rb @@ -135,6 +135,10 @@ def reload self end + def changed? + !dirty_data.empty? + end + def save return post unless ids_set? patch @@ -200,6 +204,11 @@ def method_missing(name_as_symbol, *args, &block) return super if not_this_classes_business + if ids_set? and data[name[0..-2]] == args[0] + dirty_data.delete name[0..-2] + return args[0] + end + dirty_data[name[0..-2]] = args[0] return args[0] end