using AnalyticsDAL.DTO.DataSource; using GB5Shared.DTO.Framework.Login; namespace AnalyticsBLL.DataSource { public interface IDataSourceBLL { Task GetDataSource(int dataSourceId, LoginDTO login, CancellationToken ct); Task GetSelectListDataSource(LoginDTO login, CancellationToken ct); Task SaveDataSource(DataSourceDTO dto, LoginDTO login, CancellationToken ct); Task DeleteDataSource(int dataSourceId, LoginDTO login, CancellationToken ct); Task TestConnection(int dataSourceId, LoginDTO login, CancellationToken ct); /// /// Throws if the data source is private to another tenant (TenantId not -1 and not the caller's). /// Mirrors MenuGroupBLL.ValidateMenuGroupVisibility's "shared sentinel vs private owner" check. /// Task ValidateDataSourceVisibility(int dataSourceId, LoginDTO login, CancellationToken ct); } }