File Coverage

lib/eBay/API/XML/DataType/SalesTaxType.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::SalesTaxType;
4              
5 1     1   1131 use strict;
  1         2  
  1         31  
6 1     1   5 use warnings;
  1         1  
  1         28  
7              
8             ##########################################################################
9             #
10             # Module: ............... eBay/API/XML
11             # File: ................. SalesTaxType.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::SalesTaxType
21              
22             =head1 DESCRIPTION
23              
24             Type for expressing sales tax data.
25              
26              
27              
28             =head1 SYNOPSIS
29              
30             =cut
31              
32              
33             =head1 INHERITANCE
34              
35             eBay::API::XML::DataType::SalesTaxType inherits from the L class
36              
37             =cut
38              
39 1     1   36 use eBay::API::XML::BaseDataType;
  0            
  0            
40             our @ISA = ("eBay::API::XML::BaseDataType");
41              
42             use eBay::API::XML::DataType::AmountType;
43              
44              
45             my @gaProperties = ( [ 'SalesTaxAmount', 'ns:AmountType', ''
46             ,'eBay::API::XML::DataType::AmountType', '1' ]
47             , [ 'SalesTaxPercent', 'xs:float', '', '', '' ]
48             , [ 'SalesTaxState', 'xs:string', '', '', '' ]
49             , [ 'ShippingIncludedInTax', 'xs:boolean', '', '', '' ]
50             );
51             push @gaProperties, @{eBay::API::XML::BaseDataType::getPropertiesList()};
52              
53             my @gaAttributes = (
54             );
55             push @gaAttributes, @{eBay::API::XML::BaseDataType::getAttributesList()};
56              
57             =head1 Subroutines:
58              
59             =cut
60              
61             sub new {
62             my $classname = shift;
63             my %args = @_;
64             my $self = $classname->SUPER::new(%args);
65             return $self;
66             }
67              
68             sub isScalar {
69             return 0;
70             }
71              
72              
73              
74             =head2 setSalesTaxAmount()
75              
76             (US only) The amount of sales tax, calculated for a
77             transaction based on the SalesTaxPercent and pricing information.
78             Also returned for Half.com (for GetOrders).
79             GetItemTransactions can return incorrect sales tax if the name
80             of a state is not abbreviated (e.g. if the value is "Illinois" rather than "IL")
81             in TransactionArray.Transaction.Buyer.BuyerInfo.ShippingAddress.StateOrProvince.
82             If the name of a state is not abbreviated, sales tax should be obtained
83             by using the ItemID and TransactionID to call GetOrderTransactions.
84              
85             Calls: SendInvoice
86             RequiredInput: No
87              
88             # Argument: 'ns:AmountType'
89              
90             =cut
91              
92             sub setSalesTaxAmount {
93             my $self = shift;
94             $self->{'SalesTaxAmount'} = shift
95             }
96              
97             =head2 getSalesTaxAmount()
98              
99             Calls: GetItemShipping
100             Returned: Conditionally
101              
102             Calls: GetItemTransactions
103             GetSellerTransactions
104             Returned: Conditionally
105             Details: DetailLevel: none, ItemReturnDescription, ReturnAll
106              
107             Calls: GetOrders
108             Returned: Always
109             Details: DetailLevel: none
110              
111             Calls: GetOrderTransactions
112             Returned: Always
113             Details: DetailLevel: none, ItemReturnDescription, ReturnAll
114              
115             # Returns: 'ns:AmountType'
116              
117             =cut
118              
119             sub getSalesTaxAmount {
120             my $self = shift;
121             return $self->_getDataTypeInstance( 'SalesTaxAmount'
122             ,'eBay::API::XML::DataType::AmountType');
123             }
124              
125              
126             =head2 setSalesTaxPercent()
127              
128             Percent of an item's price to be charged as the sales tax for the transaction.
129             The value passed in is stored with a precision of 3 digits after the decimal
130             point (##.###). Also applicable to Half.com (for GetOrders).
131              
132             Calls: AddItem
133             AddOrder
134             GetItemRecommendations
135             RelistItem
136             ReviseItem
137             SendInvoice
138             VerifyAddItem
139             RequiredInput: No
140              
141             # Argument: 'xs:float'
142              
143             =cut
144              
145             sub setSalesTaxPercent {
146             my $self = shift;
147             $self->{'SalesTaxPercent'} = shift
148             }
149              
150             =head2 getSalesTaxPercent()
151              
152             Calls: GetSellerList
153             Returned: Conditionally
154             Details: DetailLevel: ItemReturnDescription, ReturnAll
155             GranularityLevel: Fine
156              
157              
158             Calls: GetBidderList
159             GetItemShipping
160             GetTaxTable
161             Returned: Conditionally
162              
163             Calls: GetItem
164             Returned: Conditionally
165             Details: DetailLevel: none, ItemReturnDescription, ItemReturnAttributes, ReturnAll
166              
167             Calls: GetItemTransactions
168             GetSellerTransactions
169             Returned: Conditionally
170             Details: DetailLevel: none, ItemReturnDescription, ReturnAll
171              
172             Calls: GetOrders
173             Returned: Always
174             Details: DetailLevel: none
175              
176             Calls: GetOrderTransactions
177             Returned: Always
178             Details: DetailLevel: none, ItemReturnDescription, ReturnAll
179              
180             # Returns: 'xs:float'
181              
182             =cut
183              
184             sub getSalesTaxPercent {
185             my $self = shift;
186             return $self->{'SalesTaxPercent'};
187             }
188              
189              
190             =head2 setSalesTaxState()
191              
192             State or jurisdiction for which the sales tax is being collected.
193             Only returned if the seller specified a value.
194             Also returned for Half.com (for GetOrders).
195              
196             Calls: AddItem
197             AddOrder
198             GetItemRecommendations
199             RelistItem
200             ReviseItem
201             SendInvoice
202             VerifyAddItem
203             RequiredInput: No
204              
205             # Argument: 'xs:string'
206              
207             =cut
208              
209             sub setSalesTaxState {
210             my $self = shift;
211             $self->{'SalesTaxState'} = shift
212             }
213              
214             =head2 getSalesTaxState()
215              
216             Calls: GetBidderList
217             GetItemShipping
218             Returned: Conditionally
219              
220             Calls: GetItem
221             Returned: Conditionally
222             Details: DetailLevel: none, ItemReturnDescription, ItemReturnAttributes, ReturnAll
223              
224             Calls: GetItemTransactions
225             GetSellerTransactions
226             Returned: Conditionally
227             Details: DetailLevel: none, ItemReturnDescription, ReturnAll
228              
229             Calls: GetOrders
230             Returned: Always
231             Details: DetailLevel: none
232              
233             Calls: GetOrderTransactions
234             Returned: Always
235             Details: DetailLevel: none, ItemReturnDescription, ReturnAll
236              
237             Calls: GetSellerList
238             Returned: Conditionally
239             Details: DetailLevel: ItemReturnDescription, ReturnAll
240              
241             # Returns: 'xs:string'
242              
243             =cut
244              
245             sub getSalesTaxState {
246             my $self = shift;
247             return $self->{'SalesTaxState'};
248             }
249              
250              
251             =head2 setShippingIncludedInTax()
252              
253             (US only) Whether shipping costs were part of the base amount
254             that was taxed. Flat or calculated shipping.
255             Also returned for Half.com (for GetOrders).
256              
257             Calls: AddItem
258             AddOrder
259             GetItemRecommendations
260             RelistItem
261             ReviseItem
262             SendInvoice
263             VerifyAddItem
264             RequiredInput: No
265              
266             # Argument: 'xs:boolean'
267              
268             =cut
269              
270             sub setShippingIncludedInTax {
271             my $self = shift;
272             $self->{'ShippingIncludedInTax'} = shift
273             }
274              
275             =head2 isShippingIncludedInTax()
276              
277             Calls: GetSellerList
278             Returned: Conditionally
279             Details: DetailLevel: ItemReturnDescription, ReturnAll
280             GranularityLevel: Fine
281              
282              
283             Calls: GetBidderList
284             GetItemShipping
285             Returned: Conditionally
286              
287             Calls: GetItem
288             Returned: Conditionally
289             Details: DetailLevel: none, ItemReturnDescription, ItemReturnAttributes, ReturnAll
290              
291             Calls: GetItemTransactions
292             GetSellerTransactions
293             Returned: Conditionally
294             Details: DetailLevel: none, ItemReturnDescription, ReturnAll
295              
296             Calls: GetOrders
297             Returned: Always
298             Details: DetailLevel: none
299              
300             Calls: GetOrderTransactions
301             Returned: Always
302             Details: DetailLevel: none, ItemReturnDescription, ReturnAll
303              
304             # Returns: 'xs:boolean'
305              
306             =cut
307              
308             sub isShippingIncludedInTax {
309             my $self = shift;
310             return $self->{'ShippingIncludedInTax'};
311             }
312              
313              
314              
315              
316              
317             ## Attribute and Property lists
318             sub getPropertiesList {
319             my $self = shift;
320             return \@gaProperties;
321             }
322              
323             sub getAttributesList {
324             my $self = shift;
325             return \@gaAttributes;
326             }
327              
328              
329              
330             1;