diff options
author | Florian Pritz <bluewind@xinu.at> | 2018-09-06 18:19:07 +0200 |
---|---|---|
committer | Florian Pritz <bluewind@xinu.at> | 2018-09-06 18:19:07 +0200 |
commit | b8d19a541782812a4cd02a408344760d83b7b4e0 (patch) | |
tree | 35a76837e3cbb16067438d8d94d2399ee6914224 /lib/App/BorgRestore/PathTimeTable/Memory.pm | |
parent | 892db03a49333daf7d808395a0a25e81ec2a76ab (diff) | |
download | App-BorgRestore-b8d19a541782812a4cd02a408344760d83b7b4e0.tar.gz App-BorgRestore-b8d19a541782812a4cd02a408344760d83b7b4e0.tar.xz |
Add direct-to-db adding of paths instead of memory only
Signed-off-by: Florian Pritz <bluewind@xinu.at>
Diffstat (limited to 'lib/App/BorgRestore/PathTimeTable/Memory.pm')
-rw-r--r-- | lib/App/BorgRestore/PathTimeTable/Memory.pm | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/lib/App/BorgRestore/PathTimeTable/Memory.pm b/lib/App/BorgRestore/PathTimeTable/Memory.pm index 7aee5b0..012e937 100644 --- a/lib/App/BorgRestore/PathTimeTable/Memory.pm +++ b/lib/App/BorgRestore/PathTimeTable/Memory.pm @@ -5,6 +5,17 @@ use warnings; use Function::Parameters; +=head1 NAME + +App::BorgRestore::PathTimeTable::Memory - In-Memory preparation of new archive data + +=head1 DESCRIPTION + +This is used by L<App::BorgRestore> to add new archive data into the database. +Data is prepared in memory first and only written to the database once. + +=cut + method new($class: $deps = {}) { return $class->new_no_defaults($deps); } @@ -19,6 +30,10 @@ method new_no_defaults($class: $deps = {}) { return $self; } +method set_archive_id($archive_id) { + $self->{archive_id} = $archive_id; +} + method add_path($path, $time) { my @components = split /\//, $path; @@ -45,8 +60,8 @@ method add_path($path, $time) { } } -method save_nodes($archive_id) { - $self->_save_node($archive_id, undef, $self->{lookuptable}); +method save_nodes() { + $self->_save_node($self->{archive_id}, undef, $self->{lookuptable}); } method _save_node($archive_id, $prefix, $node) { |