@@ -236,6 +236,16 @@ public void setInfo(String info) {
236236 }
237237 }
238238
239+ private Answer applyConfigSingle (NetworkElementCommand cmd , List <ConfigItem > cfg ) {
240+ for (ConfigItem c : cfg ) {
241+ ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
242+ if (!result .isSuccess ()) {
243+ return new Answer (cmd , false , result .getDetails ());
244+ }
245+ }
246+ return new Answer (cmd );
247+ }
248+
239249 private List <ConfigItem > generateConfig (VpnUsersCfgCommand cmd ) {
240250 LinkedList <ConfigItem > cfg = new LinkedList <>();
241251 for (VpnUsersCfgCommand .UsernamePassword userpwd : cmd .getUserpwds ()) {
@@ -254,13 +264,7 @@ private List<ConfigItem> generateConfig(VpnUsersCfgCommand cmd) {
254264
255265 private Answer execute (VpnUsersCfgCommand cmd ) {
256266 List <ConfigItem > cfg = generateConfig (cmd );
257- for (ConfigItem c : cfg ) {
258- ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
259- if (!result .isSuccess ()) {
260- return new Answer (cmd , false , "Configure VPN user failed: " + result .getDetails ());
261- }
262- }
263- return new Answer (cmd );
267+ return applyConfigSingle (cmd , cfg );
264268 }
265269
266270 private List <ConfigItem > generateConfig (RemoteAccessVpnCfgCommand cmd ) {
@@ -289,9 +293,7 @@ private List<ConfigItem> generateConfig(RemoteAccessVpnCfgCommand cmd) {
289293
290294 private Answer execute (RemoteAccessVpnCfgCommand cmd ) {
291295 List <ConfigItem > cfg = generateConfig (cmd );
292- ConfigItem c = cfg .get (0 );
293- ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
294- return new Answer (cmd , result .isSuccess (), result .getDetails ());
296+ return applyConfigSingle (cmd , cfg );
295297 }
296298
297299 private List <ConfigItem > generateConfig (SetFirewallRulesCommand cmd ) {
@@ -543,9 +545,7 @@ private List<ConfigItem> generateConfig(VmDataCommand cmd) {
543545
544546 protected Answer execute (VmDataCommand cmd ) {
545547 List <ConfigItem > cfg = generateConfig (cmd );
546- ConfigItem c = cfg .get (0 );
547- final ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
548- return new Answer (cmd , result .isSuccess (), result .getDetails ());
548+ return applyConfigSingle (cmd , cfg );
549549 }
550550
551551 private List <ConfigItem > generateConfig (SavePasswordCommand cmd ) {
@@ -563,9 +563,7 @@ private List<ConfigItem> generateConfig(SavePasswordCommand cmd) {
563563
564564 protected Answer execute (final SavePasswordCommand cmd ) {
565565 List <ConfigItem > cfg = generateConfig (cmd );
566- ConfigItem c = cfg .get (0 );
567- ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
568- return new Answer (cmd , result .isSuccess (), result .getDetails ());
566+ return applyConfigSingle (cmd , cfg );
569567 }
570568
571569 private List <ConfigItem > generateConfig (DhcpEntryCommand cmd ) {
@@ -604,9 +602,7 @@ private List<ConfigItem> generateConfig(DhcpEntryCommand cmd) {
604602
605603 protected Answer execute (final DhcpEntryCommand cmd ) {
606604 List <ConfigItem > cfg = generateConfig (cmd );
607- ConfigItem c = cfg .get (0 );
608- final ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
609- return new Answer (cmd , result .isSuccess (), result .getDetails ());
605+ return applyConfigSingle (cmd , cfg );
610606 }
611607
612608 private List <ConfigItem > generateConfig (CreateIpAliasCommand cmd ) {
@@ -624,9 +620,7 @@ private List<ConfigItem> generateConfig(CreateIpAliasCommand cmd) {
624620
625621 protected Answer execute (final CreateIpAliasCommand cmd ) {
626622 List <ConfigItem > cfg = generateConfig (cmd );
627- ConfigItem c = cfg .get (0 );
628- final ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
629- return new Answer (cmd , result .isSuccess (), result .getDetails ());
623+ return applyConfigSingle (cmd , cfg );
630624 }
631625
632626 private List <ConfigItem > generateConfig (DeleteIpAliasCommand cmd ) {
@@ -650,9 +644,7 @@ private List<ConfigItem> generateConfig(DeleteIpAliasCommand cmd) {
650644
651645 protected Answer execute (final DeleteIpAliasCommand cmd ) {
652646 List <ConfigItem > cfg = generateConfig (cmd );
653- ConfigItem c = cfg .get (0 );
654- final ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
655- return new Answer (cmd , result .isSuccess (), result .getDetails ());
647+ return applyConfigSingle (cmd , cfg );
656648 }
657649
658650 private List <ConfigItem > generateConfig (DnsMasqConfigCommand cmd ) {
@@ -670,9 +662,7 @@ private List<ConfigItem> generateConfig(DnsMasqConfigCommand cmd) {
670662
671663 protected Answer execute (final DnsMasqConfigCommand cmd ) {
672664 List <ConfigItem > cfg = generateConfig (cmd );
673- ConfigItem c = cfg .get (0 );
674- final ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
675- return new Answer (cmd , result .isSuccess (), result .getDetails ());
665+ return applyConfigSingle (cmd , cfg );
676666 }
677667
678668 private CheckS2SVpnConnectionsAnswer execute (CheckS2SVpnConnectionsCommand cmd ) {
@@ -701,9 +691,7 @@ private List<ConfigItem> generateConfig(BumpUpPriorityCommand cmd) {
701691
702692 protected Answer execute (BumpUpPriorityCommand cmd ) {
703693 List <ConfigItem > cfg = generateConfig (cmd );
704- ConfigItem c = cfg .get (0 );
705- final ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
706- return new Answer (cmd , result .isSuccess (), result .getDetails ());
694+ return applyConfigSingle (cmd , cfg );
707695 }
708696
709697 protected Answer execute (GetDomRVersionCmd cmd ) {
@@ -769,9 +757,7 @@ private List<ConfigItem> generateConfig(Site2SiteVpnCfgCommand cmd) {
769757
770758 protected Answer execute (Site2SiteVpnCfgCommand cmd ) {
771759 List <ConfigItem > cfg = generateConfig (cmd );
772- ConfigItem c = cfg .get (0 );
773- final ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
774- return new Answer (cmd , result .isSuccess (), result .getDetails ());
760+ return applyConfigSingle (cmd , cfg );
775761 }
776762
777763 protected List <ConfigItem > generateConfig (SetMonitorServiceCommand cmd ) {
@@ -791,9 +777,7 @@ protected List<ConfigItem> generateConfig(SetMonitorServiceCommand cmd) {
791777
792778 protected Answer execute (SetMonitorServiceCommand cmd ) {
793779 List <ConfigItem > cfg = generateConfig (cmd );
794- ConfigItem c = cfg .get (0 );
795- final ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
796- return new Answer (cmd , result .isSuccess (), result .getDetails ());
780+ return applyConfigSingle (cmd , cfg );
797781 }
798782
799783 protected List <ConfigItem > generateConfig (SetupGuestNetworkCommand cmd ) {
@@ -838,9 +822,7 @@ protected List<ConfigItem> generateConfig(SetupGuestNetworkCommand cmd) {
838822
839823 protected Answer execute (SetupGuestNetworkCommand cmd ) {
840824 List <ConfigItem > cfg = generateConfig (cmd );
841- ConfigItem c = cfg .get (0 );
842- final ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
843- return new Answer (cmd , result .isSuccess (), result .getDetails ());
825+ return applyConfigSingle (cmd , cfg );
844826 }
845827
846828 protected List <ConfigItem > generateConfig (SetNetworkACLCommand cmd ) {
@@ -911,9 +893,7 @@ protected List<ConfigItem> generateConfig(SetSourceNatCommand cmd) {
911893
912894 protected Answer execute (SetSourceNatCommand cmd ) {
913895 List <ConfigItem > cfg = generateConfig (cmd );
914- ConfigItem c = cfg .get (0 );
915- final ExecutionResult result = _vrDeployer .executeInVR (cmd .getRouterAccessIp (), c .getScript (), c .getArgs ());
916- return new Answer (cmd , result .isSuccess (), result .getDetails ());
896+ return applyConfigSingle (cmd , cfg );
917897 }
918898
919899 protected List <ConfigItem > generateConfig (SetPortForwardingRulesVpcCommand cmd ) {
0 commit comments