Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( ErrCategoryNotFound = errors.New("category not found") ErrInvalidCategoryId = errors.New("invalid category id") )
errors
var ( ErrEventNotFound = errors.New("event not found") ErrInvalidEventId = errors.New("invalid event id") )
errors
var ( ErrEventAttendeeNotFound = errors.New("event_attendee not found") ErrInvalidEventAttendeeId = errors.New("invalid event_attendee id") )
errors
var ( ErrEventCategoryNotFound = errors.New("event_category not found") ErrInvalidEventCategoryId = errors.New("invalid event_category id") )
errors
var ( ErrEventFollowerNotFound = errors.New("event_follower not found") ErrInvalidEventFollowerId = errors.New("invalid event_follower id") )
errors
var ( ErrEventLikeNotFound = errors.New("event_like not found") ErrInvalidEventLikeId = errors.New("invalid event_like id") )
errors
var ( ErrEventTagNotFound = errors.New("event_tag not found") ErrInvalidEventTagId = errors.New("invalid event_tag id") )
errors
var ( ErrReviewNotFound = errors.New("review not found") ErrInvalidReviewId = errors.New("invalid review id") )
errors
var ( ErrTagNotFound = errors.New("tag not found") ErrInvalidTagId = errors.New("invalid tag id") )
errors
var ( ErrUserNotFound = errors.New("user not found") // ErrUserNotFound is returned when a user is not found in the database. ErrInvalidId = errors.New("invalid user id") // ErrUserNotFound is returned when a user id is invalid or malformed. ErrRepoConnErr = errors.New("repository connection lost") )
Functions ¶
This section is empty.
Types ¶
type CategoryRepository ¶
type CategoryRepository interface {
CreateCategory(category *models.CategoryModel) error
GetCategoryByID(id string) (*models.CategoryModel, error)
UpdateCategory(category *models.CategoryModel) error
DeleteCategory(id string) error
}
CategoryRepository represents the interface for category-related database operations.
func NewSQLCategoryRepository ¶
func NewSQLCategoryRepository(database *sql.DB) CategoryRepository
NewSQLCategoryRepository creates and returns a new sql flavoured CategoryRepository instance.
type EventAttendeeRepository ¶
type EventAttendeeRepository interface {
CreateEventAttendee(obj *models.EventAttendeeModel) error
GetEventAttendee(event_id string, attendee_id string) (*models.EventAttendeeModel, error)
GetAttendeesByEventId(event_id string) ([]models.UserModel, error)
GetEventsByAttendeeId(attendee_id string) ([]models.EventModel, error)
DeleteEventAttendee(event_id string, attendee_id string) error
}
EventAttendeeRepository represents the interface for event_attendee-related database operations.
func NewSQLEventAttendeeRepository ¶
func NewSQLEventAttendeeRepository(database *sql.DB) EventAttendeeRepository
type EventCategoryRepository ¶
type EventCategoryRepository interface {
CreateEventCategory(obj *models.EventCategoryModel) error
GetEventCategory(event_id string, category_id string) (*models.EventCategoryModel, error)
GetCategoriesByEventId(event_id string) ([]models.CategoryModel, error)
GetEventsByCategoryId(category_id string) ([]models.EventModel, error)
DeleteEventCategory(event_id string, category_id string) error
}
EventCategoryRepository represents the interface for event_category-related database operations.
func NewSQLEventCategoryRepository ¶
func NewSQLEventCategoryRepository(database *sql.DB) EventCategoryRepository
type EventFollowerRepository ¶
type EventFollowerRepository interface {
CreateEventFollower(obj *models.EventFollowerModel) error
GetEventFollower(event_id string, follower_id string) (*models.EventFollowerModel, error)
GetFollowersByEventId(event_id string) ([]models.UserModel, error)
GetEventsByFollowerId(follower_id string) ([]models.EventModel, error)
DeleteEventFollower(event_id string, follower_id string) error
}
EventFollowerRepository represents the interface for event_follower-related database operations.
func NewSQLEventFollowerRepository ¶
func NewSQLEventFollowerRepository(database *sql.DB) EventFollowerRepository
type EventLikeRepository ¶
type EventLikeRepository interface {
CreateEventLike(obj *models.EventLikeModel) error
GetEventLike(event_id string, user_id string) (*models.EventLikeModel, error)
GetUsersByEventId(event_id string) ([]models.UserModel, error)
GetEventsByUserId(user_id string) ([]models.EventModel, error)
DeleteEventLike(event_id string, user_id string) error
}
EventLikeRepository represents the interface for event_like-related database operations.
func NewSQLEventLikeRepository ¶
func NewSQLEventLikeRepository(database *sql.DB) EventLikeRepository
type EventRepository ¶
type EventRepository interface {
CreateEvent(event *models.EventModel) error
GetEventByID(id string) (*models.EventModel, error)
GetEventsByOrganizerId(org_id string) ([]models.EventModel, error)
UpdateEvent(event *models.EventModel) error
DeleteEvent(id string) error
}
EventRepository represents the interface for event-related database operations.
func NewSQLEventRepository ¶
func NewSQLEventRepository(database *sql.DB) EventRepository
NewSQLEventRepository creates and returns a new sql flavoured EventRepository instance.
type EventTagRepository ¶
type EventTagRepository interface {
CreateEventTag(obj *models.EventTagModel) error
GetEventTag(event_id string, tag_id string) (*models.EventTagModel, error)
GetTagsByEventId(event_id string) ([]models.TagModel, error)
GetEventsByTagId(tag_id string) ([]models.EventModel, error)
DeleteEventTag(event_id string, tag_id string) error
}
EventTagRepository represents the interface for event_tag-related database operations.
func NewSQLEventTagRepository ¶
func NewSQLEventTagRepository(database *sql.DB) EventTagRepository
type ReviewRepository ¶
type ReviewRepository interface {
CreateReview(review *models.ReviewModel) error
GetReviewByID(id string) (*models.ReviewModel, error)
GetReviewsByEventId(event_id string) ([]models.ReviewModel, error)
UpdateReview(review *models.ReviewModel) error
DeleteReview(id string) error
}
ReviewRepository represents the interface for review-related database operations.
func NewSQLReviewRepository ¶
func NewSQLReviewRepository(database *sql.DB) ReviewRepository
NewSQLReviewRepository creates and returns a new sql flavoured ReviewRepository instance.
type TagRepository ¶
type TagRepository interface {
CreateTag(tag *models.TagModel) error
GetTagByID(id string) (*models.TagModel, error)
UpdateTag(tag *models.TagModel) error
DeleteTag(id string) error
}
TagRepository represents the interface for tag-related database operations.
func NewSQLTagRepository ¶
func NewSQLTagRepository(database *sql.DB) TagRepository
NewSQLTagRepository creates and returns a new sql flavoured TagRepository instance.
type UserRepository ¶
type UserRepository interface {
CreateUser(user *models.UserModel) error
GetUserByID(id string) (*models.UserModel, error)
UpdateUser(user *models.UserModel) error
DeleteUser(id string) error
GetUserByEmail(email string) (*models.UserModel, error)
InsertUser(user *models.UserModel) error
}
UserRepository represents the interface for user-related database operations.
func NewSQLUserRepository ¶
func NewSQLUserRepository(database *sql.DB) UserRepository
NewSQLUserRepository creates and returns a new sql flavoured UserRepository instance.