]> git.proxmox.com Git - pve-ha-manager.git/commitdiff
Sim/Hardware: move set_service_state to base class
authorThomas Lamprecht <t.lamprecht@proxmox.com>
Tue, 22 Dec 2015 07:52:33 +0000 (08:52 +0100)
committerDietmar Maurer <dietmar@proxmox.com>
Tue, 22 Dec 2015 08:07:02 +0000 (09:07 +0100)
Move the set_service_state method from the Realtime Hardware class
(RTHardware) to it's base class as the TestHardware could also use
it.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
src/PVE/HA/Sim/Hardware.pm
src/PVE/HA/Sim/RTHardware.pm

index 24ef68bf30aeeb1cb1bc6edf09a913b316ceec1e..5a0d014231f1252ffcd639613b8dfb5332b22042 100644 (file)
@@ -114,6 +114,19 @@ sub write_service_config {
     return PVE::HA::Tools::write_json_to_file($filename, $conf);
 } 
 
+sub set_service_state {
+    my ($self, $sid, $state) = @_;
+
+    my $conf = $self->read_service_config();
+    die "no such service '$sid'" if !$conf->{$sid};
+
+    $conf->{$sid}->{state} = $state;
+
+    $self->write_service_config($conf);
+
+    return $conf;
+}
+
 sub change_service_location {
     my ($self, $sid, $current_node, $new_node) = @_;
 
index 2148e20ad4bc669123a60f49e794ccb999d170ff..866d0bcc6369f79c1d00d7cfb3613390caca3bc7 100644 (file)
@@ -315,17 +315,11 @@ sub set_network_state {
 sub set_service_state {
     my ($self, $sid) = @_;
 
-    $self->{service_config} = $self->read_service_config();
-
     my $d = $self->{service_gui}->{$sid} || die "no such service '$sid'";
-
     my $state = $d->{enable_btn}->get_active() ? 'enabled' : 'disabled';
-    
-    $d = $self->{service_config}->{$sid} || die "no such service '$sid'";
 
-    $d->{state} = $state;
+    $self->{service_config} = $self->SUPER::set_service_state($sid, $state);
 
-    $self->write_service_config($self->{service_config});
 }
 
 sub create_node_control {