From 9646f57e57530ddf49685ae1d350a60a38599b1e Mon Sep 17 00:00:00 2001 From: mahmoudadel54 Date: Mon, 20 Jan 2025 16:38:50 +0200 Subject: [PATCH] #10766: Remove error notified by GeoFence when moving a rule for geofence stand-alone version only Description: - fixing the shown error by moving the RULE_SAVED action to be after move rule in case full update and throw error only if addRule is failed --- web/client/observables/rulesmanager.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/web/client/observables/rulesmanager.js b/web/client/observables/rulesmanager.js index 88c57fab29..3de5a85a05 100644 --- a/web/client/observables/rulesmanager.js +++ b/web/client/observables/rulesmanager.js @@ -61,12 +61,12 @@ const fullUpdate = (update$) => update$.filter(({rule: r, origRule: oR}) =>getUp .catch((e) => { const {priority: p, id: omit, ...oldRule} = origRule; oldRule.position = {value: p, position: "fixedPriority"}; - // We have to restore original rule and to throw the exception!! - return Rx.Observable.defer(() => GeoFence.addRule(oldRule)).concat(Rx.Observable.of({type: RULE_SAVED}).do(() => { throw (e); })); + // We have to restore original rule and throw the exception if failed!! + return Rx.Observable.defer(() => GeoFence.addRule(oldRule)).catch(() => { throw (e); }); }); }) .switchMap(({data: id}) => { - return Rx.Observable.defer(() => GeoFence.moveRules(rule.priority, [{id}])); + return Rx.Observable.defer(() => GeoFence.moveRules(rule.priority, [{id}])).concat(Rx.Observable.of({type: RULE_SAVED})); } )); const grantUpdate = (update$) => update$.filter(({rule: r, origRule: oR}) => getUpdateType(oR, r) === 'grant')