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  }