Skip to content

PostRepository

Namespace: SlottyMedia.Database.Repository.PostRepo

Repository class for managing posts in the database.

public class PostRepository : SlottyMedia.Database.Repository.DatabaseRepository`1[[SlottyMedia.Database.Daos.PostsDao, SlottyMedia.Database, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]], SlottyMedia.Database.Repository.IDatabaseRepository`1[[SlottyMedia.Database.Daos.PostsDao, SlottyMedia.Database, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]], IPostRepository

Inheritance ObjectDatabaseRepository<PostsDao>PostRepository
Implements IDatabaseRepository<PostsDao>, IPostRepository

Constructors

PostRepository(Client, DaoHelper, DatabaseRepositroyHelper)

Base constructor for the PostRepository.

public PostRepository(Client client, DaoHelper daoHelper, DatabaseRepositroyHelper databaseRepositroyHelper)

Parameters

client Client
The Supabase client instance.

daoHelper DaoHelper
The data access object helper instance.

databaseRepositroyHelper DatabaseRepositroyHelper
The database repository helper instance.

Methods

GetAllElements()

Fetches all posts and orders them by date created in descending order.

public Task<List<PostsDao>> GetAllElements()

Returns

Task<List<PostsDao>>
The posts in a list

GetAllElements(PageRequest)

Fetches all posts and orders them by date created in descending order. Only fetches posts on the specified page of the specified size.

public Task<IPage<PostsDao>> GetAllElements(PageRequest pageRequest)

Parameters

pageRequest PageRequest
The page request

Returns

Task<IPage<PostsDao>>
The page containing the requested posts

GetForumCountByUserId(Guid)

public Task<int> GetForumCountByUserId(Guid userId)

Parameters

userId Guid

Returns

Task<Int32>

CountAllPosts()

public Task<int> CountAllPosts()

Returns

Task<Int32>

GetPostsByUserId(Guid, PageRequest)

public Task<IPage<PostsDao>> GetPostsByUserId(Guid userId, PageRequest pageRequest)

Parameters

userId Guid

pageRequest PageRequest

Returns

Task<IPage<PostsDao>>

GetPostsByUserIdByForumId(Guid, Guid, PageRequest)

public Task<IPage<PostsDao>> GetPostsByUserIdByForumId(Guid userId, Guid forumId, PageRequest pageRequest)

Parameters

userId Guid

forumId Guid

pageRequest PageRequest

Returns

Task<IPage<PostsDao>>

GetPostsByForumId(Guid, PageRequest)

public Task<IPage<PostsDao>> GetPostsByForumId(Guid forumId, PageRequest pageRequest)

Parameters

forumId Guid

pageRequest PageRequest

Returns

Task<IPage<PostsDao>>