mirror of
https://github.com/status-im/status-go.git
synced 2025-02-12 06:47:47 +00:00
- some minor progress to add nwaku in status-go - nwaku.go: GetNumConnectedPeers controls when passed pubsub is empty - waku_test.go: adapt TestWakuV2Store - add missing shard.go - feat_: build nwaku with nix and use build tags to choose between go-waku and nwaku (#5896) - chore_: update nwaku - nwaku bump (#5911) - bump: nwaku - chore: add USE_NWAKU env flag - fix: build libwaku only if needed - feat: testing discovery and dialing with nwaku integration (#5940)
31 lines
733 B
Go
31 lines
733 B
Go
package requests
|
|
|
|
import (
|
|
"errors"
|
|
|
|
"github.com/status-im/status-go/eth-node/types"
|
|
"github.com/status-im/status-go/wakuv2"
|
|
)
|
|
|
|
type SetCommunityShard struct {
|
|
CommunityID types.HexBytes `json:"communityId"`
|
|
Shard *wakuv2.Shard `json:"shard,omitempty"`
|
|
PrivateKey *types.HexBytes `json:"privateKey,omitempty"`
|
|
}
|
|
|
|
func (s *SetCommunityShard) Validate() error {
|
|
if s == nil {
|
|
return errors.New("invalid request")
|
|
}
|
|
if s.Shard != nil {
|
|
// TODO: for now only MainStatusShard(16) is accepted
|
|
if s.Shard.Cluster != wakuv2.MainStatusShardCluster {
|
|
return errors.New("invalid shard cluster")
|
|
}
|
|
if s.Shard.Index > 1023 {
|
|
return errors.New("invalid shard index. Only 0-1023 is allowed")
|
|
}
|
|
}
|
|
return nil
|
|
}
|