File Coverage

blib/lib/Maven/Xml/Common/BaseProfile.pm
Criterion Covered Total %
statement 9 9 100.0
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 12 12 100.0


line stmt bran cond sub pod time code
1 1     1   5 use strict;
  1         1  
  1         25  
2 1     1   4 use warnings;
  1         1  
  1         53  
3              
4             package Maven::Xml::Common::BaseProfile;
5             $Maven::Xml::Common::BaseProfile::VERSION = '1.12';
6             # ABSTRACT: Maven BaseProfile element
7             # PODNAME: Maven::Xml::Common::BaseProfile
8              
9 1     1   521 use parent qw(Maven::Xml::XmlNodeParser);
  1         297  
  1         5  
10             __PACKAGE__->follow_best_practice;
11             __PACKAGE__->mk_ro_accessors(
12             qw(
13             activation
14             id
15             pluginRepositories
16             properties
17             repositories
18             )
19             );
20              
21             sub _add_value {
22             my ( $self, $name, $value ) = @_;
23              
24             return if ( $name eq 'profile' );
25             return if ( $name eq 'repositories' );
26             return if ( $name eq 'pluginRepositories' );
27              
28             if ( $name eq 'repository' ) {
29             push( @{ $self->{repositories} }, $value );
30             }
31             elsif ( $name eq 'pluginRepository' ) {
32             push( @{ $self->{pluginRepositories} }, $value );
33             }
34             else {
35             $self->Maven::Xml::XmlNodeParser::_add_value( $name, $value );
36             }
37             }
38              
39             sub _get_parser {
40             my ( $self, $name ) = @_;
41             if ( $name eq 'activation' ) {
42             return Maven::Xml::Common::BaseProfile::Activation->new();
43             }
44             if ( $name eq 'properties' ) {
45             return Maven::Xml::Common::Properties->new();
46             }
47             if ( $name eq 'repository' ) {
48             return Maven::Xml::Common::Repository->new();
49             }
50             if ( $name eq 'pluginRepository' ) {
51             return Maven::Xml::Common::Repository->new();
52             }
53             return $self;
54             }
55              
56             package Maven::Xml::Common::BaseProfile::Activation;
57             $Maven::Xml::Common::BaseProfile::Activation::VERSION = '1.12';
58             use parent qw(Maven::Xml::XmlNodeParser);
59             __PACKAGE__->follow_best_practice;
60             __PACKAGE__->mk_ro_accessors(
61             qw(
62             activeByDefault
63             file
64             jdk
65             os
66             property
67             )
68             );
69              
70             sub _get_parser {
71             my ( $self, $name ) = @_;
72             if ( $name eq 'os' ) {
73             return Maven::Xml::Common::BaseProfile::Activation::Os->new();
74             }
75             if ( $name eq 'property' ) {
76             return Maven::Xml::Common::BaseProfile::Activation::Property->new();
77             }
78             if ( $name eq 'file' ) {
79             return Maven::Xml::Common::BaseProfile::Activation::File->new();
80             }
81             return $self;
82             }
83              
84             package Maven::Xml::Common::BaseProfile::Activation::Os;
85             $Maven::Xml::Common::BaseProfile::Activation::Os::VERSION = '1.12';
86             use parent qw(Maven::Xml::XmlNodeParser);
87             __PACKAGE__->follow_best_practice;
88             __PACKAGE__->mk_ro_accessors(
89             qw(
90             arch
91             name
92             family
93             version
94             )
95             );
96              
97             package Maven::Xml::Common::BaseProfile::Activation::Property;
98             $Maven::Xml::Common::BaseProfile::Activation::Property::VERSION = '1.12';
99             use parent qw(Maven::Xml::XmlNodeParser);
100             __PACKAGE__->follow_best_practice;
101             __PACKAGE__->mk_ro_accessors(
102             qw(
103             name
104             value
105             )
106             );
107              
108             package Maven::Xml::Common::BaseProfile::Activation::File;
109             $Maven::Xml::Common::BaseProfile::Activation::File::VERSION = '1.12';
110             use parent qw(Maven::Xml::XmlNodeParser);
111             __PACKAGE__->follow_best_practice;
112             __PACKAGE__->mk_ro_accessors(
113             qw(
114             exists
115             missing
116             )
117             );
118              
119             1;
120              
121             __END__