File Coverage

blib/lib/Google/Ads/AdWords/v201710/Ad.pm
Criterion Covered Total %
statement 12 14 85.7
branch n/a
condition n/a
subroutine 4 6 66.6
pod n/a
total 16 20 80.0


line stmt bran cond sub pod time code
1             package Google::Ads::AdWords::v201710::Ad;
2 2     2   2058 use strict;
  2         3  
  2         50  
3 2     2   10 use warnings;
  2         3  
  2         162  
4              
5              
6             __PACKAGE__->_set_element_form_qualified(1);
7              
8 0     0     sub get_xmlns { 'https://adwords.google.com/api/adwords/cm/v201710' };
9              
10             our $XML_ATTRIBUTE_CLASS;
11             undef $XML_ATTRIBUTE_CLASS;
12              
13             sub __get_attr_class {
14 0     0     return $XML_ATTRIBUTE_CLASS;
15             }
16              
17 2     2   11 use Class::Std::Fast::Storable constructor => 'none';
  2         3  
  2         23  
18 2     2   274 use base qw(Google::Ads::SOAP::Typelib::ComplexType);
  2         4  
  2         311  
19              
20             { # BLOCK to scope variables
21              
22             my %id_of :ATTR(:get);
23             my %url_of :ATTR(:get);
24             my %displayUrl_of :ATTR(:get);
25             my %finalUrls_of :ATTR(:get);
26             my %finalMobileUrls_of :ATTR(:get);
27             my %finalAppUrls_of :ATTR(:get);
28             my %trackingUrlTemplate_of :ATTR(:get);
29             my %urlCustomParameters_of :ATTR(:get);
30             my %urlData_of :ATTR(:get);
31             my %automated_of :ATTR(:get);
32             my %type_of :ATTR(:get);
33             my %devicePreference_of :ATTR(:get);
34             my %Ad__Type_of :ATTR(:get);
35              
36             __PACKAGE__->_factory(
37             [ qw( id
38             url
39             displayUrl
40             finalUrls
41             finalMobileUrls
42             finalAppUrls
43             trackingUrlTemplate
44             urlCustomParameters
45             urlData
46             automated
47             type
48             devicePreference
49             Ad__Type
50              
51             ) ],
52             {
53             'id' => \%id_of,
54             'url' => \%url_of,
55             'displayUrl' => \%displayUrl_of,
56             'finalUrls' => \%finalUrls_of,
57             'finalMobileUrls' => \%finalMobileUrls_of,
58             'finalAppUrls' => \%finalAppUrls_of,
59             'trackingUrlTemplate' => \%trackingUrlTemplate_of,
60             'urlCustomParameters' => \%urlCustomParameters_of,
61             'urlData' => \%urlData_of,
62             'automated' => \%automated_of,
63             'type' => \%type_of,
64             'devicePreference' => \%devicePreference_of,
65             'Ad__Type' => \%Ad__Type_of,
66             },
67             {
68             'id' => 'SOAP::WSDL::XSD::Typelib::Builtin::long',
69             'url' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
70             'displayUrl' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
71             'finalUrls' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
72             'finalMobileUrls' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
73             'finalAppUrls' => 'Google::Ads::AdWords::v201710::AppUrl',
74             'trackingUrlTemplate' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
75             'urlCustomParameters' => 'Google::Ads::AdWords::v201710::CustomParameters',
76             'urlData' => 'Google::Ads::AdWords::v201710::UrlData',
77             'automated' => 'SOAP::WSDL::XSD::Typelib::Builtin::boolean',
78             'type' => 'Google::Ads::AdWords::v201710::Ad::Type',
79             'devicePreference' => 'SOAP::WSDL::XSD::Typelib::Builtin::long',
80             'Ad__Type' => 'SOAP::WSDL::XSD::Typelib::Builtin::string',
81             },
82             {
83              
84             'id' => 'id',
85             'url' => 'url',
86             'displayUrl' => 'displayUrl',
87             'finalUrls' => 'finalUrls',
88             'finalMobileUrls' => 'finalMobileUrls',
89             'finalAppUrls' => 'finalAppUrls',
90             'trackingUrlTemplate' => 'trackingUrlTemplate',
91             'urlCustomParameters' => 'urlCustomParameters',
92             'urlData' => 'urlData',
93             'automated' => 'automated',
94             'type' => 'type',
95             'devicePreference' => 'devicePreference',
96             'Ad__Type' => 'Ad.Type',
97             }
98             );
99              
100             } # end BLOCK
101              
102              
103              
104              
105              
106              
107              
108             1;
109              
110              
111             =pod
112              
113             =head1 NAME
114              
115             Google::Ads::AdWords::v201710::Ad
116              
117             =head1 DESCRIPTION
118              
119             Perl data type class for the XML Schema defined complexType
120             Ad from the namespace https://adwords.google.com/api/adwords/cm/v201710.
121              
122             The base class of all ad types. {@code Ad} objects themselves cannot be modified. If you want to make a change to an {@code Ad} object, you must REMOVE its AdGroupAd and ADD a new AdGroupAd with the new {@code Ad}. This will result in a new {@code Ad} ID, so stats for the original {@code Ad} and the new {@code Ad} will appear under separate IDs in reports.

When calling {@code AdGroupAdService} to update the {@code status} of an {@code AdGroupAd}, you can construct an {@code Ad} object (instead of the {@code Ad}'s concrete type) with the {@link #id} field set. This is enabled for AdX.

123              
124              
125              
126              
127             =head2 PROPERTIES
128              
129             The following properties may be accessed using get_PROPERTY / set_PROPERTY
130             methods:
131              
132             =over
133              
134             =item * id
135              
136              
137             =item * url
138              
139              
140             =item * displayUrl
141              
142              
143             =item * finalUrls
144              
145              
146             =item * finalMobileUrls
147              
148              
149             =item * finalAppUrls
150              
151              
152             =item * trackingUrlTemplate
153              
154              
155             =item * urlCustomParameters
156              
157              
158             =item * urlData
159              
160              
161             =item * automated
162              
163              
164             =item * type
165              
166              
167             =item * devicePreference
168              
169              
170             =item * Ad__Type
171              
172             Note: The name of this property has been altered, because it didn't match
173             perl's notion of variable/subroutine names. The altered name is used in
174             perl code only, XML output uses the original name:
175              
176             Ad.Type
177              
178              
179              
180              
181             =back
182              
183              
184             =head1 METHODS
185              
186             =head2 new
187              
188             Constructor. The following data structure may be passed to new():
189              
190              
191              
192              
193              
194              
195             =head1 AUTHOR
196              
197             Generated by SOAP::WSDL
198              
199             =cut
200