File Coverage

File:lib/WWW/Google/Contacts/Type/PostalAddress.pm
Coverage:100.0%

linestmtbrancondsubpodtimecode
1package WWW::Google::Contacts::Type::PostalAddress;
2
3
12
12
12
109
40
102
use Moose;
4
12
12
12
138
39
109
use MooseX::Types::Moose qw( Str );
5
12
12
12
129
39
98
use WWW::Google::Contacts::InternalTypes qw( Rel XmlBool );
6
12
12
12
125
36
97
use WWW::Google::Contacts::Meta::Attribute::Trait::XmlField;
7
8extends 'WWW::Google::Contacts::Type::Base';
9
10with 'WWW::Google::Contacts::Roles::HasTypeAndLabel' => {
11    valid_types => [ qw( home work ) ],
12};
13
14has mail_class => (
15    isa => Rel,
16    is => 'rw',
17    traits => [ 'XmlField' ],
18    xml_key => 'mailClass',
19    predicate => 'has_mail_class',
20    coerce => 1,
21);
22
23has usage => (
24    isa => Rel,
25    is => 'rw',
26    traits => [ 'XmlField' ],
27    xml_key => 'usage',
28    predicate => 'has_usage',
29    coerce => 1,
30);
31
32has primary => (
33    isa => XmlBool,
34    is => 'rw',
35    traits => [ 'XmlField' ],
36    predicate => 'has_primary',
37    xml_key => 'primary',
38    to_xml => sub { my $val = shift; return "true" if $val == 1; return "false" },
39    default => sub { 0 },
40    coerce => 1,
41);
42
43has agent => (
44    isa => Str,
45    is => 'rw',
46    traits => [ 'XmlField' ],
47    xml_key => 'gd:agent',
48    predicate => 'has_agent',
49    is_element => 1,
50);
51
52has house_name => (
53    isa => Str,
54    is => 'rw',
55    traits => [ 'XmlField' ],
56    xml_key => 'gd:housename',
57    predicate => 'has_house_name',
58    is_element => 1,
59);
60
61has street => (
62    isa => Str,
63    is => 'rw',
64    traits => [ 'XmlField' ],
65    xml_key => 'gd:street',
66    predicate => 'has_street',
67    is_element => 1,
68);
69
70has pobox => (
71    isa => Str,
72    is => 'rw',
73    traits => [ 'XmlField' ],
74    xml_key => 'gd:pobox',
75    predicate => 'has_pobox',
76    is_element => 1,
77);
78
79has neighborhood => (
80    isa => Str,
81    is => 'rw',
82    traits => [ 'XmlField' ],
83    xml_key => 'gd:neighborhood',
84    predicate => 'has_neighborhood',
85    is_element => 1,
86);
87
88has city => (
89    isa => Str,
90    is => 'rw',
91    traits => [ 'XmlField' ],
92    xml_key => 'gd:city',
93    predicate => 'has_city',
94    is_element => 1,
95);
96
97has subregion => (
98    isa => Str,
99    is => 'rw',
100    traits => [ 'XmlField' ],
101    xml_key => 'gd:subregion',
102    predicate => 'has_subregion',
103    is_element => 1,
104);
105
106has region => (
107    isa => Str,
108    is => 'rw',
109    traits => [ 'XmlField' ],
110    xml_key => 'gd:region',
111    predicate => 'has_region',
112    is_element => 1,
113);
114
115has postcode => (
116    isa => Str,
117    is => 'rw',
118    traits => [ 'XmlField' ],
119    xml_key => 'gd:postcode',
120    predicate => 'has_postcode',
121    is_element => 1,
122);
123
124has country => (
125    isa => Str,
126    is => 'rw',
127    traits => [ 'XmlField' ],
128    xml_key => 'gd:country',
129    predicate => 'has_country',
130    is_element => 1,
131);
132
133has formatted => (
134    isa => Str,
135    is => 'rw',
136    traits => [ 'XmlField' ],
137    xml_key => 'gd:formattedAddress',
138    predicate => 'has_formatted',
139    is_element => 1,
140);
141
142
12
12
12
117
39
95
no Moose;
143__PACKAGE__->meta->make_immutable;
1441;