Browse Source

Move all paging related interfaces/classes under Datasource/Paging.

ADmad 4 years ago
parent
commit
b6eebf0b6f

+ 8 - 8
src/Controller/Component/PaginatorComponent.php

@@ -18,10 +18,10 @@ namespace Cake\Controller\Component;
 
 use Cake\Controller\Component;
 use Cake\Controller\ComponentRegistry;
-use Cake\Datasource\Exception\PageOutOfBoundsException;
-use Cake\Datasource\Paginator;
+use Cake\Datasource\Paging\Exception\PageOutOfBoundsException;
+use Cake\Datasource\Paging\PaginatedInterface;
+use Cake\Datasource\Paging\Paginator;
 use Cake\Http\Exception\NotFoundException;
-use Cake\Paging\PaginatedInterface;
 use InvalidArgumentException;
 use UnexpectedValueException;
 
@@ -34,7 +34,7 @@ use UnexpectedValueException;
  * You configure pagination when calling paginate(). See that method for more details.
  *
  * @link https://book.cakephp.org/4/en/controllers/components/pagination.html
- * @mixin \Cake\Datasource\Paginator
+ * @mixin \Cake\Datasource\Paging\Paginator
  * @deprecated 4.4.0 Use Cake\Datasource\Paginator directly. Will be removed in 6.0.
  */
 class PaginatorComponent extends Component
@@ -42,7 +42,7 @@ class PaginatorComponent extends Component
     /**
      * Datasource paginator instance.
      *
-     * @var \Cake\Datasource\Paginator
+     * @var \Cake\Datasource\Paging\Paginator
      */
     protected Paginator $_paginator;
 
@@ -173,7 +173,7 @@ class PaginatorComponent extends Component
      *
      * @param \Cake\Datasource\RepositoryInterface|\Cake\Datasource\QueryInterface $object Table or query to paginate.
      * @param array<string, mixed> $settings The settings/configuration used for pagination.
-     * @return \Cake\Paging\PaginatedInterface
+     * @return \Cake\Datasource\Paging\PaginatedInterface
      * @throws \Cake\Http\Exception\NotFoundException
      */
     public function paginate(object $object, array $settings = []): PaginatedInterface
@@ -222,7 +222,7 @@ class PaginatorComponent extends Component
     /**
      * Set paginator instance.
      *
-     * @param \Cake\Datasource\Paginator $paginator Paginator instance.
+     * @param \Cake\Datasource\Paging\Paginator $paginator Paginator instance.
      * @return $this
      */
     public function setPaginator(Paginator $paginator)
