github.com/s7techlab/cckit@v0.10.5/examples/token/service/config_erc20/config_erc20.go (about) 1 package config_erc20 2 3 import ( 4 "google.golang.org/protobuf/types/known/emptypb" 5 6 "github.com/s7techlab/cckit/examples/token/service/config" 7 "github.com/s7techlab/cckit/router" 8 ) 9 10 type ERC20Service struct { 11 Token config.TokenGetter 12 } 13 14 func (s *ERC20Service) GetName(ctx router.Context, e *emptypb.Empty) (*NameResponse, error) { 15 token, err := s.Token.GetDefaultToken(ctx, e) 16 if err != nil { 17 return nil, err 18 } 19 20 return &NameResponse{Name: token.GetType().GetName()}, nil 21 } 22 23 func (s *ERC20Service) GetSymbol(ctx router.Context, e *emptypb.Empty) (*SymbolResponse, error) { 24 token, err := s.Token.GetDefaultToken(ctx, e) 25 if err != nil { 26 return nil, err 27 } 28 29 return &SymbolResponse{Symbol: token.GetType().GetSymbol()}, nil 30 } 31 32 func (s *ERC20Service) GetDecimals(ctx router.Context, e *emptypb.Empty) (*DecimalsResponse, error) { 33 token, err := s.Token.GetDefaultToken(ctx, e) 34 if err != nil { 35 return nil, err 36 } 37 38 return &DecimalsResponse{Decimals: token.GetType().GetDecimals()}, nil 39 } 40 41 func (s *ERC20Service) GetTotalSupply(ctx router.Context, e *emptypb.Empty) (*TotalSupplyResponse, error) { 42 token, err := s.Token.GetDefaultToken(ctx, e) 43 if err != nil { 44 return nil, err 45 } 46 47 return &TotalSupplyResponse{TotalSupply: token.GetType().GetTotalSupply()}, nil 48 }