Skip to content

Instantly share code, notes, and snippets.

@index0h
Created June 30, 2017 11:04
Show Gist options
  • Select an option

  • Save index0h/2777cfae75c861d91b9003f58e75ad92 to your computer and use it in GitHub Desktop.

Select an option

Save index0h/2777cfae75c861d91b9003f58e75ad92 to your computer and use it in GitHub Desktop.

Revisions

  1. index0h created this gist Jun 30, 2017.
    28 changes: 28 additions & 0 deletions service_example.go
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,28 @@
    package main

    type MyService struct {
    dbConnection *sql.DB
    logger log.Logger
    service1 *Service1
    service2 *Service2
    }

    func NewMyService(
    dbConnection *sql.DB,
    logger log.Logger,
    service1 *Service1,
    service2 *Service2,
    ) (*MyService, error) {
    // validation here

    return &MyService{
    dbConnection: dbConnection,
    logger: logger,
    service1: service1,
    service2: service2,
    }, nil
    }

    func (m *MyService) Handler(...) {
    //...
    }