1## Domain Registry Interface, .BR policies
2##
3## Copyright (c) 2008,2009 Patrick Mevzek <netdri@dotandco.com>. 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#
16####################################################################################################
17
18package Net::DRI::DRD::BR;
19
20use strict;
21use warnings;
22
23use base qw/Net::DRI::DRD/;
24
25use DateTime::Duration;
26
27our $VERSION=do { my @r=(q$Revision: 1.4 $=~/\d+/g); sprintf("%d".".%02d" x $#r, @r); };
28
29=pod
30
31=head1 NAME
32
33Net::DRI::DRD::BR - .BR policies for Net::DRI
34
35=head1 DESCRIPTION
36
37Please see the README file for details.
38
39=head1 SUPPORT
40
41For now, support questions should be sent to:
42
43E<lt>netdri@dotandco.comE<gt>
44
45Please also see the SUPPORT file in the distribution.
46
47=head1 SEE ALSO
48
49E<lt>http://www.dotandco.com/services/software/Net-DRI/E<gt>
50
51=head1 AUTHOR
52
53Patrick Mevzek, E<lt>netdri@dotandco.comE<gt>
54
55=head1 COPYRIGHT
56
57Copyright (c) 2008,2009 Patrick Mevzek <netdri@dotandco.com>.
58All rights reserved.
59
60This program is free software; you can redistribute it and/or modify
61it under the terms of the GNU General Public License as published by
62the Free Software Foundation; either version 2 of the License, or
63(at your option) any later version.
64
65See the LICENSE file that comes with this distribution for more details.
66
67=cut
68
69####################################################################################################
70
71sub new
72{
73 my $class=shift;
74 my $self=$class->SUPER::new(@_);
75 $self->{info}->{host_as_attr}=1;
76 $self->{info}->{contact_i18n}=1; ## LOC only
77
78 bless($self,$class);
79 return $self;
80}
81
82sub periods  { return map { DateTime::Duration->new(years => $_) } (1); }
83sub name     { return 'RegistroBR'; }
84## See http://registro.br/info/dpn.html
85sub tlds     { return ('br',map { $_.'.br' } qw/com agr am art edu coop esp far fm g12 gov imb ind inf jus mil net org psi rec srv tmp tur tv etc adm adv arq ato bio bmd cim cng cnt ecn eng eti fnd fot fst ggf jor lel mat med mus not ntr odo ppg pro psc qql slg trd vet zlg blog flog nom vlog sec3 wiki/ ); }
86sub object_types { return ('domain','contact'); }
87sub profile_types { return qw/epp/; }
88
89sub transport_protocol_default
90{
91 my ($self,$type)=@_;
92
93 return ('Net::DRI::Transport::Socket',{},'Net::DRI::Protocol::EPP::Extensions::BR',{}) if $type eq 'epp';
94 return;
95}
96
97####################################################################################################
981;
99