status-go/protocol/requests/add_role_to_member.go

35 lines
926 B
Go

package requests
import (
"errors"
"github.com/status-im/status-go/eth-node/types"
"github.com/status-im/status-go/protocol/protobuf"
)
var ErrAddRoleToMemberInvalidCommunityID = errors.New("add-role-to-member: invalid community id")
var ErrAddRoleToMemberInvalidUser = errors.New("add-role-to-member: invalid user id")
var ErrAddRoleToMemberInvalidRole = errors.New("add-role-to-member: invalid role")
type AddRoleToMember struct {
CommunityID types.HexBytes `json:"communityId"`
User types.HexBytes `json:"user"`
Role protobuf.CommunityMember_Roles `json:"role"`
}
func (a *AddRoleToMember) Validate() error {
if len(a.CommunityID) == 0 {
return ErrAddRoleToMemberInvalidCommunityID
}
if len(a.User) == 0 {
return ErrAddRoleToMemberInvalidUser
}
if a.Role == protobuf.CommunityMember_UNKNOWN_ROLE {
return ErrAddRoleToMemberInvalidRole
}
return nil
}