File Coverage

lib/eBay/API/XML/Call/RelistItem/RelistItemRequestType.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::RelistItem::RelistItemRequestType;
4              
5 1     1   1941 use strict;
  1         3  
  1         46  
6 1     1   6 use warnings;
  1         2  
  1         48  
7              
8             ##########################################################################
9             #
10             # Module: ............... eBay/API/XML
11             # File: ................. RelistItemRequestType.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::RelistItem::RelistItemRequestType
21              
22             =head1 DESCRIPTION
23              
24             Enables a seller to take a single item (or a single multi-item
25             listing) that ended without bidders or buyers and re-list it on a
26             specified eBay site. The listing may be re-listed with the same item
27             properties as the original or the seller may change a number of the
28             item's defining properties at re-listing time. The new listing will
29             have a different item ID than the original one. RelistItem re-lists a
30             single item (or a single multi-item listing) that has already ended.
31             To re-list multiple items (multiple listings) that have ended,
32             execute RelistItem once for each ended listing.
33              
34              
35              
36             =head1 SYNOPSIS
37              
38             =cut
39              
40              
41             =head1 INHERITANCE
42              
43             eBay::API::XML::Call::RelistItem::RelistItemRequestType inherits from the L class
44              
45             =cut
46              
47 1     1   41 use eBay::API::XML::RequestDataType;
  0            
  0            
48             our @ISA = ("eBay::API::XML::RequestDataType");
49              
50             use eBay::API::XML::DataType::ItemType;
51              
52              
53             my @gaProperties = ( [ 'DeletedField', 'xs:string', '1', '', '' ]
54             , [ 'Item', 'ns:ItemType', ''
55             ,'eBay::API::XML::DataType::ItemType', '1' ]
56             );
57             push @gaProperties, @{eBay::API::XML::RequestDataType::getPropertiesList()};
58              
59             my @gaAttributes = (
60             );
61             push @gaAttributes, @{eBay::API::XML::RequestDataType::getAttributesList()};
62              
63             =head1 Subroutines:
64              
65             =cut
66              
67             sub new {
68             my $classname = shift;
69             my %args = @_;
70             my $self = $classname->SUPER::new(%args);
71             return $self;
72             }
73              
74             sub isScalar {
75             return 0;
76             }
77              
78              
79              
80             =head2 setDeletedField()
81              
82             Specifies the name of the field to delete from a listing.
83             See the eBay Web Services guide for rules on deleting values when relisting items.
84             Also see the relevant field descriptions to determine when to use DeletedField (and potential consequences).
85             The request can contain zero, one, or many instances of DeletedField (one for each field to be deleted).
86             DeletedField accepts the following path names, which delete the corresponding nodes:

87             Item.ApplicationData
88             Item.AttributeSetArray
89             Item.BuyItNowPrice
90             Item.Charity
91             Item.ItemSpecifics
92             Item.ListingCheckoutRedirectPreference.ProStoresStoreName
93             Item.ListingCheckoutRedirectPreference.SellerThirdPartyUsername
94             Item.ListingDesigner.LayoutID
95             Item.ListingDesigner.ThemeID
96             Item.ListingDetails.LocalListingDistance
97             Item.ListingDetails.MinimumBestOfferMessage
98             Item.ListingDetails.MinimumBestOfferPrice
99             Item.ListingEnhancement[Value]
100             Item.PayPalEmailAddress
101             Item.PictureDetails.GalleryURL
102             Item.PictureDetails.PictureURL
103             Item.PostalCode
104             Item.ProductListingDetails
105             Item.SecondaryCategory
106             Item.SellerContactDetails
107             Item.SellerContactDetails.CompanyName
108             Item.SellerContactDetails.County
109             Item.SellerContactDetails.InternationalStreet
110             Item.SellerContactDetails.Phone2AreaOrCityCode
111             Item.SellerContactDetails.Phone2CountryCode
112             Item.SellerContactDetails.Phone2CountryPrefix
113             Item.SellerContactDetails.Phone2LocalNumber
114             Item.SellerContactDetails.PhoneAreaOrCityCode
115             Item.SellerContactDetails.PhoneCountryCode
116             Item.SellerContactDetails.PhoneCountryPrefix
117             Item.SellerContactDetails.PhoneLocalNumber
118             Item.SellerContactDetails.Street
119             Item.SellerContactDetails.Street2
120             Item.ShippingDetails.PaymentInstructions
121             Item.SKU
122             Item.SubTitle
123             These values are case-sensitive. Use values that match the case of the schema element names
124             (Item.PictureDetails.GalleryURL) or make the initial letter of each field name lowercase (item.pictureDetails.galleryURL).
125             However, do not change the case of letters in the middle of a field name.
126             For example, item.picturedetails.galleryUrl is not allowed.

127             To delete a listing enhancement like Featured, specify the value you are deleting;
128             for example, Item.ListingEnhancement[Featured].
129              
130             RequiredInput: Conditionally
131             # Argument: reference to an array
132             of 'xs:string'
133              
134             =cut
135              
136             sub setDeletedField {
137             my $self = shift;
138             $self->{'DeletedField'} =
139             $self->convertArray_To_RefToArrayIfNeeded(@_);
140             }
141              
142             =head2 getDeletedField()
143              
144             # Returns: reference to an array
145             of 'xs:string'
146              
147             =cut
148              
149             sub getDeletedField {
150             my $self = shift;
151             return $self->_getDataTypeArray('DeletedField');
152             }
153              
154              
155             =head2 setItem()
156              
157             Child elements hold the values for item properties that change for the
158             item re-list. Item is a required input. At a minimum, the Item.ItemID
159             property must be set to the ID of the listing being re-listed (a
160             listing that ended in the past 90 days). By default, the new listing's
161             Item object properties are the same as those of the original (ended)
162             listing. By setting a new value in the Item object, the new listing
163             uses the new value rather than the corresponding value from the old
164             listing.
165              
166             RequiredInput: Yes
167             # Argument: 'ns:ItemType'
168              
169             =cut
170              
171             sub setItem {
172             my $self = shift;
173             $self->{'Item'} = shift
174             }
175              
176             =head2 getItem()
177              
178             # Returns: 'ns:ItemType'
179              
180             =cut
181              
182             sub getItem {
183             my $self = shift;
184             return $self->_getDataTypeInstance( 'Item'
185             ,'eBay::API::XML::DataType::ItemType');
186             }
187              
188              
189              
190              
191              
192             ## Attribute and Property lists
193             sub getPropertiesList {
194             my $self = shift;
195             return \@gaProperties;
196             }
197              
198             sub getAttributesList {
199             my $self = shift;
200             return \@gaAttributes;
201             }
202              
203              
204              
205             1;