job.go 678 B

123456789101112131415161718192021222324252627282930313233
  1. package server
  2. import (
  3. "context"
  4. "github.com/go-nunu/nunu-layout-advanced/internal/job"
  5. "github.com/go-nunu/nunu-layout-advanced/pkg/log"
  6. )
  7. type JobServer struct {
  8. log *log.Logger
  9. userJob job.UserJob
  10. }
  11. func NewJobServer(
  12. log *log.Logger,
  13. userJob job.UserJob,
  14. ) *JobServer {
  15. return &JobServer{
  16. log: log,
  17. userJob: userJob,
  18. }
  19. }
  20. func (j *JobServer) Start(ctx context.Context) error {
  21. // Tips: If you want job to start as a separate process, just refer to the task implementation and adjust the code accordingly.
  22. // eg: kafka consumer
  23. err := j.userJob.KafkaConsumer(ctx)
  24. return err
  25. }
  26. func (j *JobServer) Stop(ctx context.Context) error {
  27. return nil
  28. }