nip47_controller.go raw

   1  package controllers
   2  
   3  import (
   4  	"github.com/getAlby/hub/alby"
   5  	"github.com/getAlby/hub/apps"
   6  	"github.com/getAlby/hub/events"
   7  	"github.com/getAlby/hub/lnclient"
   8  	"github.com/getAlby/hub/nip47/permissions"
   9  	"github.com/getAlby/hub/transactions"
  10  	"gorm.io/gorm"
  11  )
  12  
  13  type nip47Controller struct {
  14  	lnClient            lnclient.LNClient
  15  	db                  *gorm.DB
  16  	eventPublisher      events.EventPublisher
  17  	permissionsService  permissions.PermissionsService
  18  	transactionsService transactions.TransactionsService
  19  	appsService         apps.AppsService
  20  	albyOAuthService    alby.AlbyOAuthService
  21  }
  22  
  23  func NewNip47Controller(
  24  	lnClient lnclient.LNClient,
  25  	db *gorm.DB,
  26  	eventPublisher events.EventPublisher,
  27  	permissionsService permissions.PermissionsService,
  28  	transactionsService transactions.TransactionsService,
  29  	appsService apps.AppsService,
  30  	albyOAuthService alby.AlbyOAuthService) *nip47Controller {
  31  	return &nip47Controller{
  32  		lnClient:            lnClient,
  33  		db:                  db,
  34  		eventPublisher:      eventPublisher,
  35  		permissionsService:  permissionsService,
  36  		transactionsService: transactionsService,
  37  		appsService:         appsService,
  38  		albyOAuthService:    albyOAuthService,
  39  	}
  40  }
  41