|
|
|
@ -86,10 +86,12 @@ abstract class QBMapper { |
|
|
|
|
|
|
|
/** |
|
|
|
* Deletes an entity from the table |
|
|
|
* |
|
|
|
* @param Entity $entity the entity that should be deleted |
|
|
|
* @psalm-param T $entity the entity that should be deleted |
|
|
|
* @return Entity the deleted entity |
|
|
|
* @psalm-return T the deleted entity |
|
|
|
* @throws Exception |
|
|
|
* @since 14.0.0 |
|
|
|
*/ |
|
|
|
public function delete(Entity $entity): Entity { |
|
|
|
@ -108,10 +110,12 @@ abstract class QBMapper { |
|
|
|
|
|
|
|
/** |
|
|
|
* Creates a new entry in the db from an entity |
|
|
|
* |
|
|
|
* @param Entity $entity the entity that should be created |
|
|
|
* @psalm-param T $entity the entity that should be created |
|
|
|
* @return Entity the saved entity with the set id |
|
|
|
* @psalm-return T the saved entity with the set id |
|
|
|
* @throws Exception |
|
|
|
* @since 14.0.0 |
|
|
|
*/ |
|
|
|
public function insert(Entity $entity): Entity { |
|
|
|
@ -151,6 +155,7 @@ abstract class QBMapper { |
|
|
|
* @psalm-param T $entity the entity that should be created/updated |
|
|
|
* @return Entity the saved entity with the (new) id |
|
|
|
* @psalm-return T the saved entity with the (new) id |
|
|
|
* @throws Exception |
|
|
|
* @throws \InvalidArgumentException if entity has no id |
|
|
|
* @since 15.0.0 |
|
|
|
*/ |
|
|
|
@ -167,11 +172,13 @@ abstract class QBMapper { |
|
|
|
|
|
|
|
/** |
|
|
|
* Updates an entry in the db from an entity |
|
|
|
* @throws \InvalidArgumentException if entity has no id |
|
|
|
* |
|
|
|
* @param Entity $entity the entity that should be created |
|
|
|
* @psalm-param T $entity the entity that should be created |
|
|
|
* @return Entity the saved entity with the set id |
|
|
|
* @psalm-return T the saved entity with the set id |
|
|
|
* @throws Exception |
|
|
|
* @throws \InvalidArgumentException if entity has no id |
|
|
|
* @since 14.0.0 |
|
|
|
*/ |
|
|
|
public function update(Entity $entity): Entity { |
|
|
|
@ -255,12 +262,13 @@ abstract class QBMapper { |
|
|
|
* Returns an db result and throws exceptions when there are more or less |
|
|
|
* results |
|
|
|
* |
|
|
|
* @see findEntity |
|
|
|
* |
|
|
|
* @param IQueryBuilder $query |
|
|
|
* @throws DoesNotExistException if the item does not exist |
|
|
|
* @throws MultipleObjectsReturnedException if more than one item exist |
|
|
|
* @return array the result as row |
|
|
|
* @throws Exception |
|
|
|
* @throws MultipleObjectsReturnedException if more than one item exist |
|
|
|
* @throws DoesNotExistException if the item does not exist |
|
|
|
* @see findEntity |
|
|
|
* |
|
|
|
* @since 14.0.0 |
|
|
|
*/ |
|
|
|
protected function findOneQuery(IQueryBuilder $query): array { |
|
|
|
@ -319,6 +327,7 @@ abstract class QBMapper { |
|
|
|
* @param IQueryBuilder $query |
|
|
|
* @return Entity[] all fetched entities |
|
|
|
* @psalm-return T[] all fetched entities |
|
|
|
* @throws Exception |
|
|
|
* @since 14.0.0 |
|
|
|
*/ |
|
|
|
protected function findEntities(IQueryBuilder $query): array { |
|
|
|
@ -341,10 +350,11 @@ abstract class QBMapper { |
|
|
|
* results |
|
|
|
* |
|
|
|
* @param IQueryBuilder $query |
|
|
|
* @throws DoesNotExistException if the item does not exist |
|
|
|
* @throws MultipleObjectsReturnedException if more than one item exist |
|
|
|
* @return Entity the entity |
|
|
|
* @psalm-return T the entity |
|
|
|
* @throws Exception |
|
|
|
* @throws MultipleObjectsReturnedException if more than one item exist |
|
|
|
* @throws DoesNotExistException if the item does not exist |
|
|
|
* @since 14.0.0 |
|
|
|
*/ |
|
|
|
protected function findEntity(IQueryBuilder $query): Entity { |
|
|
|
|