File Coverage

lib/eBay/API/XML/Call/GetCategorySpecifics/GetCategorySpecificsRequestType.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::GetCategorySpecifics::GetCategorySpecificsRequestType;
4              
5 1     1   1450 use strict;
  1         2  
  1         26  
6 1     1   5 use warnings;
  1         2  
  1         31  
7              
8             ##########################################################################
9             #
10             # Module: ............... eBay/API/XML
11             # File: ................. GetCategorySpecificsRequestType.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::GetCategorySpecifics::GetCategorySpecificsRequestType
21              
22             =head1 DESCRIPTION
23              
24             Item Specifics are typical aspects of items in the same category.
25             They enable users to classify items by presenting descriptive details
26             in a structured way. For example, in a jewelry category, you might
27             describe a locket using "Gemstone=Amber", but in a
28             Washers & Dryers category, you might use "Type=Top-Loading" instead.
29            

30            

31             GetCategorySpecifics returns the most popular Item Specific names and values
32             for each leaf category you request. (eBay determines the popularity based on
33             several factors, such as the number of recent listings and/or
34             recently sold listings in the same category that have used the same name
35             or value.)
36            

37            

38             When you are listing an item, we recommend that you consider using these
39             popular names and values in your Item Specifics, because standard terms
40             can help buyers (and comparison shopping tools) understand the details
41             of your item more easily.
42             Also these names and values are more likely to be indexed for
43             title and description searches in the future.
44             If you don't see a name or value you need, you can add your own in your
45             listing request. (If that name or value becomes popular, it may be
46             recommended in these results over time.)
47            

48            

49             See ItemSpecificsEnabled in GetCategoryFeatures to determine which
50             categories support listing with custom Item Specifics.
51            

52              
53              
54              
55             =head1 SYNOPSIS
56              
57             =cut
58              
59              
60             =head1 INHERITANCE
61              
62             eBay::API::XML::Call::GetCategorySpecifics::GetCategorySpecificsRequestType inherits from the L class
63              
64             =cut
65              
66 1     1   32 use eBay::API::XML::RequestDataType;
  0            
  0            
