… | |
… | |
746 | delete $MON_DB{$family}; |
746 | delete $MON_DB{$family}; |
747 | } |
747 | } |
748 | } |
748 | } |
749 | } |
749 | } |
750 | |
750 | |
|
|
751 | # full update |
751 | $NODE_REQ{g_chg1} = sub { |
752 | $NODE_REQ{g_chg1} = sub { |
752 | my ($f, $db) = @_; |
753 | my ($f, $db) = @_; |
753 | |
754 | |
754 | my $odb = delete $MON_DB{$f}; |
755 | # add or replace keys |
|
|
756 | while (my ($k, $v) = each %$db) { |
|
|
757 | g_chg $f, $k, $v; |
|
|
758 | } |
755 | |
759 | |
756 | for (keys %$odb) { |
760 | # delete keys that are no longer present |
|
|
761 | for (keys %{ $MON_DB{$f} }) { |
757 | g_chg $f, $_ |
762 | g_chg $f, $_ |
758 | unless exists $db->{$_}; |
763 | unless exists $db->{$_}; |
759 | } |
764 | } |
760 | |
|
|
761 | while (my ($k, $v) = each %$db) { |
|
|
762 | g_chg $f, $k, $v; |
|
|
763 | } |
|
|
764 | }; |
765 | }; |
765 | |
766 | |
|
|
767 | # incremental update |
766 | $NODE_REQ{g_chg2} = \&g_chg; |
768 | $NODE_REQ{g_chg2} = \&g_chg; |
767 | |
769 | |
768 | ############################################################################# |
770 | ############################################################################# |
769 | # configure |
771 | # configure |
770 | |
772 | |