File Coverage

blib/lib/Java/Release.pm
Criterion Covered Total %
statement 29 29 100.0
branch 4 4 100.0
condition n/a
subroutine 6 6 100.0
pod 1 1 100.0
total 40 40 100.0


line stmt bran cond sub pod time code
1             package Java::Release;
2              
3 3     3   84702 use base qw(Exporter);
  3         19  
  3         438  
4 3     3   20 use strict;
  3         6  
  3         68  
5 3     3   17 use warnings;
  3         5  
  3         89  
6              
7 3     3   1441 use Error::Pure qw(err);
  3         24505  
  3         58  
8 3     3   166 use Readonly;
  3         6  
  3         801  
9              
10             # Constants.
11             Readonly::Array our @EXPORT => qw(parse_java_jdk_release);
12              
13             our $VERSION = 0.01;
14              
15             # Parse Java JDK release.
16             sub parse_java_jdk_release {
17 3     3 1 1427 my $release_name = shift;
18              
19 3         6 my $release_hr = {};
20 3 100       21 if ($release_name =~ m/^jdk-([0-9]+)(u([0-9]+))?-linux-(i586|x64|amd64|arm-vfp-hflt)\.(bin|tar\.gz)$/ms) {
21 2         52 $release_hr->{j2se_arch} = $4;
22 2         7 $release_hr->{j2se_release} = $1;
23 2         5 $release_hr->{j2se_update} = $3;
24 2         4 $release_hr->{j2se_version} = $release_hr->{j2se_release};
25 2         5 $release_hr->{j2se_version_name} = $release_hr->{j2se_release};
26 2 100       6 if ($release_hr->{j2se_update}) {
27             $release_hr->{j2se_version_name}
28 1         4 .= ' Update '.$release_hr->{j2se_update};
29             $release_hr->{j2se_version}
30             .= 'u'.$release_hr->{j2se_update}
31 1         3 } else {
32 1         2 $release_hr->{j2se_version_name} .= ' GA';
33             }
34             } else {
35 1         6 err "Unsupported release.",
36             'release_name', $release_name;
37             }
38              
39 2         8 return $release_hr;
40             }
41              
42             1;
43              
44             __END__