File Coverage

lib/eBay/API/XML/DataType/CharacteristicType.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::DataType::CharacteristicType;
4              
5 1     1   1423 use strict;
  1         2  
  1         36  
6 1     1   5 use warnings;
  1         1  
  1         43  
7              
8             ##########################################################################
9             #
10             # Module: ............... eBay/API/XML
11             # File: ................. CharacteristicType.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::DataType::CharacteristicType
21              
22             =head1 DESCRIPTION
23              
24             A salient aspect or feature of an item. Used to describe an item in a
25             standard way so that buyers can find it more easily. An individual,
26             standardized characteristic that is common to all items within the
27             specified characteristics set. Applicable when working with Item
28             Specifics (Attributes) and Pre-filled Item Information (Catalogs)
29             functionality. See the eBay Web Services guide for more information.
30              
31              
32              
33             =head1 SYNOPSIS
34              
35             =cut
36              
37              
38             =head1 INHERITANCE
39              
40             eBay::API::XML::DataType::CharacteristicType inherits from the L class
41              
42             =cut
43              
44 1     1   42 use eBay::API::XML::BaseDataType;
  0            
  0            
45             our @ISA = ("eBay::API::XML::BaseDataType");
46              
47             use eBay::API::XML::DataType::LabelType;
48             use eBay::API::XML::DataType::ValType;
49             use eBay::API::XML::DataType::Enum::SortOrderCodeType;
50              
51              
52             my @gaProperties = ( [ 'AttributeID', 'xs:int', '', '', '' ]
53             , [ 'DateFormat', 'xs:string', '', '', '' ]
54             , [ 'DisplaySequence', 'xs:string', '', '', '' ]
55             , [ 'DisplayUOM', 'xs:string', '', '', '' ]
56             , [ 'Label', 'ns:LabelType', ''
57             ,'eBay::API::XML::DataType::LabelType', '1' ]
58             , [ 'SortOrder', 'ns:SortOrderCodeType', ''
59             ,'eBay::API::XML::DataType::Enum::SortOrderCodeType', '' ]
60             , [ 'ValueList', 'ns:ValType', '1'
61             ,'eBay::API::XML::DataType::ValType', '1' ]
62             );
63             push @gaProperties, @{eBay::API::XML::BaseDataType::getPropertiesList()};
64              
65             my @gaAttributes = (
66             );
67             push @gaAttributes, @{eBay::API::XML::BaseDataType::getAttributesList()};
68              
69             =head1 Subroutines:
70              
71             =cut
72              
73             sub new {
74             my $classname = shift;
75             my %args = @_;
76             my $self = $classname->SUPER::new(%args);
77             return $self;
78             }
79              
80             sub isScalar {
81             return 0;
82             }
83              
84              
85              
86             =head2 setAttributeID()
87              
88             Constant value that identifies the characteristic in a language-independent way.
89             Unique within the characteristic set.
90              
91             # Argument: 'xs:int'
92              
93             =cut
94              
95             sub setAttributeID {
96             my $self = shift;
97             $self->{'AttributeID'} = shift
98             }
99              
100             =head2 getAttributeID()
101              
102             Calls: GetProductFamilyMembers
103             GetProductSearchPage
104             GetProductSearchResults
105             Returned: Always
106             Details: DetailLevel: ReturnAll
107              
108             # Returns: 'xs:int'
109              
110             =cut
111              
112             sub getAttributeID {
113             my $self = shift;
114             return $self->{'AttributeID'};
115             }
116              
117              
118             =head2 setDateFormat()
119              
120             Applicable when working with Pre-filled Item Information (Catalogs) functionality.
121             Returned if the characteristic is a Date data type. Specifies the pattern
122             to use when presenting the date to a user. Possible values:
123             Day/Month/Year, Month/Year, Year Only.
124             For example, the Year Only format would indicate that the date
125             should be a value like 1999.
126             Output only.
127              
128             # Argument: 'xs:string'
129              
130             =cut
131              
132             sub setDateFormat {
133             my $self = shift;
134             $self->{'DateFormat'} = shift
135             }
136              
137             =head2 getDateFormat()
138              
139             Calls: GetProductSearchPage
140             Returned: Conditionally
141             Details: DetailLevel: ReturnAll
142             Context: SortCharacteristics
143              
144             Calls: GetProductFamilyMembers
145             GetProductSearchResults
146             Returned: Conditionally
147              
148             # Returns: 'xs:string'
149              
150             =cut
151              
152             sub getDateFormat {
153             my $self = shift;
154             return $self->{'DateFormat'};
155             }
156              
157              
158             =head2 setDisplaySequence()
159              
160             The suggested order in which the characteristic should be presented
161             to the user in a list. Indicates the relative position of the sort
162             key in the list of characteristics. The characteristic with the
163             lowest display sequence is considered the default sort key in calls
164             to GetProductSearchResults. Aside from that, usage of this display
165             sequence information is optional. For example, in an application
166             with a graphical user interface, a characteristic with a display
167             sequence of 2 could be presented before one with a display sequence
168             of 3 in a drop-down list. If multiple sort characteristics are
169             returned for a characteristic set, compare their display sequence
170             values to determine the lowest available value (usually 0) and the
171             overall sequence.
172              
173             # Argument: 'xs:string'
174              
175             =cut
176              
177             sub setDisplaySequence {
178             my $self = shift;
179             $self->{'DisplaySequence'} = shift
180             }
181              
182             =head2 getDisplaySequence()
183              
184             Calls: GetProductFamilyMembers
185             GetProductSearchPage
186             GetProductSearchResults
187             Returned: Always
188             Details: DetailLevel: ReturnAll
189              
190             # Returns: 'xs:string'
191              
192             =cut
193              
194             sub getDisplaySequence {
195             my $self = shift;
196             return $self->{'DisplaySequence'};
197             }
198              
199              
200             =head2 setDisplayUOM()
201              
202             Applicable when working with Pre-filled Item Information (Catalogs) functionality.
203             The unit of measure (e.g., Inch) to use when the characteristic is numeric indicates a measurement.
204             Not returned if not applicable.
205             Output only.
206              
207             # Argument: 'xs:string'
208              
209             =cut
210              
211             sub setDisplayUOM {
212             my $self = shift;
213             $self->{'DisplayUOM'} = shift
214             }
215              
216             =head2 getDisplayUOM()
217              
218             Calls: GetProductSearchPage
219             Returned: Conditionally
220             Details: DetailLevel: ReturnAll
221             Context: SortCharacteristics
222              
223             Calls: GetProductFamilyMembers
224             GetProductSearchResults
225             Returned: Conditionally
226              
227             # Returns: 'xs:string'
228              
229             =cut
230              
231             sub getDisplayUOM {
232             my $self = shift;
233             return $self->{'DisplayUOM'};
234             }
235              
236              
237             =head2 setLabel()
238              
239             Applicable when working with Pre-filled Item Information (Catalogs) functionality.
240             The label to display when presenting the attribute to a user.
241             Not necessarily the same as the attribute's label as defined in the
242             characteristic set (i.e., the label could be overridden by the catalog).
243              
244             # Argument: 'ns:LabelType'
245              
246             =cut
247              
248             sub setLabel {
249             my $self = shift;
250             $self->{'Label'} = shift
251             }
252              
253             =head2 getLabel()
254              
255             Calls: GetProductFamilyMembers
256             GetProductSearchPage
257             GetProductSearchResults
258             Returned: Always
259             Details: DetailLevel: ReturnAll
260              
261             # Returns: 'ns:LabelType'
262              
263             =cut
264              
265             sub getLabel {
266             my $self = shift;
267             return $self->_getDataTypeInstance( 'Label'
268             ,'eBay::API::XML::DataType::LabelType');
269             }
270              
271              
272             =head2 setSortOrder()
273              
274             Applicable when working with Pre-filled Item Information (Catalogs) functionality.
275             Indicates the order in which eBay's search engine will sort the results if you
276             pass this characteristic as a sort attribute in GetProductSearchResults.
277             You cannot change the sort order of a characteristic when you perform a search.
278             (Of course, you can change the sort order when you present results in your own application.)
279             In GetProductSearchPage, if SortOrder is not returned at all, it means the results will be returned
280             in the order in which they are stored on eBay (which can be useful for
281             international sites that use ideographic characters).
282             Output only.
283              
284             # Argument: 'ns:SortOrderCodeType'
285              
286             =cut
287              
288             sub setSortOrder {
289             my $self = shift;
290             $self->{'SortOrder'} = shift
291             }
292              
293             =head2 getSortOrder()
294              
295             Calls: GetProductSearchPage
296             Returned: Conditionally
297             Details: DetailLevel: ReturnAll
298             Context: SortCharacteristics
299              
300             # Returns: 'ns:SortOrderCodeType'
301              
302             =cut
303              
304             sub getSortOrder {
305             my $self = shift;
306             return $self->{'SortOrder'};
307             }
308              
309              
310             =head2 setValueList()
311              
312             List of one or more valid values for the characteristic.
313              
314             # Argument: reference to an array
315             of 'ns:ValType'
316              
317             =cut
318              
319             sub setValueList {
320             my $self = shift;
321             $self->{'ValueList'} =
322             $self->convertArray_To_RefToArrayIfNeeded(@_);
323             }
324              
325             =head2 getValueList()
326              
327             Calls: GetProductFamilyMembers
328             GetProductSearchResults
329             Returned: Always
330              
331             # Returns: reference to an array
332             of 'ns:ValType'
333              
334             =cut
335              
336             sub getValueList {
337             my $self = shift;
338             return $self->_getDataTypeArray('ValueList');
339             }
340              
341              
342              
343              
344              
345             ## Attribute and Property lists
346             sub getPropertiesList {
347             my $self = shift;
348             return \@gaProperties;
349             }
350              
351             sub getAttributesList {
352             my $self = shift;
353             return \@gaAttributes;
354             }
355              
356              
357              
358             1;