File Coverage

lib/Rex/Interface/Cache/Base.pm
Criterion Covered Total %
statement 25 35 71.4
branch 3 4 75.0
condition 1 3 33.3
subroutine 9 12 75.0
pod 0 8 0.0
total 38 62 61.2


line stmt bran cond sub pod time code
1             #
2             # (c) Jan Gehring
3             #
4              
5             package Rex::Interface::Cache::Base;
6              
7 68     68   1120 use v5.12.5;
  68         278  
8 68     68   496 use warnings;
  68         185  
  68         3456  
9              
10             our $VERSION = '1.14.3'; # VERSION
11              
12 68     68   612 use Rex::Logger;
  68         250  
  68         703  
13 68     68   2395 use Rex;
  68         213  
  68         1480  
14              
15             sub new {
16 113     113 0 344 my $that = shift;
17 113   33     763 my $proto = ref($that) || $that;
18 113         290 my $self = {@_};
19              
20 113         350 bless( $self, $proto );
21              
22 113         1656 return $self;
23             }
24              
25             sub gen_key_name {
26 659     659 0 2492 my ( $self, $key_name ) = @_;
27 659 50       2945 return $key_name if $key_name;
28              
29 0         0 my ( $package, $filename, $line, $subroutine ) = caller(1);
30              
31 0         0 $package =~ s/::/_/g;
32              
33 0         0 my $gen_key_name = "\L${package}_\L${subroutine}";
34              
35 0         0 return $gen_key_name;
36             }
37              
38             sub set {
39 1253     1253 0 9108 my ( $self, $key, $val, $timeout ) = @_;
40              
41 1253 100       13202 if ( Rex::Config->get_use_cache ) {
42 6         68 $self->{__data__}->{$key} = $val;
43             }
44             }
45              
46             sub valid {
47 1025     1025 0 4050 my ( $self, $key ) = @_;
48 1025         5837 return exists $self->{__data__}->{$key};
49             }
50              
51             sub get {
52 941     941 0 6029 my ( $self, $key ) = @_;
53 941         5042 return $self->{__data__}->{$key};
54             }
55              
56             sub reset {
57 0     0 0   my ($self) = @_;
58 0           $self->{__data__} = {};
59             }
60              
61             # have to be overwritten by subclass
62             sub save {
63 0     0 0   my ($self) = @_;
64 0           return 1;
65             }
66              
67             # have to be overwritten by subclass
68             sub load {
69 0     0 0   my ($self) = @_;
70 0           return 0;
71             }
72              
73             1;