From 28448dddeef3302cfd367158258670efa226ed5d Mon Sep 17 00:00:00 2001 From: Dobrica Pavlinusic Date: Mon, 8 Mar 2010 22:24:31 +0100 Subject: [PATCH] call set if vendor.yaml changes --- lib/CWMP/Vendor.pm | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/lib/CWMP/Vendor.pm b/lib/CWMP/Vendor.pm index 827c69b..438c321 100644 --- a/lib/CWMP/Vendor.pm +++ b/lib/CWMP/Vendor.pm @@ -83,20 +83,17 @@ sub vendor_config { if ( ! exists $stored->{$n} ) { warn "# $uid missing $n\n"; push @refresh, $n; - } elsif ( $vendor->{$n} ne $stored->{$n} ) { - $queue->enqueue( 'SetParameterValues', { $n => $vendor->{$n} } ) - unless $tried->{$uid}->{$n}->{set}++; + } elsif ( $vendor->{$n} ne $stored->{$n} && ! $tried->{$uid}->{$n}->{set} && $tried->{$uid}->{$n}->{set} ne $vendor->{$n} ) { + $queue->enqueue( 'SetParameterValues', { $n => $vendor->{$n} } ); + push @refresh, $n; + $tried->{$uid}->{$n}->{set} = $vendor->{$n}; warn "# set $uid $n $stored->{$n} -> $vendor->{$n}\n"; } else { warn "# ok $uid $n\n"; } } - if ( @refresh ) { - $queue->enqueue( 'GetParameterValues', [ @refresh ] ); - warn "vendor_hook $uid SetParameterValues ", dump( @refresh ); - return ( 'GetParameterValues', [ @refresh ] ); - } + return ( 'GetParameterValues', [ @refresh ] ) if @refresh; warn "# tried ",dump $tried; -- 2.20.1