@@ -235,7 +235,7 @@ class PaginatorComponent extends Component
     /**
      * Get paginator instance.
      *
-     * @return \Cake\Datasource\Paginator
+     * @return \Cake\Datasource\Paging\Paginator
      */
     public function getPaginator(): Paginator
     {

+ 5 - 5
src/Controller/Controller.php

@@ -18,8 +18,9 @@ namespace Cake\Controller;
 
 use Cake\Controller\Exception\MissingActionException;
 use Cake\Core\App;
-use Cake\Datasource\Exception\PageOutOfBoundsException;
-use Cake\Datasource\Paginator;
+use Cake\Datasource\Paging\Exception\PageOutOfBoundsException;
+use Cake\Datasource\Paging\PaginatedInterface;
+use Cake\Datasource\Paging\Paginator;
 use Cake\Datasource\QueryInterface;
 use Cake\Datasource\RepositoryInterface;
 use Cake\Event\EventDispatcherInterface;
@@ -33,7 +34,6 @@ use Cake\Http\Response;
 use Cake\Http\ServerRequest;
 use Cake\Log\LogTrait;
 use Cake\ORM\Locator\LocatorAwareTrait;
-use Cake\Paging\PaginatedInterface;
 use Cake\Routing\Router;
 use Cake\View\ViewVarsTrait;
 use Closure;
@@ -825,7 +825,7 @@ class Controller implements EventListenerInterface, EventDispatcherInterface
      * @param \Cake\Datasource\RepositoryInterface|\Cake\Datasource\QueryInterface|string|null $object Table to paginate
      * (e.g: Table instance, 'TableName' or a Query object)
      * @param array<string, mixed> $settings The settings/configuration used for pagination. See {@link \Cake\Controller\Controller::$paginate}.
-     * @return \Cake\Paging\PaginatedInterface
+     * @return \Cake\Datasource\Paging\PaginatedInterface
      * @link https://book.cakephp.org/4/en/controllers.html#paginating-a-model
      * @throws \Cake\Http\Exception\NotFoundException When a page out of bounds is requested.
      */
@@ -839,7 +839,7 @@ class Controller implements EventListenerInterface, EventDispatcherInterface
 
         $settings += $this->paginate;
 
-        /** @var class-string<\Cake\Paging\PaginatorInterface> $paginator */
+        /** @var class-string<\Cake\Datasource\Paging\PaginatorInterface> $paginator */
         $paginator = $settings['paginator'] ?? Paginator::class;
         $paginator = new $paginator();
         unset($settings['paginator']);

+ 1 - 1
src/Datasource/Exception/PageOutOfBoundsException.php

@@ -12,7 +12,7 @@ declare(strict_types=1);
  * @since         3.5.0
  * @license       http://www.opensource.org/licenses/mit-license.php MIT License
  */
-namespace Cake\Datasource\Exception;
+namespace Cake\Datasource\Paging\Exception;
 
 use Cake\Core\Exception\CakeException;
 

+ 1 - 1
src/Paging/PaginatedInterface.php

@@ -14,7 +14,7 @@ declare(strict_types=1);
  * @since         5.0.0
  * @license       http://www.opensource.org/licenses/mit-license.php MIT License
  */
-namespace Cake\Paging;
+namespace Cake\Datasource\Paging;
 
 use Countable;
 use Traversable;

+ 2 - 2
src/Datasource/PaginatedResultSet.php

@@ -14,9 +14,9 @@ declare(strict_types=1);
  * @since         5.0.0
  * @license       https://opensource.org/licenses/mit-license.php MIT License
  */
-namespace Cake\Datasource;
+namespace Cake\Datasource\Paging;
 
-use Cake\Paging\PaginatedInterface;
+use Cake\Datasource\ResultSetInterface;
 use IteratorIterator;
 
 /**

+ 6 - 6
src/Datasource/Paginator.php

@@ -14,13 +14,13 @@ declare(strict_types=1);
  * @since         3.5.0
  * @license       http://www.opensource.org/licenses/mit-license.php MIT License
  */
-namespace Cake\Datasource;
+namespace Cake\Datasource\Paging;
 
 use Cake\Core\Exception\CakeException;
 use Cake\Core\InstanceConfigTrait;
-use Cake\Datasource\Exception\PageOutOfBoundsException;
-use Cake\Paging\PaginatedInterface;
-use Cake\Paging\PaginatorInterface;
+use Cake\Datasource\Paging\Exception\PageOutOfBoundsException;
+use Cake\Datasource\QueryInterface;
+use Cake\Datasource\RepositoryInterface;
 
 /**
  * This class is used to handle automatic model data pagination.
@@ -154,8 +154,8 @@ class Paginator implements PaginatorInterface
      *   to paginate.
      * @param array $params Request params
      * @param array $settings The settings/configuration used for pagination.
-     * @return \Cake\Paging\PaginatedInterface
-     * @throws \Cake\Datasource\Exception\PageOutOfBoundsException
+     * @return \Cake\Datasource\Paging\PaginatedInterface
+     * @throws \Cake\Datasource\Paging\Exception\PageOutOfBoundsException
      */
     public function paginate(
         mixed $target,

+ 2 - 2
src/Paging/PaginatorInterface.php

@@ -14,7 +14,7 @@ declare(strict_types=1);
  * @since         5.0.0
  * @license       http://www.opensource.org/licenses/mit-license.php MIT License
  */
-namespace Cake\Paging;
+namespace Cake\Datasource\Paging;
 
 /**
  * This interface describes the methods for paginator instance.
@@ -27,7 +27,7 @@ interface PaginatorInterface
      * @param mixed $target Anything that needs to be paginated.
      * @param array $params Request params.
      * @param array $settings The settings/configuration used for pagination.
-     * @return \Cake\Paging\PaginatedInterface
+     * @return \Cake\Datasource\Paging\PaginatedInterface
      */
     public function paginate(
         mixed $target,

+ 3 - 1
src/Datasource/SimplePaginator.php

@@ -14,7 +14,9 @@ declare(strict_types=1);
  * @since         3.9.0
  * @license       http://www.opensource.org/licenses/mit-license.php MIT License
  */
-namespace Cake\Datasource;
+namespace Cake\Datasource\Paging;
+
+use Cake\Datasource\QueryInterface;
 
 /**
  * Simplified paginator which avoids potentially expensives queries

+ 1 - 1
src/Error/ExceptionRenderer.php

@@ -25,8 +25,8 @@ use Cake\Core\Configure;
 use Cake\Core\Container;
 use Cake\Core\Exception\CakeException;
 use Cake\Core\Exception\MissingPluginException;
-use Cake\Datasource\Exception\PageOutOfBoundsException;
 use Cake\Datasource\Exception\RecordNotFoundException;
+use Cake\Datasource\Paging\Exception\PageOutOfBoundsException;
 use Cake\Event\Event;
 use Cake\Http\Exception\HttpException;
 use Cake\Http\Exception\MissingControllerException;

+ 4 - 4
src/View/Helper/PaginatorHelper.php

@@ -17,7 +17,7 @@ declare(strict_types=1);
 namespace Cake\View\Helper;
 
 use Cake\Core\Exception\CakeException;
-use Cake\Paging\PaginatedInterface;
+use Cake\Datasource\Paging\PaginatedInterface;
 use Cake\Utility\Hash;
 use Cake\Utility\Inflector;
 use Cake\View\Helper;
@@ -93,7 +93,7 @@ class PaginatorHelper extends Helper
     /**
      * Paginated results
      *
-     * @var \Cake\Paging\PaginatedInterface
+     * @var \Cake\Datasource\Paging\PaginatedInterface
      */
     protected PaginatedInterface $paginated;
 
@@ -118,7 +118,7 @@ class PaginatorHelper extends Helper
     /**
      * Set paginated results.
      *
-     * @param \Cake\Paging\PaginatedInterface $paginated Instance to use.
+     * @param \Cake\Datasource\Paging\PaginatedInterface $paginated Instance to use.
      * @param array $options Options array.
      * @return void
      */
@@ -131,7 +131,7 @@ class PaginatorHelper extends Helper
     /**
      * Get pagination instance.
      *
-     * @return \Cake\Paging\PaginatedInterface
+     * @return \Cake\Datasource\Paging\PaginatedInterface
      */
     protected function paginated(): PaginatedInterface
     {

+ 2 - 2
tests/TestCase/Controller/Component/PaginatorComponentTest.php

@@ -21,7 +21,7 @@ use Cake\Controller\ComponentRegistry;
 use Cake\Controller\Controller;
 use Cake\Datasource\ConnectionManager;
 use Cake\Datasource\EntityInterface;
-use Cake\Datasource\Exception\PageOutOfBoundsException;
+use Cake\Datasource\Paging\Exception\PageOutOfBoundsException;
 use Cake\Datasource\RepositoryInterface;
 use Cake\Event\EventInterface;
 use Cake\Http\Exception\NotFoundException;
@@ -115,7 +115,7 @@ class PaginatorComponentTest extends TestCase
     public function testInvalidPaginatorOption(): void
     {
         $this->expectException(InvalidArgumentException::class);
-        $this->expectExceptionMessage('Paginator must be an instance of Cake\Datasource\Paginator');
+        $this->expectExceptionMessage('Paginator must be an instance of Cake\Datasource\Paging\Paginator');
         new PaginatorComponent($this->registry, [
             'paginator' => new stdClass(),
         ]);

+ 1 - 1
tests/TestCase/Controller/ControllerTest.php

@@ -19,12 +19,12 @@ namespace Cake\Test\TestCase\Controller;
 use Cake\Controller\Controller;
 use Cake\Controller\Exception\MissingActionException;
 use Cake\Core\Configure;
+use Cake\Datasource\Paging\PaginatedInterface;
 use Cake\Event\Event;
 use Cake\Event\EventInterface;
 use Cake\Http\Exception\NotFoundException;
 use Cake\Http\Response;
 use Cake\Http\ServerRequest;
-use Cake\Paging\PaginatedInterface;
 use Cake\Routing\Router;
 use Cake\TestSuite\TestCase;
 use Cake\View\View;

+ 2 - 2
tests/TestCase/Datasource/PaginatorTestTrait.php

@@ -19,8 +19,8 @@ namespace Cake\Test\TestCase\Datasource;
 use Cake\Core\Configure;
 use Cake\Datasource\ConnectionManager;
 use Cake\Datasource\EntityInterface;
-use Cake\Datasource\Exception\PageOutOfBoundsException;
-use Cake\Datasource\Paginator;
+use Cake\Datasource\Paging\Exception\PageOutOfBoundsException;
+use Cake\Datasource\Paging\Paginator;
 use Cake\Datasource\RepositoryInterface;
 
 trait PaginatorTestTrait

+ 1 - 1
tests/TestCase/Datasource/SimplePaginatorTest.php

@@ -17,7 +17,7 @@ declare(strict_types=1);
 namespace Cake\Test\TestCase\Datasource;
 
 use Cake\Core\Configure;
-use Cake\Datasource\SimplePaginator;
+use Cake\Datasource\Paging\SimplePaginator;
 use Cake\ORM\Entity;
 
 class SimplePaginatorTest extends PaginatorTest

+ 1 - 1
tests/TestCase/ExceptionsTest.php

@@ -148,7 +148,7 @@ class ExceptionsTest extends TestCase
             ['Cake\Datasource\Exception\MissingDatasourceConfigException', 0],
             ['Cake\Datasource\Exception\MissingDatasourceException', 0],
             ['Cake\Datasource\Exception\MissingModelException', 0],
-            ['Cake\Datasource\Exception\PageOutOfBoundsException', 0],
+            ['Cake\Datasource\Paging\Exception\PageOutOfBoundsException', 0],
             ['Cake\Datasource\Exception\RecordNotFoundException', 0],
             ['Cake\Mailer\Exception\MissingActionException', 0],
             ['Cake\Mailer\Exception\MissingMailerException', 0],

+ 1 - 1
tests/TestCase/View/Helper/PaginatorHelperTest.php

@@ -17,7 +17,7 @@ declare(strict_types=1);
 namespace Cake\Test\TestCase\View\Helper;
 
 use Cake\Core\Configure;
-use Cake\Datasource\PaginatedResultSet;
+use Cake\Datasource\Paging\PaginatedResultSet;
 use Cake\Http\ServerRequest;
 use Cake\I18n\I18n;
 use Cake\ORM\ResultSet;

+ 1 - 1
tests/test_app/TestApp/Datasource/CustomPaginator.php

@@ -3,7 +3,7 @@ declare(strict_types=1);
 
 namespace TestApp\Datasource;
 
-use Cake\Datasource\Paginator;
+use Cake\Datasource\Paging\Paginator;
 
 class CustomPaginator extends Paginator
 {