lib/eBay/API/XML/Call/GetProducts/GetProductsRequestType.pm | |||
---|---|---|---|
Criterion | Covered | Total | % |
statement | 7 | 9 | 77.7 |
branch | n/a | ||
condition | n/a | ||
subroutine | 3 | 3 | 100.0 |
pod | n/a | ||
total | 10 | 12 | 83.3 |
line | stmt | bran | cond | sub | pod | time | code |
---|---|---|---|---|---|---|---|
1 | #!/usr/bin/perl | ||||||
2 | |||||||
3 | package eBay::API::XML::Call::GetProducts::GetProductsRequestType; | ||||||
4 | |||||||
5 | 1 | 1 | 1502 | use strict; | |||
1 | 2 | ||||||
1 | 25 | ||||||
6 | 1 | 1 | 4 | use warnings; | |||
1 | 2 | ||||||
1 | 32 | ||||||
7 | |||||||
8 | ########################################################################## | ||||||
9 | # | ||||||
10 | # Module: ............... |
||||||
11 | # File: ................. GetProductsRequestType.pm | ||||||
12 | # Generated by: ......... genEBayApiDataTypes.pl | ||||||
13 | # Last Generated: ....... 08/24/2008 16:44 | ||||||
14 | # API Release Number: ... 579 | ||||||
15 | # | ||||||
16 | ########################################################################## | ||||||
17 | |||||||
18 | =head1 NAME | ||||||
19 | |||||||
20 | eBay::API::XML::Call::GetProducts::GetProductsRequestType | ||||||
21 | |||||||
22 | =head1 DESCRIPTION | ||||||
23 | |||||||
24 | Searches for stock information and reviews for certain kinds of products, | ||||||
25 | such as a particular digital camera model. | ||||||
26 |
|
||||||
27 | GetProducts is designed to be useful to applications that support | ||||||
28 | shopping comparison, product reviews, or basic supply and | ||||||
29 | demand data. | ||||||
30 | |||||||
31 |
|
||||||
32 | GetProducts also supports tracking so that members of the | ||||||
33 | eBay Affiliates Program can get commissions for driving traffic to eBay. | ||||||
34 | |||||||
35 | Note: |
||||||
36 | For selling use cases, use GetProductSearchResults and | ||||||
37 | GetProductSellingPages instead. | ||||||
38 | |||||||
39 |
|
||||||
40 | To use this call, you typically pass in keywords, and GetProducts finds | ||||||
41 | products with matching words in the product title, description, and/or | ||||||
42 | Item Specifics. | ||||||
43 |
|
||||||
44 | For each product of interest, you call GetProducts again to retrieve | ||||||
45 | additional details that would be useful to buyers: | ||||||
46 | |||||||
47 | |
||||||
48 | |
||||||
49 | including part of the review text, plus links to the full text on the | ||||||
50 | eBay Web site. | ||||||
51 | |
||||||
52 | eBay members and by eBay staff, including part of the guide text, | ||||||
53 | plus links to the full text | ||||||
54 | on the eBay Web site. | ||||||
55 | |
||||||
56 | items, use GetSearchResults.) | ||||||
57 | |||||||
58 |
|
||||||
59 | Note: | ||||||
60 | As catalog queries can take longer than item queries, | ||||||
61 | GetProducts can be slower than GetSearchResults. | ||||||
62 | Also, due to the way product data is cached, you may get a faster response | ||||||
63 | when you run the same query a second time. | ||||||
64 | |||||||
65 | |||||||
66 | |||||||
67 | =head1 SYNOPSIS | ||||||
68 | |||||||
69 | =cut | ||||||
70 | |||||||
71 | |||||||
72 | =head1 INHERITANCE | ||||||
73 | |||||||
74 | eBay::API::XML::Call::GetProducts::GetProductsRequestType inherits from the L |
||||||
75 | |||||||
76 | =cut | ||||||
77 | |||||||
78 | 1 | 1 | 33 | use eBay::API::XML::RequestDataType; | |||
0 | |||||||
0 | |||||||
79 | our @ISA = ("eBay::API::XML::RequestDataType"); | ||||||
80 | |||||||
81 | use eBay::API::XML::DataType::AffiliateTrackingDetailsType; | ||||||
82 | use eBay::API::XML::DataType::ProductSearchType; | ||||||
83 | use eBay::API::XML::DataType::Enum::ProductSortCodeType; | ||||||
84 | |||||||
85 | |||||||
86 | my @gaProperties = ( [ 'AffiliateTrackingDetails', 'ns:AffiliateTrackingDetailsType', '' | ||||||
87 | ,'eBay::API::XML::DataType::AffiliateTrackingDetailsType', '1' ] | ||||||
88 | , [ 'IncludeBuyingGuideDetails', 'xs:boolean', '', '', '' ] | ||||||
89 | , [ 'IncludeHistogram', 'xs:boolean', '', '', '' ] | ||||||
90 | , [ 'IncludeItemArray', 'xs:boolean', '', '', '' ] | ||||||
91 | , [ 'IncludeReviewDetails', 'xs:boolean', '', '', '' ] | ||||||
92 | , [ 'ProductSearch', 'ns:ProductSearchType', '' | ||||||
93 | ,'eBay::API::XML::DataType::ProductSearchType', '1' ] | ||||||
94 | , [ 'ProductSort', 'ns:ProductSortCodeType', '' | ||||||
95 | ,'eBay::API::XML::DataType::Enum::ProductSortCodeType', '' ] | ||||||
96 | ); | ||||||
97 | push @gaProperties, @{eBay::API::XML::RequestDataType::getPropertiesList()}; | ||||||
98 | |||||||
99 | my @gaAttributes = ( | ||||||
100 | ); | ||||||
101 | push @gaAttributes, @{eBay::API::XML::RequestDataType::getAttributesList()}; | ||||||
102 | |||||||
103 | =head1 Subroutines: | ||||||
104 | |||||||
105 | =cut | ||||||
106 | |||||||
107 | sub new { | ||||||
108 | my $classname = shift; | ||||||
109 | my %args = @_; | ||||||
110 | my $self = $classname->SUPER::new(%args); | ||||||
111 | return $self; | ||||||
112 | } | ||||||
113 | |||||||
114 | sub isScalar { | ||||||
115 | return 0; | ||||||
116 | } | ||||||
117 | |||||||
118 | |||||||
119 | |||||||
120 | =head2 setAffiliateTrackingDetails() | ||||||
121 | |||||||
122 | See the | ||||||
123 | eBay Partner Network. | ||||||
124 | eBay uses the specified details to build a View Item URL | ||||||
125 | string in the response that includes your | ||||||
126 | affiliate tracking information in the correct format. | ||||||
127 | When a user clicks through the URL to eBay and performs | ||||||
128 | certain tasks, you may get a commission (see the URL above). | ||||||
129 | Only applicable when IncludeItemArray is specified | ||||||
130 | (because the View Item URL is only returned in item information, | ||||||
131 | not in product information). | ||||||
132 | |||||||
133 | SeeLink: URL: http://developer.ebay.com/DevZone/XML/docs/WebHelp/index.htm?context=eBay_XML_API&topic=AffiliateTrackingConcepts | ||||||
134 | Title: Affiliate Tracking Concepts | ||||||
135 | |||||||
136 | RequiredInput: No | ||||||
137 | # Argument: 'ns:AffiliateTrackingDetailsType' | ||||||
138 | |||||||
139 | =cut | ||||||
140 | |||||||
141 | sub setAffiliateTrackingDetails { | ||||||
142 | my $self = shift; | ||||||
143 | $self->{'AffiliateTrackingDetails'} = shift | ||||||
144 | } | ||||||
145 | |||||||
146 | =head2 getAffiliateTrackingDetails() | ||||||
147 | |||||||
148 | # Returns: 'ns:AffiliateTrackingDetailsType' | ||||||
149 | |||||||
150 | =cut | ||||||
151 | |||||||
152 | sub getAffiliateTrackingDetails { | ||||||
153 | my $self = shift; | ||||||
154 | return $self->_getDataTypeInstance( 'AffiliateTrackingDetails' | ||||||
155 | ,'eBay::API::XML::DataType::AffiliateTrackingDetailsType'); | ||||||
156 | } | ||||||
157 | |||||||
158 | |||||||
159 | =head2 setIncludeBuyingGuideDetails() | ||||||
160 | |||||||
161 | If true, the response includes up to 5 buying guides (if any) | ||||||
162 | for the product specified in ExternalProductID or | ||||||
163 | ProductReferenceID. | ||||||
164 | Not applicable with QueryKeywords. | ||||||
165 | |||||||
166 | RequiredInput: No | ||||||
167 | Default: false | ||||||
168 | # Argument: 'xs:boolean' | ||||||
169 | |||||||
170 | =cut | ||||||
171 | |||||||
172 | sub setIncludeBuyingGuideDetails { | ||||||
173 | my $self = shift; | ||||||
174 | $self->{'IncludeBuyingGuideDetails'} = shift | ||||||
175 | } | ||||||
176 | |||||||
177 | =head2 isIncludeBuyingGuideDetails() | ||||||
178 | |||||||
179 | # Returns: 'xs:boolean' | ||||||
180 | |||||||
181 | =cut | ||||||
182 | |||||||
183 | sub isIncludeBuyingGuideDetails { | ||||||
184 | my $self = shift; | ||||||
185 | return $self->{'IncludeBuyingGuideDetails'}; | ||||||
186 | } | ||||||
187 | |||||||
188 | |||||||
189 | =head2 setIncludeHistogram() | ||||||
190 | |||||||
191 | If true, the response includes a histogram that lists the | ||||||
192 | number of matching products found and the domains in which | ||||||
193 | they were found. (A domain is like a high-level category.) | ||||||
194 | Including the histogram can affect the call's performance. | ||||||
195 | You may see significantly slower response times when many | ||||||
196 | matching products are found. | ||||||
197 | |||||||
198 | RequiredInput: No | ||||||
199 | Default: false | ||||||
200 | # Argument: 'xs:boolean' | ||||||
201 | |||||||
202 | =cut | ||||||
203 | |||||||
204 | sub setIncludeHistogram { | ||||||
205 | my $self = shift; | ||||||
206 | $self->{'IncludeHistogram'} = shift | ||||||
207 | } | ||||||
208 | |||||||
209 | =head2 isIncludeHistogram() | ||||||
210 | |||||||
211 | # Returns: 'xs:boolean' | ||||||
212 | |||||||
213 | =cut | ||||||
214 | |||||||
215 | sub isIncludeHistogram { | ||||||
216 | my $self = shift; | ||||||
217 | return $self->{'IncludeHistogram'}; | ||||||
218 | } | ||||||
219 | |||||||
220 | |||||||
221 | =head2 setIncludeItemArray() | ||||||
222 | |||||||
223 | If true, the response includes items (if any) that match the | ||||||
224 | product specified in ExternalProductID or ProductReferenceID. | ||||||
225 | Not applicable with QueryKeywords. | ||||||
226 | |||||||
227 | RequiredInput: No | ||||||
228 | Default: false | ||||||
229 | # Argument: 'xs:boolean' | ||||||
230 | |||||||
231 | =cut | ||||||
232 | |||||||
233 | sub setIncludeItemArray { | ||||||
234 | my $self = shift; | ||||||
235 | $self->{'IncludeItemArray'} = shift | ||||||
236 | } | ||||||
237 | |||||||
238 | =head2 isIncludeItemArray() | ||||||
239 | |||||||
240 | # Returns: 'xs:boolean' | ||||||
241 | |||||||
242 | =cut | ||||||
243 | |||||||
244 | sub isIncludeItemArray { | ||||||
245 | my $self = shift; | ||||||
246 | return $self->{'IncludeItemArray'}; | ||||||
247 | } | ||||||
248 | |||||||
249 | |||||||
250 | =head2 setIncludeReviewDetails() | ||||||
251 | |||||||
252 | If true, the response includes up to 20 reviews (if any) | ||||||
253 | for the product specified in ExternalProductID or | ||||||
254 | ProductReferenceID. | ||||||
255 | The reviews are sorted by most helpful (most votes) first. | ||||||
256 | When you include review details, please note that | ||||||
257 | response times may be longer than 60 seconds. | ||||||
258 | Not applicable with QueryKeywords. | ||||||
259 | |||||||
260 | RequiredInput: No | ||||||
261 | Default: false | ||||||
262 | # Argument: 'xs:boolean' | ||||||
263 | |||||||
264 | =cut | ||||||
265 | |||||||
266 | sub setIncludeReviewDetails { | ||||||
267 | my $self = shift; | ||||||
268 | $self->{'IncludeReviewDetails'} = shift | ||||||
269 | } | ||||||
270 | |||||||
271 | =head2 isIncludeReviewDetails() | ||||||
272 | |||||||
273 | # Returns: 'xs:boolean' | ||||||
274 | |||||||
275 | =cut | ||||||
276 | |||||||
277 | sub isIncludeReviewDetails { | ||||||
278 | my $self = shift; | ||||||
279 | return $self->{'IncludeReviewDetails'}; | ||||||
280 | } | ||||||
281 | |||||||
282 | |||||||
283 | =head2 setProductSearch() | ||||||
284 | |||||||
285 | Contains the fields that form the search query. You can query | ||||||
286 | against keywords, an eBay product reference ID (not to be confused | ||||||
287 | with an eBay product ID), or external product ID (like an ISBN). | ||||||
288 | |||||||
289 | RequiredInput: Yes | ||||||
290 | # Argument: 'ns:ProductSearchType' | ||||||
291 | |||||||
292 | =cut | ||||||
293 | |||||||
294 | sub setProductSearch { | ||||||
295 | my $self = shift; | ||||||
296 | $self->{'ProductSearch'} = shift | ||||||
297 | } | ||||||
298 | |||||||
299 | =head2 getProductSearch() | ||||||
300 | |||||||
301 | # Returns: 'ns:ProductSearchType' | ||||||
302 | |||||||
303 | =cut | ||||||
304 | |||||||
305 | sub getProductSearch { | ||||||
306 | my $self = shift; | ||||||
307 | return $self->_getDataTypeInstance( 'ProductSearch' | ||||||
308 | ,'eBay::API::XML::DataType::ProductSearchType'); | ||||||
309 | } | ||||||
310 | |||||||
311 | |||||||
312 | =head2 setProductSort() | ||||||
313 | |||||||
314 | Sorts the list of products returned. This is mostly only useful | ||||||
315 | with QueryKeywords. (When you use ExternalProductID or | ||||||
316 | ProductReferenceID, eBay usually only returns one product.) | ||||||
317 | |||||||
318 | RequiredInput: No | ||||||
319 | # Argument: 'ns:ProductSortCodeType' | ||||||
320 | |||||||
321 | =cut | ||||||
322 | |||||||
323 | sub setProductSort { | ||||||
324 | my $self = shift; | ||||||
325 | $self->{'ProductSort'} = shift | ||||||
326 | } | ||||||
327 | |||||||
328 | =head2 getProductSort() | ||||||
329 | |||||||
330 | # Returns: 'ns:ProductSortCodeType' | ||||||
331 | |||||||
332 | =cut | ||||||
333 | |||||||
334 | sub getProductSort { | ||||||
335 | my $self = shift; | ||||||
336 | return $self->{'ProductSort'}; | ||||||
337 | } | ||||||
338 | |||||||
339 | |||||||
340 | |||||||
341 | |||||||
342 | |||||||
343 | ## Attribute and Property lists | ||||||
344 | sub getPropertiesList { | ||||||
345 | my $self = shift; | ||||||
346 | return \@gaProperties; | ||||||
347 | } | ||||||
348 | |||||||
349 | sub getAttributesList { | ||||||
350 | my $self = shift; | ||||||
351 | return \@gaAttributes; | ||||||
352 | } | ||||||
353 | |||||||
354 | |||||||
355 | |||||||
356 | 1; |