// Code generated by goctl. DO NOT EDIT.
// goctl 1.10.1
// Source: notification.proto

package server

import (
	"context"

	"juwan-backend/app/notification/rpc/internal/logic"
	"juwan-backend/app/notification/rpc/internal/svc"
	"juwan-backend/app/notification/rpc/pb"
)

type NotificationServiceServer struct {
	svcCtx *svc.ServiceContext
	pb.UnimplementedNotificationServiceServer
}

func NewNotificationServiceServer(svcCtx *svc.ServiceContext) *NotificationServiceServer {
	return &NotificationServiceServer{
		svcCtx: svcCtx,
	}
}

func (s *NotificationServiceServer) AddNotifications(ctx context.Context, in *pb.AddNotificationsReq) (*pb.AddNotificationsResp, error) {
	l := logic.NewAddNotificationsLogic(ctx, s.svcCtx)
	return l.AddNotifications(in)
}

func (s *NotificationServiceServer) UpdateNotifications(ctx context.Context, in *pb.UpdateNotificationsReq) (*pb.UpdateNotificationsResp, error) {
	l := logic.NewUpdateNotificationsLogic(ctx, s.svcCtx)
	return l.UpdateNotifications(in)
}

func (s *NotificationServiceServer) DelNotifications(ctx context.Context, in *pb.DelNotificationsReq) (*pb.DelNotificationsResp, error) {
	l := logic.NewDelNotificationsLogic(ctx, s.svcCtx)
	return l.DelNotifications(in)
}

func (s *NotificationServiceServer) GetNotificationsById(ctx context.Context, in *pb.GetNotificationsByIdReq) (*pb.GetNotificationsByIdResp, error) {
	l := logic.NewGetNotificationsByIdLogic(ctx, s.svcCtx)
	return l.GetNotificationsById(in)
}

func (s *NotificationServiceServer) SearchNotifications(ctx context.Context, in *pb.SearchNotificationsReq) (*pb.SearchNotificationsResp, error) {
	l := logic.NewSearchNotificationsLogic(ctx, s.svcCtx)
	return l.SearchNotifications(in)
}
