1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
<?php
namespace Basho\Riak\Command\Builder;
use Basho\Riak;
use Basho\Riak\Command;
class SetBucketProperties extends Command\Builder implements Command\BuilderInterface
{
use BucketTrait;
protected $properties = [];
public function set($key, $value)
{
$this->properties[$key] = $value;
return $this;
}
public function getProperties()
{
return $this->properties;
}
public function build()
{
$this->validate();
return new Command\Bucket\Store($this);
}
public function validate()
{
$this->required('Bucket');
if (count($this->properties) < 1) {
throw new Exception('At least one element to add or remove needs to be defined.');
}
}
}