Files
stemcell/app/code/Stemcell/Catalog/Api/SpeciesRepositoryInterface.php
2026-09-15 10:26:34 +08:00

63 lines
1.7 KiB
PHP

<?php
/**
* Copyright © All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);
namespace Stemcell\Catalog\Api;
use Magento\Framework\Api\SearchCriteriaInterface;
interface SpeciesRepositoryInterface
{
/**
* Save Species
* @param \Stemcell\Catalog\Api\Data\SpeciesInterface $species
* @return \Stemcell\Catalog\Api\Data\SpeciesInterface
* @throws \Magento\Framework\Exception\LocalizedException
*/
public function save(
\Stemcell\Catalog\Api\Data\SpeciesInterface $species
);
/**
* Retrieve Species
* @param string $speciesId
* @return \Stemcell\Catalog\Api\Data\SpeciesInterface
* @throws \Magento\Framework\Exception\LocalizedException
*/
public function get($speciesId);
/**
* Retrieve Species matching the specified criteria.
* @param \Magento\Framework\Api\SearchCriteriaInterface $searchCriteria
* @return \Stemcell\Catalog\Api\Data\SpeciesSearchResultsInterface
* @throws \Magento\Framework\Exception\LocalizedException
*/
public function getList(
\Magento\Framework\Api\SearchCriteriaInterface $searchCriteria
);
/**
* Delete Species
* @param \Stemcell\Catalog\Api\Data\SpeciesInterface $species
* @return bool true on success
* @throws \Magento\Framework\Exception\LocalizedException
*/
public function delete(
\Stemcell\Catalog\Api\Data\SpeciesInterface $species
);
/**
* Delete Species by ID
* @param string $speciesId
* @return bool true on success
* @throws \Magento\Framework\Exception\NoSuchEntityException
* @throws \Magento\Framework\Exception\LocalizedException
*/
public function deleteById($speciesId);
}