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>
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) = @_;
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 {