Revision 9e4a9fec
Von Moritz Bunkus vor mehr als 9 Jahren hinzugefügt
SL/DB/BackgroundJob.pm | ||
---|---|---|
84 | 84 |
sub set_data { |
85 | 85 |
my ($self, %data) = @_; |
86 | 86 |
|
87 |
my $data = YAML::Load($self->data); |
|
88 |
$data->{$_} = $data{$_} for keys %data; |
|
89 |
$self->data(YAML::Dump($data)); |
|
87 |
$self->data(YAML::Dump({ |
|
88 |
%{ $self->data_as_hash }, |
|
89 |
%data, |
|
90 |
})); |
|
90 | 91 |
|
91 | 92 |
$self; |
92 | 93 |
} |
Auch abrufbar als: Unified diff
SL::DB::BackgroundJob: refactoring von set_data für mehr programmatische Sicherheit
$self->data kann durchaus leer sein, und dann gibt YAML::Load schlicht
einen leeren String und keine Hashref zurück.
Daher $self->data_as_hash benutzen, das bereits für die meisten Fälle
gewappnet ist. Außerdem einfachere Hash-Zuweisung.