Files
DesignPatternsPHP/Behavioral/State/CreateOrder.php
Dominik Liebler ea8c91ac68 PHP7 State
2016-09-22 11:45:38 +02:00

36 lines
654 B
PHP

<?php
namespace DesignPatterns\Behavioral\State;
class CreateOrder implements Order
{
/**
* @var array
*/
private $details;
/**
* @param array $details
*/
public function __construct(array $details)
{
$this->details = $details;
}
public function shipOrder()
{
$this->details['status'] = 'shipping';
$this->details['updatedTime'] = time();
}
public function completeOrder()
{
throw new \Exception('Can not complete the order which status is created');
}
public function getStatus(): string
{
return $this->details['status'];
}
}