File Coverage

blib/lib/DigitalOcean/Domain/Record.pm
Criterion Covered Total %
statement 6 13 46.1
branch n/a
condition n/a
subroutine 2 5 40.0
pod 3 3 100.0
total 11 21 52.3


line stmt bran cond sub pod time code
1 1     1   5 use strict;
  1         2  
  1         33  
2             package DigitalOcean::Domain::Record;
3 1     1   5 use Mouse;
  1         2  
  1         5  
4              
5             #ABSTRACT: Represents a Domain object in the DigitalOcean API
6              
7             has DigitalOcean => (
8             is => 'rw',
9             isa => 'DigitalOcean',
10             );
11              
12             has Domain => (
13             is => 'rw',
14             isa => 'DigitalOcean::Domain',
15             );
16              
17              
18             has id => (
19             is => 'ro',
20             isa => 'Num',
21             );
22              
23              
24             has type => (
25             is => 'ro',
26             isa => 'Str|Undef',
27             );
28              
29              
30             has name => (
31             is => 'ro',
32             isa => 'Str|Undef',
33             );
34              
35              
36             has data => (
37             is => 'ro',
38             isa => 'Str|Undef',
39             );
40              
41              
42             has priority => (
43             is => 'ro',
44             isa => 'Num|Undef',
45             );
46              
47              
48             has port => (
49             is => 'ro',
50             isa => 'Num|Undef',
51             );
52              
53              
54             has weight => (
55             is => 'ro',
56             isa => 'Num|Undef',
57             );
58              
59              
60             sub path {
61 0     0 1   my ($self) = @_;
62 0           return $self->Domain->path . '/' . $self->id;
63             }
64              
65              
66             sub update {
67 0     0 1   my $self = shift;
68 0           my (%args) = @_;
69              
70 0           return $self->DigitalOcean->_put_object($self->path, 'DigitalOcean::Domain::Record', 'domain_record', \%args);
71             }
72              
73              
74             sub delete {
75 0     0 1   my ($self) = @_;
76 0           return $self->DigitalOcean->_delete(path => $self->path);
77             }
78              
79              
80             __PACKAGE__->meta->make_immutable();
81              
82             1;
83              
84             __END__