mirror of
https://github.com/DesignPatternsPHP/DesignPatternsPHP.git
synced 2025-02-24 17:52:25 +01:00
40 lines
786 B
PHP
40 lines
786 B
PHP
<?php
|
|
|
|
namespace DesignPatterns\Structural\Adapter;
|
|
|
|
/**
|
|
* this is the adapted class. In production code, this could be a class from another package, some vendor code.
|
|
* Notice that it uses another naming scheme and the implementation does something similar but in another way
|
|
*/
|
|
class Kindle implements EBookInterface
|
|
{
|
|
/**
|
|
* @var int
|
|
*/
|
|
private $page = 1;
|
|
|
|
/**
|
|
* @var int
|
|
*/
|
|
private $totalPages = 100;
|
|
|
|
public function pressNext()
|
|
{
|
|
$this->page++;
|
|
}
|
|
|
|
public function unlock()
|
|
{
|
|
}
|
|
|
|
/**
|
|
* returns current page and total number of pages, like [10, 100] is page 10 of 100
|
|
*
|
|
* @return int[]
|
|
*/
|
|
public function getPage(): array
|
|
{
|
|
return [$this->page, $this->totalPages];
|
|
}
|
|
}
|