File Coverage

blib/lib/Net/DRI/Protocol/EPP/Extensions/MOBI/Domain.pm
Criterion Covered Total %
statement 12 39 30.7
branch 0 10 0.0
condition n/a
subroutine 4 9 44.4
pod 0 5 0.0
total 16 63 25.4


line stmt bran cond sub pod time code
1             ## Domain Registry Interface, .MOBI Domain EPP extension commands
2             ##
3             ## Copyright (c) 2006-2008,2010,2013 Patrick Mevzek . All rights reserved.
4             ##
5             ## This file is part of Net::DRI
6             ##
7             ## Net::DRI is free software; you can redistribute it and/or modify
8             ## it under the terms of the GNU General Public License as published by
9             ## the Free Software Foundation; either version 2 of the License, or
10             ## (at your option) any later version.
11             ##
12             ## See the LICENSE file that comes with this distribution for more details.
13             ####################################################################################################
14              
15             package Net::DRI::Protocol::EPP::Extensions::MOBI::Domain;
16              
17 1     1   985 use strict;
  1         2  
  1         30  
18 1     1   4 use warnings;
  1         1  
  1         19  
19              
20 1     1   5 use Net::DRI::Exception;
  1         0  
  1         15  
21 1     1   359 use Net::DRI::Protocol::EPP::Extensions::Afilias::MaintainerUrl;
  1         2  
  1         335  
22              
23             =pod
24              
25             =head1 NAME
26              
27             Net::DRI::Protocol::EPP::Extensions::MOBI::Domain - .MOBI EPP Domain extension commands for Net::DRI
28              
29             =head1 DESCRIPTION
30              
31             Please see the README file for details.
32              
33             =head1 SUPPORT
34              
35             For now, support questions should be sent to:
36              
37             Enetdri@dotandco.comE
38              
39             Please also see the SUPPORT file in the distribution.
40              
41             =head1 SEE ALSO
42              
43             Ehttp://www.dotandco.com/services/software/Net-DRI/E
44              
45             =head1 AUTHOR
46              
47             Patrick Mevzek, Enetdri@dotandco.comE
48              
49             =head1 COPYRIGHT
50              
51             Copyright (c) 2006-2008,2010,2013 Patrick Mevzek .
52             All rights reserved.
53              
54             This program is free software; you can redistribute it and/or modify
55             it under the terms of the GNU General Public License as published by
56             the Free Software Foundation; either version 2 of the License, or
57             (at your option) any later version.
58              
59             See the LICENSE file that comes with this distribution for more details.
60              
61             =cut
62              
63             ####################################################################################################
64              
65             sub register_commands
66             {
67 0     0 0   my ($class,$version)=@_;
68 0           my %tmp=(
69             create => [ \&create, undef ],
70             update => [ \&update, undef ],
71             info => [ undef, \&info_parse ],
72             );
73              
74 0           return { 'domain' => \%tmp };
75             }
76              
77             ####################################################################################################
78              
79             sub add_maintainer_url
80             {
81 0     0 0   my ($mes,$tag,$d)=@_;
82 0           my $eid=$mes->command_extension_register($tag,sprintf('xmlns:mobi="%s" xsi:schemaLocation="%s %s"',$mes->nsattrs('mobi')));
83 0           $mes->command_extension($eid,$d);
84 0           return;
85             }
86              
87             sub create
88             {
89 0     0 0   my ($epp,$domain,$rd)=@_;
90 0           my $mes=$epp->message();
91              
92 0           my $d=Net::DRI::Protocol::EPP::Extensions::Afilias::MaintainerUrl::create('mobi',$rd);
93 0 0         return unless defined $d;
94 0           add_maintainer_url($mes,'mobi:create',$d);
95 0           return;
96             }
97              
98             sub update
99             {
100 0     0 0   my ($epp,$domain,$todo)=@_;
101 0           my $mes=$epp->message();
102              
103 0           my $d=Net::DRI::Protocol::EPP::Extensions::Afilias::MaintainerUrl::update('mobi',$todo);
104 0 0         return unless defined $d;
105 0           add_maintainer_url($mes,'mobi:update',$d);
106 0           return;
107             }
108              
109             sub info_parse
110             {
111 0     0 0   my ($po,$otype,$oaction,$oname,$rinfo)=@_;
112 0           my $mes=$po->message();
113 0 0         return unless $mes->is_success();
114              
115 0           my $infdata=$mes->get_extension('mobi','infData');
116 0 0         return unless $infdata;
117              
118 0           my $c=Net::DRI::Protocol::EPP::Extensions::Afilias::MaintainerUrl::info_parse($mes->ns('mobi'),$infdata);
119 0 0         $rinfo->{$otype}->{$oname}->{maintainer_url}=$c if defined $c;
120 0           return;
121             }
122              
123             ####################################################################################################
124             1;