enhancementgood first issue
Metriche repository
- Star
- (8108 star)
- Metriche merge PR
- (Metriche PR in attesa)
Descrizione
Was looking at the SessionService database implementation and noticed the database connection is opened by the service. It looks like this prevents me from opening a single database client and passing it to all the services (others still lack implementations)
func NewSessionService(dialector gorm.Dialector, opts ...gorm.Option) (session.Service, error) {
db, err := gorm.Open(dialector, opts...)
if err != nil {
return nil, fmt.Errorf("error creating database session service: %w", err)
}
return &databaseService{db: db}, nil
}
so I changed it to look like this
func NewSessionService(db *gorm.DB) (session.Service, error) {
return &databaseService{db: db}, nil
}
Another benefit to this is that my application can also use the same database connection for any extra tables it needs.
Thoughts on the change and the issue more generally?