File Coverage

lib/Webservice/OVH/Order/Email.pm
Criterion Covered Total %
statement 12 22 54.5
branch 0 4 0.0
condition n/a
subroutine 4 6 66.6
pod 1 1 100.0
total 17 33 51.5


line stmt bran cond sub pod time code
1             package Webservice::OVH::Order::Email;
2              
3             =encoding utf-8
4              
5             =head1 NAME
6              
7             Webservice::OVH::Order::Email
8              
9             =head1 SYNOPSIS
10              
11             use Webservice::OVH;
12            
13             my $ovh = Webservice::OVH->new_from_json("credentials.json");
14            
15             my $available_email_domains = $ovh->order->email->domain->available_services;
16              
17             =head1 DESCRIPTION
18              
19             Only Helper Object to Web Api Sub-Object.
20              
21             =head1 METHODS
22              
23             =cut
24              
25 36     36   280 use strict;
  36         85  
  36         1100  
26 36     36   184 use warnings;
  36         82  
  36         1086  
27 36     36   189 use Carp qw{ carp croak };
  36         76  
  36         2450  
28              
29             our $VERSION = 0.46;
30              
31 36     36   20238 use Webservice::OVH::Order::Email::Domain;
  36         101  
  36         5304  
32              
33             =head2 _new
34              
35             Internal Method to create the Hosting object.
36             This method is not ment to be called directly.
37              
38             =over
39              
40             =item * Parameter: $api_wrapper - ovh api wrapper object, $module - root object
41              
42             =item * Return: L<Webservice::OVH::Order::Email>
43              
44             =item * Synopsis: Webservice::OVH::Order::Email->_new($ovh_api_wrapper, $module);
45              
46             =back
47              
48             =cut
49              
50             sub _new {
51              
52 0     0     my ( $class, %params ) = @_;
53              
54 0 0         die "Missing module" unless $params{module};
55 0 0         die "Missing wrapper" unless $params{wrapper};
56              
57 0           my $module = $params{module};
58 0           my $api_wrapper = $params{wrapper};
59              
60 0           my $domain = Webservice::OVH::Order::Email::Domain->_new( wrapper => $api_wrapper, module => $module );
61              
62 0           my $self = bless { _module => $module, _api_wrapper => $api_wrapper, _domain => $domain }, $class;
63              
64 0           return $self;
65             }
66              
67             =head2 domain
68              
69             Gives acces to the /order/email/domain methods of the ovh api
70              
71             =over
72              
73             =item * Return: L<Webservice::OVH::Order::Email::Domain>
74              
75             =item * Synopsis: $ovh->order->email->domain
76              
77             =back
78              
79             =cut
80              
81             sub domain {
82              
83 0     0 1   my ($self) = @_;
84              
85 0           return $self->{_domain};
86             }
87              
88             1;