Documentation
¶
Overview ¶
Package relaygroup provides relay group configuration management
Index ¶
- type Config
- type Manager
- func (rgm *Manager) FindAuthoritativeConfig(ctx context.Context) (*Config, error)
- func (rgm *Manager) FindAuthoritativeRelays(ctx context.Context) ([]string, error)
- func (rgm *Manager) GetAuthorizedPubkeys() [][]byte
- func (rgm *Manager) HandleRelayGroupEvent(ev *event.E, peerUpdater PeerUpdater)
- func (rgm *Manager) IsAuthorizedPublisher(pubkey []byte) bool
- func (rgm *Manager) ValidateRelayGroupEvent(ev *event.E) error
- type ManagerConfig
- type PeerUpdater
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
Relays []string `json:"relays"`
}
Config represents a relay group configuration
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
Manager handles relay group configuration
func NewManager ¶
func NewManager(db *database.D, cfg *ManagerConfig) *Manager
NewManager creates a new relay group manager
func (*Manager) FindAuthoritativeConfig ¶
FindAuthoritativeConfig finds the authoritative relay group configuration by selecting the latest event by timestamp, with hash tie-breaking
func (*Manager) FindAuthoritativeRelays ¶
FindAuthoritativeRelays returns just the relay URLs from the authoritative config
func (*Manager) GetAuthorizedPubkeys ¶
GetAuthorizedPubkeys returns all authorized pubkeys
func (*Manager) HandleRelayGroupEvent ¶
func (rgm *Manager) HandleRelayGroupEvent(ev *event.E, peerUpdater PeerUpdater)
HandleRelayGroupEvent processes a relay group configuration event and updates peer lists
func (*Manager) IsAuthorizedPublisher ¶
IsAuthorizedPublisher checks if a pubkey is authorized to publish relay group configs
Source Files
¶
- manager.go
Directories
¶
| Path | Synopsis |
|---|---|
|
Package grpc provides a gRPC client for the relay group service.
|
Package grpc provides a gRPC client for the relay group service. |
|
Package server provides the gRPC server implementation for relay group.
|
Package server provides the gRPC server implementation for relay group. |