File Coverage

lib/eBay/API/XML/DataType/CalculatedHandlingDiscountType.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::CalculatedHandlingDiscountType;
4              
5 1     1   1245 use strict;
  1         2  
  1         27  
6 1     1   5 use warnings;
  1         1  
  1         25  
7              
8             ##########################################################################
9             #
10             # Module: ............... eBay/API/XML
11             # File: ................. CalculatedHandlingDiscountType.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::CalculatedHandlingDiscountType
21              
22             =head1 DESCRIPTION
23              
24             Instructions on packaging/handling costs for combined payment.
25              
26              
27              
28             =head1 SYNOPSIS
29              
30             =cut
31              
32              
33             =head1 INHERITANCE
34              
35             eBay::API::XML::DataType::CalculatedHandlingDiscountType inherits from the L class
36              
37             =cut
38              
39 1     1   33 use eBay::API::XML::BaseDataType;
  0            
  0            
40             our @ISA = ("eBay::API::XML::BaseDataType");
41              
42             use eBay::API::XML::DataType::AmountType;
43             use eBay::API::XML::DataType::Enum::HandlingNameCodeType;
44              
45              
46             my @gaProperties = ( [ 'DiscountName', 'ns:HandlingNameCodeType', ''
47             ,'eBay::API::XML::DataType::Enum::HandlingNameCodeType', '' ]
48             , [ 'EachAdditionalAmount', 'ns:AmountType', ''
49             ,'eBay::API::XML::DataType::AmountType', '1' ]
50             , [ 'EachAdditionalOffAmount', 'ns:AmountType', ''
51             ,'eBay::API::XML::DataType::AmountType', '1' ]
52             , [ 'EachAdditionalPercentOff', 'xs:float', '', '', '' ]
53             , [ 'OrderHandlingAmount', 'ns:AmountType', ''
54             ,'eBay::API::XML::DataType::AmountType', '1' ]
55             );
56             push @gaProperties, @{eBay::API::XML::BaseDataType::getPropertiesList()};
57              
58             my @gaAttributes = (
59             );
60             push @gaAttributes, @{eBay::API::XML::BaseDataType::getAttributesList()};
61              
62             =head1 Subroutines:
63              
64             =cut
65              
66             sub new {
67             my $classname = shift;
68             my %args = @_;
69             my $self = $classname->SUPER::new(%args);
70             return $self;
71             }
72              
73             sub isScalar {
74             return 0;
75             }
76              
77              
78              
79             =head2 setDiscountName()
80              
81             The type of discount that is detailed in the profile.
82             If the selection is EachAdditionalAmount, EachAdditionalAmountOff or
83             EachAdditionalPercentOff, the value is set in the child element of same
84             name in CalculatedHandlingDiscount. If the selection is CombinedHandlingFee,
85             specify the amount in CalculatedHandlingDiscount.OrderHandlingAmount.
86             If the selection is IndividualHandlingFee, the amount is determined by eBay
87             by adding the fees of the individual items.
88              
89             Calls: SetShippingDiscountProfiles
90             RequiredInput: Conditionally
91              
92             # Argument: 'ns:HandlingNameCodeType'
93              
94             =cut
95              
96             sub setDiscountName {
97             my $self = shift;
98             $self->{'DiscountName'} = shift
99             }
100              
101             =head2 getDiscountName()
102              
103             Calls: GetShippingDiscountProfiles
104             Returned: Conditionally
105              
106             # Returns: 'ns:HandlingNameCodeType'
107              
108             =cut
109              
110             sub getDiscountName {
111             my $self = shift;
112             return $self->{'DiscountName'};
113             }
114              
115              
116             =head2 setEachAdditionalAmount()
117              
118             The packaging/handling cost for each item beyond the first item (where the
119             item with the highest packaging/handling cost is selected by eBay as the first
120             item). Let's say the buyer purchases three items, each assigned a
121             packaging/handling cost of $8, and the seller set EachAdditionalAmount to $6.
122             The packaging/handling cost for three items would normally be $24, but since
123             the seller specified $6, the total packaging/handling cost would be $8 + $6 +
124             $6, or $20.
125             This field is mutually exclusive with the other amount and percentage
126             fields within this type.
127             This field only applies when DiscountName is EachAdditionalAmount.
128              
129             Calls: SetShippingDiscountProfiles
130             RequiredInput: Conditionally
131              
132             # Argument: 'ns:AmountType'
133              
134             =cut
135              
136             sub setEachAdditionalAmount {
137             my $self = shift;
138             $self->{'EachAdditionalAmount'} = shift
139             }
140              
141             =head2 getEachAdditionalAmount()
142              
143             Calls: GetShippingDiscountProfiles
144             Returned: Conditionally
145              
146             # Returns: 'ns:AmountType'
147              
148             =cut
149              
150             sub getEachAdditionalAmount {
151             my $self = shift;
152             return $self->_getDataTypeInstance( 'EachAdditionalAmount'
153             ,'eBay::API::XML::DataType::AmountType');
154             }
155              
156              
157             =head2 setEachAdditionalOffAmount()
158              
159             The amount by which to reduce the packaging/handling cost for each item beyond
160             the first item (where the item with the highest packaging/handling cost is
161             selected by eBay as the first item). Let's say the buyer purchases three
162             items, each assigned a packaging/handling cost of $8, and the seller set
163             EachAdditionalAmountOff to $2. The packaging/handling cost for three items
164             would normally be $24, but since the seller specified $2, the total
165             packaging/handling cost would be $24 - (two additional items x $2), or $20.
166             This field is mutually exclusive with the other amount and percentage
167             fields within this type.
168             This field only applies when DiscountName is EachAdditionalOffAmount.
169              
170             Calls: SetShippingDiscountProfiles
171             RequiredInput: Conditionally
172              
173             # Argument: 'ns:AmountType'
174              
175             =cut
176              
177             sub setEachAdditionalOffAmount {
178             my $self = shift;
179             $self->{'EachAdditionalOffAmount'} = shift
180             }
181              
182             =head2 getEachAdditionalOffAmount()
183              
184             Calls: GetShippingDiscountProfiles
185             Returned: Conditionally
186              
187             # Returns: 'ns:AmountType'
188              
189             =cut
190              
191             sub getEachAdditionalOffAmount {
192             my $self = shift;
193             return $self->_getDataTypeInstance( 'EachAdditionalOffAmount'
194             ,'eBay::API::XML::DataType::AmountType');
195             }
196              
197              
198             =head2 setEachAdditionalPercentOff()
199              
200             The percentage by which to reduce the packaging/handling cost for each item
201             beyond the first item (where the item with the highest packaging/handling cost
202             is selected by eBay as the first item). Let's say the buyer purchases three
203             items, each assigned a packaging/handling cost of $8, and the seller set
204             EachAdditionalPercentOff to 0.25. The packaging/handling cost for three items
205             would normally be $24, but since the seller specified 0.25 ($2 out of 8), the
206             total packaging/handling cost would be $24 - (two additional items x $2), or
207             $20.
208             This field is mutually exclusive with the amount fields within this type.
209             This field only applies when DiscountName is EachAdditionalPercentOff.
210              
211             Calls: SetShippingDiscountProfiles
212             RequiredInput: Conditionally
213              
214             # Argument: 'xs:float'
215              
216             =cut
217              
218             sub setEachAdditionalPercentOff {
219             my $self = shift;
220             $self->{'EachAdditionalPercentOff'} = shift
221             }
222              
223             =head2 getEachAdditionalPercentOff()
224              
225             Calls: GetShippingDiscountProfiles
226             Returned: Conditionally
227              
228             # Returns: 'xs:float'
229              
230             =cut
231              
232             sub getEachAdditionalPercentOff {
233             my $self = shift;
234             return $self->{'EachAdditionalPercentOff'};
235             }
236              
237              
238             =head2 setOrderHandlingAmount()
239              
240             If specified, this is the fixed shipping cost to charge for an order,
241             regardless of the number of items in the order.
242             This field is mutually exclusive with the other amount and percentage
243             fields within this type.
244             This field only applies when DiscountName is CombinedHandlingFee.
245              
246             Calls: SetShippingDiscountProfiles
247             RequiredInput: Conditionally
248              
249             # Argument: 'ns:AmountType'
250              
251             =cut
252              
253             sub setOrderHandlingAmount {
254             my $self = shift;
255             $self->{'OrderHandlingAmount'} = shift
256             }
257              
258             =head2 getOrderHandlingAmount()
259              
260             Calls: GetShippingDiscountProfiles
261             Returned: Conditionally
262              
263             # Returns: 'ns:AmountType'
264              
265             =cut
266              
267             sub getOrderHandlingAmount {
268             my $self = shift;
269             return $self->_getDataTypeInstance( 'OrderHandlingAmount'
270             ,'eBay::API::XML::DataType::AmountType');
271             }
272              
273              
274              
275              
276              
277             ## Attribute and Property lists
278             sub getPropertiesList {
279             my $self = shift;
280             return \@gaProperties;
281             }
282              
283             sub getAttributesList {
284             my $self = shift;
285             return \@gaAttributes;
286             }
287              
288              
289              
290             1;