1: <?php
2:
3: namespace LeadCommerce\Shopware\SDK\Entity;
4:
5: /**
6: * Class Base
7: *
8: * @author Alexander Mahrt <amahrt@leadcommerce.de>
9: * @copyright 2016 LeadCommerce <amahrt@leadcommerce.de>
10: */
11: class Base
12: {
13: /**
14: * @var int
15: */
16: protected $id;
17:
18: /**
19: * Sets the attributes of this entity.
20: *
21: * @param array $attributes
22: *
23: * @return $this
24: */
25: public function setEntityAttributes(array $attributes)
26: {
27: foreach ($attributes as $attribute => $value) {
28: $setter = 'set' . ucfirst($attribute);
29: if (method_exists($this, $setter)) {
30: $this->$setter($value);
31: }
32: }
33:
34: return $this;
35: }
36:
37: /**
38: * Gets the attributes of this entity.
39: *
40: * @return array
41: */
42: public function getArrayCopy()
43: {
44: return get_object_vars($this);
45: }
46:
47: /**
48: * @return int
49: */
50: public function getId()
51: {
52: return $this->id;
53: }
54:
55: /**
56: * @param int $id
57: *
58: * @return Base
59: */
60: public function setId($id)
61: {
62: $this->id = $id;
63:
64: return $this;
65: }
66: }
67: