item_repository_interface
interface item_repository_interface implements repository_interface
Methods
Find an item by ID.
Delete an item and all related metadata.
Get all metadata associated with an item.
Save (insert/update) metadata entries.
Search items by metadata key/value pair.
Find all items of a given TYPE.
Details
at line 57
item_interface
create(item_dto_interface $dto)
Create a new item from a DTO.
Must be atomic: Item + Metadata in a single transaction.
at line 68
item_interface|null
find_by_id(int $id)
Find an item by ID.
at line 80
item_interface
update(item_dto_interface $dto)
Update an existing item from a DTO.
Must be atomic: Item + Metadata in a single transaction.
at line 89
void
delete(int $id)
Delete an item and all related metadata.
at line 100
array
get_metadata(int $itemid)
Get all metadata associated with an item.
at line 111
void
save_metadata(int $itemid, array $metadata)
Save (insert/update) metadata entries.
Keys not provided must remain untouched.
at line 123
array
find_by_metadata(string $key, string $value)
Search items by metadata key/value pair.
at line 135
array
find_by_type(string $type)
Find all items of a given TYPE.
Must use efficient metadata loading to avoid N+1.