Skip to content

Commit 3d4121f

Browse files
committed
Re-adding orders client library (without anticipated changes yet)
1 parent da87f85 commit 3d4121f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+13098
-0
lines changed

src/MarketplaceWebServiceOrders/Client.php

Lines changed: 943 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 151 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,151 @@
1+
<?php
2+
/*******************************************************************************
3+
* Copyright 2009-2018 Amazon Services. All Rights Reserved.
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
*
6+
* You may not use this file except in compliance with the License.
7+
* You may obtain a copy of the License at: http://aws.amazon.com/apache2.0
8+
* This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
9+
* CONDITIONS OF ANY KIND, either express or implied. See the License for the
10+
* specific language governing permissions and limitations under the License.
11+
*******************************************************************************
12+
* PHP Version 5
13+
* @category Amazon
14+
* @package Marketplace Web Service Orders
15+
* @version 2013-09-01
16+
* Library Version: 2018-01-31
17+
* Generated: Tue Jan 30 16:03:22 PST 2018
18+
*/
19+
20+
21+
/**
22+
* Marketplace Web Service Orders Exception provides details of errors
23+
* returned by Marketplace Web Service Orders service
24+
*
25+
*/
26+
class MarketplaceWebServiceOrders_Exception extends Exception
27+
28+
{
29+
/** @var string */
30+
private $_message = null;
31+
/** @var int */
32+
private $_statusCode = -1;
33+
/** @var string */
34+
private $_errorCode = null;
35+
/** @var string */
36+
private $_errorType = null;
37+
/** @var string */
38+
private $_requestId = null;
39+
/** @var string */
40+
private $_xml = null;
41+
42+
private $_responseHeaderMetadata = null;
43+
44+
/**
45+
* Constructs MarketplaceWebServiceOrders_Exception
46+
* @param array $errorInfo details of exception.
47+
* Keys are:
48+
* <ul>
49+
* <li>Message - (string) text message for an exception</li>
50+
* <li>StatusCode - (int) HTTP status code at the time of exception</li>
51+
* <li>ErrorCode - (string) specific error code returned by the service</li>
52+
* <li>ErrorType - (string) Possible types: Sender, Receiver or Unknown</li>
53+
* <li>RequestId - (string) request id returned by the service</li>
54+
* <li>XML - (string) compete xml response at the time of exception</li>
55+
* <li>Exception - (Exception) inner exception if any</li>
56+
* </ul>
57+
*
58+
*/
59+
public function __construct(array $errorInfo = array())
60+
{
61+
$this->_message = $errorInfo["Message"];
62+
parent::__construct($this->_message);
63+
if (array_key_exists("Exception", $errorInfo)) {
64+
$exception = $errorInfo["Exception"];
65+
if ($exception instanceof MarketplaceWebServiceOrders_Exception) {
66+
$this->_statusCode = $exception->getStatusCode();
67+
$this->_errorCode = $exception->getErrorCode();
68+
$this->_errorType = $exception->getErrorType();
69+
$this->_requestId = $exception->getRequestId();
70+
$this->_xml= $exception->getXML();
71+
$this->_responseHeaderMetadata = $exception->getResponseHeaderMetadata();
72+
}
73+
} else {
74+
$this->_statusCode = $this->arr_val($errorInfo, "StatusCode");
75+
$this->_errorCode = $this->arr_val($errorInfo, "ErrorCode");
76+
$this->_errorType = $this->arr_val($errorInfo, "ErrorType");
77+
$this->_requestId = $this->arr_val($errorInfo, "RequestId");
78+
$this->_xml = $this->arr_val($errorInfo, "XML");
79+
$this->_responseHeaderMetadata = $this->arr_val($errorInfo, "ResponseHeaderMetadata");
80+
}
81+
}
82+
83+
private function arr_val($arr, $key) {
84+
if(array_key_exists($key, $arr)) {
85+
return $arr[$key];
86+
} else {
87+
return null;
88+
}
89+
}
90+
91+
/**
92+
* Gets error type returned by the service if available.
93+
*
94+
* @return string Error Code returned by the service
95+
*/
96+
public function getErrorCode(){
97+
return $this->_errorCode;
98+
}
99+
100+
/**
101+
* Gets error type returned by the service.
102+
*
103+
* @return string Error Type returned by the service.
104+
* Possible types: Sender, Receiver or Unknown
105+
*/
106+
public function getErrorType(){
107+
return $this->_errorType;
108+
}
109+
110+
/**
111+
* Gets error message
112+
*
113+
* @return string Error message
114+
*/
115+
public function getErrorMessage() {
116+
return $this->_message;
117+
}
118+
119+
/**
120+
* Gets status code returned by the service if available. If status
121+
* code is set to -1, it means that status code was unavailable at the
122+
* time exception was thrown
123+
*
124+
* @return int status code returned by the service
125+
*/
126+
public function getStatusCode() {
127+
return $this->_statusCode;
128+
}
129+
130+
/**
131+
* Gets XML returned by the service if available.
132+
*
133+
* @return string XML returned by the service
134+
*/
135+
public function getXML() {
136+
return $this->_xml;
137+
}
138+
139+
/**
140+
* Gets Request ID returned by the service if available.
141+
*
142+
* @return string Request ID returned by the service
143+
*/
144+
public function getRequestId() {
145+
return $this->_requestId;
146+
}
147+
148+
public function getResponseHeaderMetadata() {
149+
return $this->_responseHeaderMetadata;
150+
}
151+
}
Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
<?php
2+
/*******************************************************************************
3+
* Copyright 2009-2018 Amazon Services. All Rights Reserved.
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
*
6+
* You may not use this file except in compliance with the License.
7+
* You may obtain a copy of the License at: http://aws.amazon.com/apache2.0
8+
* This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
9+
* CONDITIONS OF ANY KIND, either express or implied. See the License for the
10+
* specific language governing permissions and limitations under the License.
11+
*******************************************************************************
12+
* PHP Version 5
13+
* @category Amazon
14+
* @package Marketplace Web Service Orders
15+
* @version 2013-09-01
16+
* Library Version: 2018-01-31
17+
* Generated: Tue Jan 30 16:03:22 PST 2018
18+
*/
19+
20+
interface MarketplaceWebServiceOrders_Interface
21+
{
22+
23+
/**
24+
* Get Order
25+
* This operation takes up to 50 order ids and returns the corresponding orders.
26+
*
27+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_GetOrder request or MarketplaceWebServiceOrders_Model_GetOrder object itself
28+
* @see MarketplaceWebServiceOrders_Model_GetOrderRequest
29+
* @return MarketplaceWebServiceOrders_Model_GetOrderResponse
30+
*
31+
* @throws MarketplaceWebServiceOrders_Exception
32+
*/
33+
public function getOrder($request);
34+
35+
36+
/**
37+
* Get Service Status
38+
* Returns the service status of a particular MWS API section. The operation
39+
* takes no input.
40+
*
41+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_GetServiceStatus request or MarketplaceWebServiceOrders_Model_GetServiceStatus object itself
42+
* @see MarketplaceWebServiceOrders_Model_GetServiceStatusRequest
43+
* @return MarketplaceWebServiceOrders_Model_GetServiceStatusResponse
44+
*
45+
* @throws MarketplaceWebServiceOrders_Exception
46+
*/
47+
public function getServiceStatus($request);
48+
49+
50+
/**
51+
* List Order Items
52+
* This operation can be used to list the items of the order indicated by the
53+
* given order id (only a single Amazon order id is allowed).
54+
*
55+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_ListOrderItems request or MarketplaceWebServiceOrders_Model_ListOrderItems object itself
56+
* @see MarketplaceWebServiceOrders_Model_ListOrderItemsRequest
57+
* @return MarketplaceWebServiceOrders_Model_ListOrderItemsResponse
58+
*
59+
* @throws MarketplaceWebServiceOrders_Exception
60+
*/
61+
public function listOrderItems($request);
62+
63+
64+
/**
65+
* List Order Items By Next Token
66+
* If ListOrderItems cannot return all the order items in one go, it will
67+
* provide a nextToken. That nextToken can be used with this operation to
68+
* retrive the next batch of items for that order.
69+
*
70+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_ListOrderItemsByNextToken request or MarketplaceWebServiceOrders_Model_ListOrderItemsByNextToken object itself
71+
* @see MarketplaceWebServiceOrders_Model_ListOrderItemsByNextTokenRequest
72+
* @return MarketplaceWebServiceOrders_Model_ListOrderItemsByNextTokenResponse
73+
*
74+
* @throws MarketplaceWebServiceOrders_Exception
75+
*/
76+
public function listOrderItemsByNextToken($request);
77+
78+
79+
/**
80+
* List Orders
81+
* ListOrders can be used to find orders that meet the specified criteria.
82+
*
83+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_ListOrders request or MarketplaceWebServiceOrders_Model_ListOrders object itself
84+
* @see MarketplaceWebServiceOrders_Model_ListOrdersRequest
85+
* @return MarketplaceWebServiceOrders_Model_ListOrdersResponse
86+
*
87+
* @throws MarketplaceWebServiceOrders_Exception
88+
*/
89+
public function listOrders($request);
90+
91+
92+
/**
93+
* List Orders By Next Token
94+
* If ListOrders returns a nextToken, thus indicating that there are more orders
95+
* than returned that matched the given filter criteria, ListOrdersByNextToken
96+
* can be used to retrieve those other orders using that nextToken.
97+
*
98+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_ListOrdersByNextToken request or MarketplaceWebServiceOrders_Model_ListOrdersByNextToken object itself
99+
* @see MarketplaceWebServiceOrders_Model_ListOrdersByNextTokenRequest
100+
* @return MarketplaceWebServiceOrders_Model_ListOrdersByNextTokenResponse
101+
*
102+
* @throws MarketplaceWebServiceOrders_Exception
103+
*/
104+
public function listOrdersByNextToken($request);
105+
106+
}
Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
<?php
2+
/*******************************************************************************
3+
* Copyright 2009-2018 Amazon Services. All Rights Reserved.
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
*
6+
* You may not use this file except in compliance with the License.
7+
* You may obtain a copy of the License at: http://aws.amazon.com/apache2.0
8+
* This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
9+
* CONDITIONS OF ANY KIND, either express or implied. See the License for the
10+
* specific language governing permissions and limitations under the License.
11+
*******************************************************************************
12+
* PHP Version 5
13+
* @category Amazon
14+
* @package Marketplace Web Service Orders
15+
* @version 2013-09-01
16+
* Library Version: 2018-01-31
17+
* Generated: Tue Jan 30 16:03:22 PST 2018
18+
*/
19+
20+
/**
21+
* @see MarketplaceWebServiceOrders_Interface
22+
*/
23+
require_once (dirname(__FILE__) . '/Interface.php');
24+
25+
class MarketplaceWebServiceOrders_Mock implements MarketplaceWebServiceOrders_Interface
26+
{
27+
// Public API ------------------------------------------------------------//
28+
29+
/**
30+
* Get Order
31+
* This operation takes up to 50 order ids and returns the corresponding orders.
32+
*
33+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_GetOrder request or MarketplaceWebServiceOrders_Model_GetOrder object itself
34+
* @see MarketplaceWebServiceOrders_Model_GetOrder
35+
* @return MarketplaceWebServiceOrders_Model_GetOrderResponse
36+
*
37+
* @throws MarketplaceWebServiceOrders_Exception
38+
*/
39+
public function getOrder($request)
40+
{
41+
require_once (dirname(__FILE__) . '/Model/GetOrderResponse.php');
42+
return MarketplaceWebServiceOrders_Model_GetOrderResponse::fromXML($this->_invoke('GetOrder'));
43+
}
44+
45+
/**
46+
* Get Service Status
47+
* Returns the service status of a particular MWS API section. The operation
48+
* takes no input.
49+
*
50+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_GetServiceStatus request or MarketplaceWebServiceOrders_Model_GetServiceStatus object itself
51+
* @see MarketplaceWebServiceOrders_Model_GetServiceStatus
52+
* @return MarketplaceWebServiceOrders_Model_GetServiceStatusResponse
53+
*
54+
* @throws MarketplaceWebServiceOrders_Exception
55+
*/
56+
public function getServiceStatus($request)
57+
{
58+
require_once (dirname(__FILE__) . '/Model/GetServiceStatusResponse.php');
59+
return MarketplaceWebServiceOrders_Model_GetServiceStatusResponse::fromXML($this->_invoke('GetServiceStatus'));
60+
}
61+
62+
/**
63+
* List Order Items
64+
* This operation can be used to list the items of the order indicated by the
65+
* given order id (only a single Amazon order id is allowed).
66+
*
67+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_ListOrderItems request or MarketplaceWebServiceOrders_Model_ListOrderItems object itself
68+
* @see MarketplaceWebServiceOrders_Model_ListOrderItems
69+
* @return MarketplaceWebServiceOrders_Model_ListOrderItemsResponse
70+
*
71+
* @throws MarketplaceWebServiceOrders_Exception
72+
*/
73+
public function listOrderItems($request)
74+
{
75+
require_once (dirname(__FILE__) . '/Model/ListOrderItemsResponse.php');
76+
return MarketplaceWebServiceOrders_Model_ListOrderItemsResponse::fromXML($this->_invoke('ListOrderItems'));
77+
}
78+
79+
/**
80+
* List Order Items By Next Token
81+
* If ListOrderItems cannot return all the order items in one go, it will
82+
* provide a nextToken. That nextToken can be used with this operation to
83+
* retrive the next batch of items for that order.
84+
*
85+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_ListOrderItemsByNextToken request or MarketplaceWebServiceOrders_Model_ListOrderItemsByNextToken object itself
86+
* @see MarketplaceWebServiceOrders_Model_ListOrderItemsByNextToken
87+
* @return MarketplaceWebServiceOrders_Model_ListOrderItemsByNextTokenResponse
88+
*
89+
* @throws MarketplaceWebServiceOrders_Exception
90+
*/
91+
public function listOrderItemsByNextToken($request)
92+
{
93+
require_once (dirname(__FILE__) . '/Model/ListOrderItemsByNextTokenResponse.php');
94+
return MarketplaceWebServiceOrders_Model_ListOrderItemsByNextTokenResponse::fromXML($this->_invoke('ListOrderItemsByNextToken'));
95+
}
96+
97+
/**
98+
* List Orders
99+
* ListOrders can be used to find orders that meet the specified criteria.
100+
*
101+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_ListOrders request or MarketplaceWebServiceOrders_Model_ListOrders object itself
102+
* @see MarketplaceWebServiceOrders_Model_ListOrders
103+
* @return MarketplaceWebServiceOrders_Model_ListOrdersResponse
104+
*
105+
* @throws MarketplaceWebServiceOrders_Exception
106+
*/
107+
public function listOrders($request)
108+
{
109+
require_once (dirname(__FILE__) . '/Model/ListOrdersResponse.php');
110+
return MarketplaceWebServiceOrders_Model_ListOrdersResponse::fromXML($this->_invoke('ListOrders'));
111+
}
112+
113+
/**
114+
* List Orders By Next Token
115+
* If ListOrders returns a nextToken, thus indicating that there are more orders
116+
* than returned that matched the given filter criteria, ListOrdersByNextToken
117+
* can be used to retrieve those other orders using that nextToken.
118+
*
119+
* @param mixed $request array of parameters for MarketplaceWebServiceOrders_Model_ListOrdersByNextToken request or MarketplaceWebServiceOrders_Model_ListOrdersByNextToken object itself
120+
* @see MarketplaceWebServiceOrders_Model_ListOrdersByNextToken
121+
* @return MarketplaceWebServiceOrders_Model_ListOrdersByNextTokenResponse
122+
*
123+
* @throws MarketplaceWebServiceOrders_Exception
124+
*/
125+
public function listOrdersByNextToken($request)
126+
{
127+
require_once (dirname(__FILE__) . '/Model/ListOrdersByNextTokenResponse.php');
128+
return MarketplaceWebServiceOrders_Model_ListOrdersByNextTokenResponse::fromXML($this->_invoke('ListOrdersByNextToken'));
129+
}
130+
131+
// Private API ------------------------------------------------------------//
132+
133+
private function _invoke($actionName)
134+
{
135+
return $xml = file_get_contents(dirname(__FILE__) . '/Mock/' . $actionName . 'Response.xml', /** search include path */ TRUE);
136+
}
137+
138+
}

0 commit comments

Comments
 (0)