Skip to content

Commit

Permalink
ProductImage and ProductCollection now extends ArrayCollection
Browse files Browse the repository at this point in the history
- Refactored GetProducts response
- Fixed many tests
  • Loading branch information
Daniel Costa committed Jul 16, 2015
1 parent 26a0659 commit 1224360
Show file tree
Hide file tree
Showing 139 changed files with 1,009 additions and 943 deletions.
6 changes: 2 additions & 4 deletions src/Common/Api/ErrorParser/XmlErrorParser.php
@@ -1,6 +1,4 @@
<?php

namespace SellerCenter\SDK\Common\Api\ErrorParser;
<?php namespace SellerCenter\SDK\Common\Api\ErrorParser;

use GuzzleHttp\Message\ResponseInterface;
use JMS\Serializer\SerializerBuilder;
Expand All @@ -21,7 +19,7 @@ public function __invoke(ResponseInterface $response)
$serializer = SerializerBuilder::create()->build();
return $serializer->deserialize(
$response->xml()->asXML(),
'SellerCenter\SDK\Common\Api\ErrorResponse',
'SellerCenter\SDK\Common\Api\Response\Error\ErrorResponse',
'xml'
);
}
Expand Down
5 changes: 2 additions & 3 deletions src/Common/Api/FilesystemApiProvider.php
@@ -1,6 +1,4 @@
<?php

namespace SellerCenter\SDK\Common\Api;
<?php namespace SellerCenter\SDK\Common\Api;

use GuzzleHttp\Utils;

Expand Down Expand Up @@ -108,6 +106,7 @@ private function load($service, $version, $type)
$path = "{$this->path}/{$service}-{$version}.{$type}.php";

if (file_exists($path)) {
/** @noinspection PhpIncludeInspection */
return require $path;
}

Expand Down
4 changes: 1 addition & 3 deletions src/Common/Api/Parser/AbstractParser.php
@@ -1,6 +1,4 @@
<?php

namespace SellerCenter\SDK\Common\Api\Parser;
<?php namespace SellerCenter\SDK\Common\Api\Parser;

use SellerCenter\SDK\Common\Api\Service;

Expand Down
4 changes: 1 addition & 3 deletions src/Common/Api/Parser/AbstractRestParser.php
@@ -1,6 +1,4 @@
<?php

namespace SellerCenter\SDK\Common\Api\Parser;
<?php namespace SellerCenter\SDK\Common\Api\Parser;

use GuzzleHttp\Message\ResponseInterface;

Expand Down
4 changes: 1 addition & 3 deletions src/Common/Api/Parser/RestXmlParser.php
@@ -1,6 +1,4 @@
<?php

namespace SellerCenter\SDK\Common\Api\Parser;
<?php namespace SellerCenter\SDK\Common\Api\Parser;

use GuzzleHttp\Message\ResponseInterface;
use SellerCenter\SDK\Common\Api\Service;
Expand Down
4 changes: 1 addition & 3 deletions src/Common/Api/Parser/XmlParser.php
@@ -1,6 +1,4 @@
<?php

namespace SellerCenter\SDK\Common\Api\Parser;
<?php namespace SellerCenter\SDK\Common\Api\Parser;

use JMS\Serializer\SerializerBuilder;
use SimpleXMLElement;
Expand Down
6 changes: 6 additions & 0 deletions src/Common/Api/Response/BodyInterface.php
@@ -0,0 +1,6 @@
<?php namespace SellerCenter\SDK\Common\Api\Response;

interface BodyInterface
{

}
@@ -1,21 +1,20 @@
<?php

namespace SellerCenter\SDK\Common\Api\ErrorResponse;
<?php namespace SellerCenter\SDK\Common\Api\Response\Error;

use Doctrine\Common\Collections\ArrayCollection;
use JMS\Serializer\Annotation as JMS;
use SellerCenter\SDK\Common\Api\Response\BodyInterface;