67             our @ISA = ("eBay::API::XML::RequestDataType");
68              
69              
70              
71             my @gaProperties = ( [ 'CategoryID', 'xs:string', '1', '', '' ]
72             , [ 'LastUpdateTime', 'xs:dateTime', '', '', '' ]
73             , [ 'MaxNames', 'xs:int', '', '', '' ]
74             , [ 'MaxValuesPerName', 'xs:int', '', '', '' ]
75             , [ 'Name', 'xs:string', '', '', '' ]
76             );
77             push @gaProperties, @{eBay::API::XML::RequestDataType::getPropertiesList()};
78              
79             my @gaAttributes = (
80             );
81             push @gaAttributes, @{eBay::API::XML::RequestDataType::getAttributesList()};
82              
83             =head1 Subroutines:
84              
85             =cut
86              
87             sub new {
88             my $classname = shift;
89             my %args = @_;
90             my $self = $classname->SUPER::new(%args);
91             return $self;
92             }
93              
94             sub isScalar {
95             return 0;
96             }
97              
98              
99              
100             =head2 setCategoryID()
101              
102             A leaf category to retrieve recommended Item Specifics for.
103             (This call returns no results for a parent category.)
104             To determine which leaf categories support custom Item Specifics,
105             use GetCategoryFeatures and GetCategories.
106             You can specify multiple leaf categories (but more categories
107             can result in longer response times). If you specify the same
108             ID twice, we use the first instance.
109              
110             RequiredInput: Yes
111             # Argument: reference to an array
112             of 'xs:string'
113              
114             =cut
115              
116             sub setCategoryID {
117             my $self = shift;
118             $self->{'CategoryID'} =
119             $self->convertArray_To_RefToArrayIfNeeded(@_);
120             }
121              
122             =head2 getCategoryID()
123              
124             # Returns: reference to an array
125             of 'xs:string'
126              
127             =cut
128              
129             sub getCategoryID {
130             my $self = shift;
131             return $self->_getDataTypeArray('CategoryID');
132             }
133              
134              
135             =head2 setLastUpdateTime()
136              
137             Causes the recommendation engine to check whether the list of
138             popular Item Specifics for each specified category has changed
139             since this date and time. If specified, this call returns no
140             Item Specifics; it only returns whether the data has changed
141             for any of the requested categories.
142            
143             Typically, you pass in the Timestamp that was
144             returned the last time you refreshed the list of names and values
145             for the same categories. If the Updated flag returns true for any
146             categories in the response, call GetCategorySpecifics again
147             for those categories to get the latest names and values.
148             (As downloading all the data may affect your application's
149             performance, it may help to only download Item Specifics
150             for a category if they have changed since you last checked.)
151              
152             RequiredInput: No
153             # Argument: 'xs:dateTime'
154              
155             =cut
156              
157             sub setLastUpdateTime {
158             my $self = shift;
159             $self->{'LastUpdateTime'} = shift
160             }
161              
162             =head2 getLastUpdateTime()
163              
164             # Returns: 'xs:dateTime'
165              
166             =cut
167              
168             sub getLastUpdateTime {
169             my $self = shift;
170             return $self->{'LastUpdateTime'};
171             }
172              
173              
174             =head2 setMaxNames()
175              
176             Maximum number of Item Specifics to return
177             per category (where each Item Specific is identified
178             by a unique name within the category).
179             Use this to retrieve fewer results per category.
180             For example, if you only want up to 2 per category
181             (the top 2 most popular names), specify 2.
182              
183             Max: 15 (see GeteBayDetails)
184             Default: 15
185             Min: 1
186              
187             RequiredInput: No
188             # Argument: 'xs:int'
189              
190             =cut
191              
192             sub setMaxNames {
193             my $self = shift;
194             $self->{'MaxNames'} = shift
195             }
196              
197             =head2 getMaxNames()
198              
199             # Returns: 'xs:int'
200              
201             =cut
202              
203             sub getMaxNames {
204             my $self = shift;
205             return $self->{'MaxNames'};
206             }
207              
208              
209             =head2 setMaxValuesPerName()
210              
211             Maximum number of values to retrieve per Item Specific.
212             Use this to retrieve fewer values per name.
213             For example, if you only want the most popular value,
214             specify 1.
215              
216             Max: 10 (see GeteBayDetails)
217             Default: 10
218             Min: 1
219              
220             RequiredInput: No
221             # Argument: 'xs:int'
222              
223             =cut
224              
225             sub setMaxValuesPerName {
226             my $self = shift;
227             $self->{'MaxValuesPerName'} = shift
228             }
229              
230             =head2 getMaxValuesPerName()
231              
232             # Returns: 'xs:int'
233              
234             =cut
235              
236             sub getMaxValuesPerName {
237             my $self = shift;
238             return $self->{'MaxValuesPerName'};
239             }
240              
241              
242             =head2 setName()
243              
244             The name of one Item Specific name to find values for.
245             Use this if you want to find out whether a name
246             that the seller provided has recommended values.
247             If you specify multiple leaf categories in the request,
248             the recommendation engine returns all matching
249             names and values it finds for each of those categories.
250             At the time of this writing, this value is case-sensitive.
251             (Wildcards are not supported.)
252              
253             MaxLength: 30 (see GeteBayDetails)
254              
255             RequiredInput: No
256             # Argument: 'xs:string'
257              
258             =cut
259              
260             sub setName {
261             my $self = shift;
262             $self->{'Name'} = shift
263             }
264              
265             =head2 getName()
266              
267             # Returns: 'xs:string'
268              
269             =cut
270              
271             sub getName {
272             my $self = shift;
273             return $self->{'Name'};
274             }
275              
276              
277              
278              
279              
280             ## Attribute and Property lists
281             sub getPropertiesList {
282             my $self = shift;
283             return \@gaProperties;
284             }
285              
286             sub getAttributesList {
287             my $self = shift;
288             return \@gaAttributes;
289             }
290              
291              
292              
293             1;