<?php

namespace Nextend\SmartSlider3\SlideBuilder;

abstract class AbstractBuilderComponent {

    protected $defaultData = array();

    protected $data = array();


    public function set($keyOrData, $value = null) {

        if (is_array($keyOrData)) {
            foreach ($keyOrData AS $key => $value) {
                $this->setSingle($key, $value);
            }
        } else {
            $this->setSingle($keyOrData, $value);
        }

        return $this;
    }

    private function setSingle($key, $value) {
        $this->data[$key] = $value;
    }

    public function getData() {
        return array_merge($this->defaultData, $this->data);
    }

    /**
     * @param AbstractBuilderComponent $component
     */
    public function add($component) {
    }
}