File Coverage

lib/Rex/Interface/File.pm
Criterion Covered Total %
statement 240 240 100.0
branch 3 4 75.0
condition n/a
subroutine 80 80 100.0
pod 0 1 0.0
total 323 325 99.3


line stmt bran cond sub pod time code
1             #
2             # (c) Jan Gehring
3             #
4              
5             package Rex::Interface::File;
6              
7 97     97   1485 use v5.12.5;
  97         438  
8 97     97   868 use warnings;
  97         331  
  97         4109  
9              
10             our $VERSION = '1.14.2.2'; # TRIAL VERSION
11              
12 97     97   5790 use Rex;
  97         347  
  97         626  
13              
14             sub create {
15 195     193 0 3790 my ( $class, $type ) = @_;
16              
17 193 100       1005 unless ($type) {
18              
19             #$type = Rex::Commands::task()->get_connection_type;
20 184         882 $type = Rex::get_current_connection()->{conn}->get_connection_type;
21              
22             #Rex::Commands::task()->get_connection_type;
23             #if(Rex::is_ssh() && ! Rex::is_sudo()) {
24             # $type = "SSH";
25             #}
26             #elsif(Rex::is_sudo()) {
27             # $type = "Sudo";
28             #}
29             #else {
30             # $type = "Local";
31             #}
32             }
33              
34 193         1604 my $class_name = "Rex::Interface::File::$type";
35 193     18   38027 eval "use $class_name;";
  18     16   554  
  18     13   258  
  17     11   234  
  15     9   341  
  15     9   192  
  13     8   446  
  11     8   280  
  11     8   197  
  11     1   2315  
  11     1   276  
  11     1   162  
  11     1   381  
  9     1   257  
  9     1   97  
  9     1   292  
  9     1   303  
  9     1   174  
  9     1   484  
  8     1   212  
  8     1   127  
  8     1   311  
  8     1   178  
  8     1   132  
  8     1   238  
  8     1   235  
  8     1   113  
  8     1   346  
  1     1   32  
  1     1   59  
  1     1   26  
  1     1   27  
  1     1   26  
  1     1   52  
  1     1   19  
  1     1   57  
  1     1   25  
  1     1   13  
  1     1   39  
  1     1   30  
  1     1   14  
  1     1   51  
  1     1   32  
  1     1   14  
  1     1   111  
  1     1   23  
  1     1   10  
  1     1   16  
  1     1   47  
  1     1   11  
  1     1   53  
  1     1   19  
  1     1   22  
  1     1   24  
  1     1   35  
  1     1   12  
  1     1   55  
  1     1   17  
  1     1   10  
  1     1   18  
  1     1   28  
  1     1   8  
  1     1   34  
  1     1   26  
  1     1   51  
  1     1   39  
  1     1   26  
  1     1   10  
  1     1   49  
  1     1   27  
  1     1   10  
  1     1   43  
  1     1   27  
  1     1   13  
  1     1   39  
  1     1   31  
  1         10  
  1         52  
  1         31  
  1         13  
  1         43  
  1         32  
  1         15  
  1         37  
  1         30  
  1         13  
  1         41  
  1         47  
  1         12  
  1         48  
  1         31  
  1         12  
  1         41  
  1         34  
  1         18  
  1         48  
  1         38  
  1         22  
  1         40  
  1         35  
  1         20  
  1         39  
  1         38  
  1         18  
  1         73  
  1         37  
  1         15  
  1         39  
  1         29  
  1         10  
  1         36  
  1         34  
  1         13  
  1         40  
  1         34  
  1         14  
  1         37  
  1         20  
  1         10  
  1         25  
  1         39  
  1         32  
  1         44  
  1         18  
  1         16  
  1         20  
  1         27  
  1         12  
  1         35  
  1         28  
  1         4  
  1         40  
  1         59  
  1         16  
  1         58  
  1         36  
  1         18  
  1         53  
  1         21  
  1         14  
  1         36  
  1         24  
  1         11  
  1         35  
  1         26  
  1         14  
  1         37  
  1         25  
  1         16  
  1         17  
  1         24  
  1         13  
  1         40  
  1         43  
  1         22  
  1         68  
  1         29  
  1         20  
  1         44  
  1         29  
  1         12  
  1         42  
  1         98  
  1         12  
  1         44  
  1         16  
  1         6  
  1         25  
  1         1032  
  1         13  
  1         35  
  1         25  
  1         14  
  1         42  
  1         27  
  1         7  
  1         20  
  1         31  
  1         22  
  1         43  
  1         40  
  1         32  
  1         68  
  1         42  
  1         13  
  1         30  
  1         46  
  1         31  
  1         69  
  1         41  
  1         16  
  1         48  
  1         27  
  1         13  
  1         24  
  1         27  
  1         13  
  1         37  
  1         32  
  1         6  
  1         44  
  1         21  
  1         19  
  1         45  
  1         41  
  1         13  
  1         37  
  1         36  
  1         26  
  1         56  
  1         31  
  1         11  
  1         42  
  1         21  
  1         16  
  1         42  
  1         33  
  1         12  
  1         80  
  1         32  
  1         12  
  1         46  
  1         27  
  1         12  
  1         46  
36 193 50       5717 if ($@) { die("Error loading file interface $type.\n$@"); }
  4         117  
37              
38 193         2887 return $class_name->new;
39             }
40              
41             1;