File Coverage

lib/eBay/API/XML/Call/GetProductFamilyMembers/GetProductFamilyMembersRequestType.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::GetProductFamilyMembers::GetProductFamilyMembersRequestType;
4              
5 1     1   1435 use strict;
  1         3  
  1         24  
6 1     1   4 use warnings;
  1         2  
  1         31  
7              
8             ##########################################################################
9             #
10             # Module: ............... eBay/API/XML
11             # File: ................. GetProductFamilyMembersRequestType.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::GetProductFamilyMembers::GetProductFamilyMembersRequestType
21              
22             =head1 DESCRIPTION
23              
24             GetProductFamilyMembers is intended to be used combination with GetProductSearchResults.
25             If a search result returned from GetProductSearchResults does not return all
26             product versions in a family, and if the user wants to see more versions (editions)
27             of the product, you can use GetProductFamilyMembers to retrieve all versions of the product.
28             That is, if GetProductSearchResultsonly returns the product family header (ParentProduct),
29             use this call to zoom in on a particular family of product versions.
30             (This situation usually occurs when you call GetProductSearchResults and more more
31             matches are found than the MaxChildrenPerFamily value you specified.)
32            
33             The structure of tGetProductFamilyMembers is similar to that of GetProductSearchResults.
34             Instead of passing in a query, you pass in a product ID. This product ID is used to
35             find all the members of the product family that the specified product is a member of.
36             The results are compatible with the results from GetProductSearchResults,
37             so similar application logic can be used to handle both requests and responses.
38             This call supports batch requests. This means you can retrieve products in
39             multiple families by using a single request. To perform a batch request,
40             pass an array of ProductSearch objects in the call.
41            
42             For each ProductSearch object, GetProductFamilyMembers returns a list of all the
43             products in the specified product family. Each product is represented as a list of
44             attributes (Item Specifics) plus other identifying information, such as a product ID
45             and a stock photo.
46            
47             Once the user selects a product from the results, pass its ID in a GetProductSellingPages
48             request to retrieve more detailed information about the product, including a set of
49             optional Item Specifics that the seller can use in addition to the
50             pre-filled Item Specifics (see GetProductSellingPages).
51            
52             To use this data in a listing, pass the product ID and the optional Item Specifics
53             in the seller's listing request (AddItem).
54              
55              
56              
57             =head1 SYNOPSIS
58              
59             =cut
60              
61              
62             =head1 INHERITANCE
63              
64             eBay::API::XML::Call::GetProductFamilyMembers::GetProductFamilyMembersRequestType inherits from the L class
65              
66             =cut
67              
68 1     1   33 use eBay::API::XML::RequestDataType;
  0            
  0            
69             our @ISA = ("eBay::API::XML::RequestDataType");
70              
71             use eBay::API::XML::DataType::ProductSearchType;
72              
73              
74             my @gaProperties = ( [ 'ProductSearch', 'ns:ProductSearchType', '1'
75             ,'eBay::API::XML::DataType::ProductSearchType', '1' ]
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 setProductSearch()
101              
102             Specifies the ID of a product in the family to be retrieved,
103             along with pagination and sorting instructions.
104             ProductSearch is a required input.
105              
106             SeeLink: URL: http://developer.ebay.com/DevZone/XML/docs/WebHelp/index.htm?context=eBay_XML_API&topic=AttrGPFM
107             Title: Retrieving All Members of a Product Family
108              
109             RequiredInput: Yes
110             # Argument: reference to an array
111             of 'ns:ProductSearchType'
112              
113             =cut
114              
115             sub setProductSearch {
116             my $self = shift;
117             $self->{'ProductSearch'} =
118             $self->convertArray_To_RefToArrayIfNeeded(@_);
119             }
120              
121             =head2 getProductSearch()
122              
123             # Returns: reference to an array
124             of 'ns:ProductSearchType'
125              
126             =cut
127              
128             sub getProductSearch {
129             my $self = shift;
130             return $self->_getDataTypeArray('ProductSearch');
131             }
132              
133              
134              
135              
136              
137             ## Attribute and Property lists
138             sub getPropertiesList {
139             my $self = shift;
140             return \@gaProperties;
141             }
142              
143             sub getAttributesList {
144             my $self = shift;
145             return \@gaAttributes;
146             }
147              
148              
149              
150             1;