Files
services/currency/main.go
2021-06-15 21:05:38 +01:00

49 lines
1.0 KiB
Go

package main
import (
"time"
"github.com/micro/micro/v3/service"
"github.com/micro/micro/v3/service/config"
"github.com/micro/micro/v3/service/logger"
"github.com/micro/services/currency/handler"
pb "github.com/micro/services/currency/proto"
"github.com/patrickmn/go-cache"
)
func main() {
// Create service
srv := service.New(
service.Name("currency"),
service.Version("latest"),
)
v, err := config.Get("exchangerate.api")
if err != nil {
logger.Fatalf("exchangerate.api config not found: %v", err)
}
api := v.String("")
if len(api) == 0 {
logger.Fatal("exchangerate.api config not found")
}
v, err = config.Get("exchangerate.key")
if err != nil {
logger.Fatalf("exchangerate.key config not found: %v", err)
}
key := v.String("")
if len(key) == 0 {
logger.Fatal("exchangerate.key config not found")
}
// Register handler
pb.RegisterCurrencyHandler(srv.Server(), &handler.Currency{
Api: api + key,
Cache: cache.New(5*time.Minute, 10*time.Minute),
})
// Run service
if err := srv.Run(); err != nil {
logger.Fatal(err)
}
}