using WorkFlow.Domain.Entities; namespace WorkFlow.Application.Contracts.Repositories; /// /// Repository for retrieving entities from the database. /// public interface IProfileObjRepository { /// /// Retrieves the list of associated with a given user ID and profile ID by calling a database function. /// /// The unique identifier of the user whose profile is to be retrieved. /// The unique identifier of the profile whose object is to be retrieved. /// Propagates notification that operations should be canceled. /// /// A task that represents the asynchronous operation. The task result contains the object if found; otherwise, null. /// /// /// Logs an error if no profile is found, or if multiple profiles are returned, indicating potential data issues. /// public Task> ReadAsync(int userId, int profileId, CancellationToken cancel = default); }