File Coverage

blib/lib/DNS/Config/Server.pm
Criterion Covered Total %
statement 15 50 30.0
branch 0 18 0.0
condition 0 9 0.0
subroutine 5 13 38.4
pod 0 8 0.0
total 20 98 20.4


line stmt bran cond sub pod time code
1             #!/usr/local/bin/perl -w
2             ######################################################################
3             #
4             # DNS/Config/Server.pm
5             #
6             # $Id: Server.pm,v 1.3 2003/02/16 10:15:31 awolf Exp $
7             # $Revision: 1.3 $
8             # $Author: awolf $
9             # $Date: 2003/02/16 10:15:31 $
10             #
11             # Copyright (C)2001-2003 Andy Wolf. All rights reserved.
12             #
13             # This library is free software; you can redistribute it and/or
14             # modify it under the same terms as Perl itself.
15             #
16             ######################################################################
17              
18             package DNS::Config::Server;
19              
20 2     2   10 no warnings 'portable';
  2         4  
  2         61  
21 2     2   19 use 5.6.0;
  2         7  
  2         1470  
22 2     2   12 use strict;
  2         4  
  2         73  
23 2     2   9 use warnings;
  2         3  
  2         13959  
24              
25             my $VERSION = '0.66';
26             my $REVISION = sprintf("%d.%02d", q$Revision: 1.3 $ =~ /(\d+)\.(\d+)/);
27              
28             sub new {
29 0     0 0   my($pkg, $name, $managed) = @_;
30            
31 0   0       my $class = ref($pkg) || $pkg;
32              
33 0           my $self = {
34             'id' => undef,
35             'name' => $name,
36             'managed' => $managed,
37             'zones' => [],
38             };
39              
40 0           bless $self, $class;
41            
42 0           return $self;
43             }
44              
45             sub id {
46 0     0 0   my($self, $id) = @_;
47            
48 0 0         $self->{'id'} = $id if($id);
49            
50 0           return $self->{'id'};
51             }
52              
53             sub name {
54 0     0 0   my($self, $name) = @_;
55            
56 0 0         $self->{'name'} = $name if($name);
57            
58 0           return $self->{'name'};
59             }
60              
61             sub managed {
62 0     0 0   my($self, $managed) = @_;
63            
64 0 0         $self->{'managed'} = $managed if($managed);
65            
66 0           return $self->{'managed'};
67             }
68              
69             sub add {
70 0     0 0   my($self, $zone) = @_;
71            
72 0           push @{ $self->{'zones'} }, ($zone);
  0            
73            
74 0           return $zone;
75             }
76              
77             # sub delete {
78             # }
79             ########################################
80              
81             sub zone {
82 0     0 0   my($self, %hash) = @_;
83 0           my $zone;
84            
85 0           my @zones = $self->zones();
86            
87 0 0 0       if(exists $hash{'NAME'} && $hash{'NAME'}) {
    0 0        
88 0           for (@zones) {
89 0 0         $zone = $_ if($_->name() eq $hash{'NAME'});
90             }
91             }
92             elsif(exists $hash{'ID'} && $hash{'ID'}) {
93 0           for (@zones) {
94 0 0         $zone = $_ if($_->id() eq $hash{'ID'});
95             }
96             }
97            
98 0           return $zone;
99             }
100              
101             sub zones {
102 0     0 0   my($self, @zones) = @_;
103            
104 0 0         $self->{'zones'} = \@zones if(scalar @zones);
105            
106 0 0         my $result = $self->{'zones'} if(ref($self->{'zones'}) eq 'ARRAY');
107            
108 0           return @$result;
109             }
110              
111             sub debug {
112 0     0 0   my($self) = @_;
113            
114 0           eval {
115 2     2   23 use Data::Dumper;
  2         4  
  2         217  
116            
117 0           print Dumper($self);
118             };
119              
120 0           return;
121             }
122              
123             1;
124              
125             __END__