| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- package main
- import (
- "fmt"
- logging "github.com/ipfs/go-log/v2"
- "github.com/urfave/cli/v2"
- "google.golang.org/grpc"
- "net"
- "os"
- "wallet-server/conf"
- "wallet-server/dao"
- "wallet-server/service"
- )
- var log = logging.Logger("main")
- func main() {
- _ = logging.SetLogLevel("*", "INFO")
- app := cli.App{
- Name: "wallet-server",
- Usage: "eth and tron wallet service",
- Commands: []*cli.Command{
- runCmd,
- },
- EnableBashCompletion: true,
- }
- if err := app.Run(os.Args); err != nil {
- fmt.Fprintf(os.Stderr, "ERROR: %s\n\n", err)
- os.Exit(1)
- }
- }
- var runCmd = &cli.Command{
- Name: "run",
- Usage: "run wallet server process",
- Flags: []cli.Flag{
- &cli.StringFlag{
- Name: "listen",
- Usage: "The host address and port on which the key manager will listen",
- Value: "127.0.0.1:6667",
- },
- &cli.StringFlag{
- Name: "config",
- Usage: "config file path",
- },
- },
- Action: func(cctx *cli.Context) error {
- err := conf.InitConfig(cctx.String("config"))
- if err != nil {
- return err
- }
- db, err := dao.InitMysqlDB()
- if err != nil {
- return err
- }
- listen := cctx.String("listen")
- listener, err := net.Listen("tcp", listen)
- if err != nil {
- return err
- }
- log.Infof("grpc server Listing on: %s", listen)
- grpcServer := grpc.NewServer()
- server, err := service.NewWalletServer(db)
- if err != nil {
- return err
- }
- service.RegisterWalletServerServer(grpcServer, server)
- if err = grpcServer.Serve(listener); err != nil {
- log.Error(err)
- return err
- }
- return nil
- },
- }
|