github.com/status-im/status-go@v1.1.0/protocol/requests/add_wallet_connect_session.go (about)

     1  package requests
     2  
     3  import (
     4  	"errors"
     5  )
     6  
     7  var ErrAddWalletConnectSessionInvalidID = errors.New("add-wallet-connect-session: invalid id")
     8  var ErrAddWalletConnectSessionInvalidDAppName = errors.New("add-wallet-connect-session: invalid dapp name")
     9  var ErrAddWalletConnectSessionInvalidDAppURL = errors.New("add-wallet-connect-session: invalid dapp url")
    10  var ErrAddWalletConnectSessionInvalidInfo = errors.New("add-wallet-connect-session: invalid info")
    11  
    12  type AddWalletConnectSession struct {
    13  	PeerID   string `json:"id"`
    14  	DAppName string `json:"dappName"`
    15  	DAppURL  string `json:"dappUrl"`
    16  	Info     string `json:"info"`
    17  }
    18  
    19  func (c *AddWalletConnectSession) Validate() error {
    20  	if len(c.PeerID) == 0 {
    21  		return ErrAddWalletConnectSessionInvalidID
    22  	}
    23  
    24  	if len(c.DAppName) == 0 {
    25  		return ErrAddWalletConnectSessionInvalidDAppName
    26  	}
    27  
    28  	if len(c.DAppURL) == 0 {
    29  		return ErrAddWalletConnectSessionInvalidDAppURL
    30  	}
    31  
    32  	if len(c.Info) == 0 {
    33  		return ErrAddWalletConnectSessionInvalidInfo
    34  	}
    35  
    36  	return nil
    37  }