File Coverage

blib/lib/Net/DRI/DRD/IM.pm
Criterion Covered Total %
statement 12 27 44.4
branch 0 2 0.0
condition n/a
subroutine 4 12 33.3
pod 4 8 50.0
total 20 49 40.8


line stmt bran cond sub pod time code
1             ## Domain Registry Interface, .IM policies
2             ##
3             ## Copyright (c) 2008,2009,2011 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::DRD::IM;
16              
17 1     1   612 use strict;
  1         2  
  1         27  
18 1     1   4 use warnings;
  1         1  
  1         22  
19              
20 1     1   3 use base qw/Net::DRI::DRD/;
  1         2  
  1         66  
21              
22 1     1   5 use DateTime::Duration;
  1         1  
  1         205  
23              
24             __PACKAGE__->make_exception_for_unavailable_operations(qw/domain_transfer_stop domain_transfer_query domain_transfer_accept domain_transfer_refuse/);
25              
26             =pod
27              
28             =head1 NAME
29              
30             Net::DRI::DRD::IM - .IM policies for Net::DRI
31              
32             =head1 DESCRIPTION
33              
34             Please see the README file for details.
35              
36             =head1 SUPPORT
37              
38             For now, support questions should be sent to:
39              
40             Enetdri@dotandco.comE
41              
42             Please also see the SUPPORT file in the distribution.
43              
44             =head1 SEE ALSO
45              
46             Ehttp://www.dotandco.com/services/software/Net-DRI/E
47              
48             =head1 AUTHOR
49              
50             Patrick Mevzek, Enetdri@dotandco.comE
51              
52             =head1 COPYRIGHT
53              
54             Copyright (c) 2008,2009,2011 Patrick Mevzek .
55             All rights reserved.
56              
57             This program is free software; you can redistribute it and/or modify
58             it under the terms of the GNU General Public License as published by
59             the Free Software Foundation; either version 2 of the License, or
60             (at your option) any later version.
61              
62             See the LICENSE file that comes with this distribution for more details.
63              
64             =cut
65              
66             ####################################################################################################
67              
68             sub new
69             {
70 0     0 0   my $class=shift;
71 0           my $self=$class->SUPER::new(@_);
72 0           $self->{info}->{host_as_attr}=1;
73 0           return $self;
74             }
75              
76 0     0 1   sub periods { return map { DateTime::Duration->new(years => $_) } (1..10); }
  0            
77 0     0 1   sub name { return 'IM'; }
78 0     0 1   sub tlds { return (qw/im co.im org.im net.im/); }
79 0     0 1   sub object_types { return ('domain','contact'); }
80 0     0 0   sub profile_types { return qw/epp/; }
81              
82             sub transport_protocol_default
83             {
84 0     0 0   my ($self,$type)=@_;
85              
86 0 0         return ('Net::DRI::Transport::Socket',{remote_host=>'epp.nic.im'},'Net::DRI::Protocol::EPP',{}) if $type eq 'epp';
87 0           return;
88             }
89              
90             ####################################################################################################
91              
92             sub verify_name_domain
93             {
94 0     0 0   my ($self,$ndr,$domain,$op)=@_;
95 0           return $self->_verify_name_rules($domain,$op,{check_name => 1,
96             my_tld => 1,
97             min_length => 3,
98             no_double_hyphen => 1,
99             });
100             }
101              
102             ####################################################################################################
103             1;