. */ namespace SP\Mgmt; use SP\DataModel\DataModelInterface; /** * Interface ItemBaseInterface * * @package SP\Mgmt */ interface ItemBaseInterface { /** * Devolver la instancia almacenada de la clase. Si no existe, se crea * * @param $itemData * @return static */ public static function getItem($itemData = null); /** * Devolver una nueva instancia de la clase * * @param null $itemData * @return static */ public static function getNewItem($itemData = null); /** * Devolver los datos del elemento * * @return mixed|DataModelInterface */ public function getItemData(); /** * Establecer los datos del elemento * * @param mixed|DataModelInterface $itemData * @return static */ public function setItemData($itemData); /** * Obtener el nombre de la clase para el modelo de datos * * @return string */ public function getDataModel(); }