/**
* Class Body
*
* @package SellerCenter\SDK\Common\Api\ErrorResponse
* @package SellerCenter\SDK\Common\Api\Response\Error\ErrorResponse
* @author Daniel Costa
*/
class Body
class Body implements BodyInterface
{
/**
* @var ArrayCollection
* @JMS\Type("ArrayCollection<SellerCenter\SDK\Common\Api\ErrorResponse\Detail>")
* @JMS\Type("ArrayCollection<SellerCenter\SDK\Common\Api\Response\Error\ErrorResponse\Detail>")
* @JMS\XmlList(entry="ErrorDetail")
*/
protected $detail;
Expand Down
@@ -1,13 +1,11 @@
<?php

namespace SellerCenter\SDK\Common\Api\ErrorResponse;
<?php namespace SellerCenter\SDK\Common\Api\Response\Error;

use JMS\Serializer\Annotation as JMS;

/**
* Class ErrorBody
*
* @package SellerCenter\SDK\Common\Api\ErrorResponse
* @package SellerCenter\SDK\Common\Api\Response\Error\ErrorResponse
* @author Daniel Costa
*/
class Detail
Expand Down
@@ -1,6 +1,4 @@
<?php

namespace SellerCenter\SDK\Common\Api;
<?php namespace SellerCenter\SDK\Common\Api\Response\Error;

use JMS\Serializer\Annotation as JMS;

Expand All @@ -14,53 +12,53 @@
class ErrorResponse
{
/**
* @var ErrorResponse\Head
* @var Head
* @JMS\SerializedName("Head")
* @JMS\Type("SellerCenter\SDK\Common\Api\ErrorResponse\Head")
* @JMS\Type("SellerCenter\SDK\Common\Api\Response\Error\Head")
*/
protected $head;

/**
* @var ErrorResponse\Body
* @var Body
* @JMS\SerializedName("Body")
* @JMS\Type("SellerCenter\SDK\Common\Api\ErrorResponse\Body")
* @JMS\Type("SellerCenter\SDK\Common\Api\Response\Error\Body")
*/
protected $body;

/**
* @return ErrorResponse\Head
* @return Head
*/
public function getHead()
{
return $this->head;
}

/**
* @param ErrorResponse\Head $head
* @param Head $head
*
* @return ErrorResponse
*/
public function setHead($head)
public function setHead(Head $head)
{
$this->head = $head;

return $this;
}

/**
* @return ErrorResponse\Body
* @return Body
*/
public function getBody()
{
return $this->body;
}

/**
* @param ErrorResponse\Body $body
* @param Body $body
*
* @return ErrorResponse
*/
public function setBody($body)
public function setBody(Body $body)
{
$this->body = $body;

Expand Down
@@ -1,16 +1,15 @@
<?php

namespace SellerCenter\SDK\Common\Api\ErrorResponse;
<?php namespace SellerCenter\SDK\Common\Api\Response\Error;

use JMS\Serializer\Annotation as JMS;
use SellerCenter\SDK\Common\Api\Response\HeadInterface;

/**
* Class ErrorHead
*
* @package SellerCenter\SDK\Common\Api\ErrorResponse
* @package SellerCenter\SDK\Common\Api\Response\Error\ErrorResponse
* @author Daniel Costa
*/
class Head
class Head implements HeadInterface
{
/**
* @var string
Expand Down
16 changes: 16 additions & 0 deletions src/Common/Api/Response/HeadInterface.php
@@ -0,0 +1,16 @@
<?php namespace SellerCenter\SDK\Common\Api\Response;

interface HeadInterface
{
/**
* @return string
*/
public function getRequestAction();

/**
* @param string $requestAction
*
* @return HeadInterface
*/
public function setRequestAction($requestAction);
}
15 changes: 15 additions & 0 deletions src/Common/Api/Response/Success/Body.php
@@ -0,0 +1,15 @@
<?php namespace SellerCenter\SDK\Common\Api\Response\Success;

use JMS\Serializer\Annotation as JMS;
use SellerCenter\SDK\Common\Api\Response\BodyInterface;

/**
* Class Body
*
* @package SellerCenter\SDK\Common\Api\Response\Success\SuccessResponse
* @author Daniel Costa
*/
class Body implements BodyInterface
{

}
@@ -1,17 +1,16 @@
<?php

namespace SellerCenter\SDK\Common\Api\SuccessResponse;
<?php namespace SellerCenter\SDK\Common\Api\Response\Success;

use JMS\Serializer\Annotation as JMS;
use SellerCenter\SDK\Common\Api\Response\HeadInterface;

/**
* Class Head
*
* @package SellerCenter\SDK\Common\Api\SuccessResponse
* @package SellerCenter\SDK\Common\Api\Response\Success\SuccessResponse
* @author Daniel Costa
* @JMS\XmlRoot("Head")
*/
class Head
class Head implements HeadInterface
{
/**
* @var string
Expand Down Expand Up @@ -131,15 +130,15 @@ public function setTimestamp($timestamp)
}

/**
* @return RequestParameters
* @return array
*/
public function getRequestParameters()
{
return $this->requestParameters;
}

/**
* @param RequestParameters $requestParameters
* @param array $requestParameters
*
* @return Head
*/
Expand Down
@@ -1,8 +1,7 @@
<?php

namespace SellerCenter\SDK\Common\Api;
<?php namespace SellerCenter\SDK\Common\Api\Response\Success;

use JMS\Serializer\Annotation as JMS;
use SellerCenter\SDK\Common\Api\Response\Success;

/**
* Class SuccessResponse
Expand All @@ -14,53 +13,53 @@
class SuccessResponse
{
/**
* @var SuccessResponse\Head
* @var Head
* @JMS\SerializedName("Head")
* @JMS\Type("SellerCenter\SDK\Common\Api\SuccessResponse\Head")
* @JMS\Type("SellerCenter\SDK\Common\Api\Response\Success\Head")
*/
protected $head;

/**
* @var SuccessResponse\Body
* @var Body
* @JMS\SerializedName("Body")
* @JMS\Type("SellerCenter\SDK\Common\Api\SuccessResponse\Body")
* @JMS\Type("SellerCenter\SDK\Common\Api\Response\Success\Body")
*/
protected $body;

/**
* @return SuccessResponse\Head
* @return Head
*/
public function getHead()
{
return $this->head;
}

/**
* @param SuccessResponse\Head $head
* @param Head $head
*
* @return ErrorResponse
* @return SuccessResponse
*/
public function setHead($head)
public function setHead(Head $head)
{
$this->head = $head;

return $this;
}

/**
* @return SuccessResponse\Body
* @return Body
*/
public function getBody()
{
return $this->body;
}

/**
* @param SuccessResponse\Body $body
* @param Body $body
*
* @return ErrorResponse
* @return SuccessResponse
*/
public function setBody($body)
public function setBody(Body $body)
{
$this->body = $body;

Expand Down
7 changes: 2 additions & 5 deletions src/Common/Api/Serializer/RestSerializer.php
@@ -1,6 +1,4 @@
<?php

namespace SellerCenter\SDK\Common\Api\Serializer;
<?php namespace SellerCenter\SDK\Common\Api\Serializer;

use GuzzleHttp\Command\CommandTransaction;
use GuzzleHttp\Message\RequestInterface;
Expand Down Expand Up @@ -92,11 +90,10 @@ private function serialize(RequestInterface $request, $operation, array $args)
private function buildEndpoint($operation, array $args)
{
$endpoint = Url::fromString($this->endpoint);
$uri = (string) $endpoint;
$varspecs = [];

if (isset($operation['http']['requestUri'])) {
$uri = $endpoint->combine($operation['http']['requestUri']);
$endpoint->combine($operation['http']['requestUri']);

// Create an associative array of varspecs used in expansions
if (isset($operation['parameters'])) {
Expand Down
4 changes: 1 addition & 3 deletions src/Common/Api/Serializer/RestXmlSerializer.php
@@ -1,6 +1,4 @@
<?php

namespace SellerCenter\SDK\Common\Api\Serializer;
<?php namespace SellerCenter\SDK\Common\Api\Serializer;

use GuzzleHttp\Message\RequestInterface;
use GuzzleHttp\Stream\Stream;
Expand Down
4 changes: 1 addition & 3 deletions src/Common/Api/Serializer/XmlSerializer.php
@@ -1,6 +1,4 @@
<?php

namespace SellerCenter\SDK\Common\Api\Serializer;
<?php namespace SellerCenter\SDK\Common\Api\Serializer;

use JMS\Serializer\SerializerBuilder;

Expand Down

0 comments on commit 1224360

Please sign in to comment.