From e7ba0b0f587bc9ecb7a221f66c96d54edcbec06d Mon Sep 17 00:00:00 2001 From: John5 Date: Fri, 14 Jun 2019 10:31:59 +0200 Subject: [PATCH 1/4] Made arguments optional Some requests do not allow sortFields so they need to made optional. --- src/BrowseDataRow.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/BrowseDataRow.php b/src/BrowseDataRow.php index 4ae7f1b8..2a13b068 100644 --- a/src/BrowseDataRow.php +++ b/src/BrowseDataRow.php @@ -57,7 +57,7 @@ public function getCode(): string * @param string $code * @return BrowseDataRow */ - public function setCode(string $code): BrowseDataRow + public function setCode(?string $code): BrowseDataRow { $this->code = $code; return $this; @@ -75,7 +75,7 @@ public function getNumber(): int * @param int $number * @return BrowseDataRow */ - public function setNumber(int $number): BrowseDataRow + public function setNumber(?int $number): BrowseDataRow { $this->number = $number; return $this; @@ -93,7 +93,7 @@ public function getLine(): int * @param int $line * @return BrowseDataRow */ - public function setLine(int $line): BrowseDataRow + public function setLine(?int $line): BrowseDataRow { $this->line = $line; return $this; From b6be9d89d386a61cd2a7a4d8895ffcd61f86ef18 Mon Sep 17 00:00:00 2001 From: John5 Date: Fri, 14 Jun 2019 10:42:55 +0200 Subject: [PATCH 2/4] Made sortFields optional --- src/Request/BrowseData.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Request/BrowseData.php b/src/Request/BrowseData.php index 76aed249..cfefa7ca 100644 --- a/src/Request/BrowseData.php +++ b/src/Request/BrowseData.php @@ -39,7 +39,9 @@ public function __construct(string $code, array $columns, array $sortFields = [] parent::__construct(); Assert::allIsInstanceOf($columns, BrowseColumn::class); - Assert::allIsInstanceOf($sortFields, BrowseSortField::class); + if(count($sortFields)) { + Assert::allIsInstanceOf($sortFields, BrowseSortField::class); + } $this->columnsElement = $this->createElement('columns'); $this->columnsElement->setAttribute('code', $code); @@ -48,7 +50,9 @@ public function __construct(string $code, array $columns, array $sortFields = [] $this->columnsElement->appendChild($this->sortElement); $this->addColumns($columns); - $this->addSortFields($sortFields); + if(count($sortFields)) { + $this->addSortFields($sortFields); + } $this->appendChild($this->columnsElement); } From cc9ab203e8e7073f454dfe1702cd652e4cbe073a Mon Sep 17 00:00:00 2001 From: John5 Date: Fri, 14 Jun 2019 10:56:44 +0200 Subject: [PATCH 3/4] Made sortFields optional --- src/ApiConnectors/BrowseDataApiConnector.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/ApiConnectors/BrowseDataApiConnector.php b/src/ApiConnectors/BrowseDataApiConnector.php index 2fa2d9b0..abfac08d 100644 --- a/src/ApiConnectors/BrowseDataApiConnector.php +++ b/src/ApiConnectors/BrowseDataApiConnector.php @@ -69,8 +69,10 @@ public function getBrowseData(string $code, array $columns, array $sortFields = { Assert::minCount($columns, 1); Assert::allIsInstanceOf($columns, BrowseColumn::class); - Assert::allIsInstanceOf($sortFields, BrowseSortField::class); - + if(count($sortFields)) { + Assert::allIsInstanceOf($sortFields, BrowseSortField::class); + } + $requestBrowseData = new BrowseData($code, $columns, $sortFields); $response = $this->sendXmlDocument($requestBrowseData); From c6886701e2d560535b868ca18aa4996cafde61d7 Mon Sep 17 00:00:00 2001 From: John5 Date: Fri, 14 Jun 2019 14:24:42 +0200 Subject: [PATCH 4/4] Updated comments --- src/BrowseDataRow.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/BrowseDataRow.php b/src/BrowseDataRow.php index 2a13b068..b49ae1a8 100644 --- a/src/BrowseDataRow.php +++ b/src/BrowseDataRow.php @@ -54,7 +54,7 @@ public function getCode(): string } /** - * @param string $code + * @param string|null $code * @return BrowseDataRow */ public function setCode(?string $code): BrowseDataRow @@ -72,7 +72,7 @@ public function getNumber(): int } /** - * @param int $number + * @param int|null $number * @return BrowseDataRow */ public function setNumber(?int $number): BrowseDataRow @@ -90,7 +90,7 @@ public function getLine(): int } /** - * @param int $line + * @param int|null $line * @return BrowseDataRow */ public function setLine(?int $line): BrowseDataRow