mirror of
https://github.com/ergochat/ergo.git
synced 2025-12-20 02:00:11 -08:00
remove unnecessary bits
This commit is contained in:
parent
6d94aa1591
commit
c46fe12b3c
3 changed files with 24 additions and 35 deletions
|
|
@ -798,10 +798,12 @@ func (channel *Channel) Settings() (result ChannelSettings) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (channel *Channel) SetSettings(settings ChannelSettings) {
|
func (channel *Channel) SetSettings(settings ChannelSettings) {
|
||||||
|
defer channel.MarkDirty(IncludeSettings)
|
||||||
|
|
||||||
channel.stateMutex.Lock()
|
channel.stateMutex.Lock()
|
||||||
|
defer channel.stateMutex.Unlock()
|
||||||
|
|
||||||
channel.settings = settings
|
channel.settings = settings
|
||||||
channel.stateMutex.Unlock()
|
|
||||||
channel.MarkDirty(IncludeSettings)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (channel *Channel) setForward(forward string) {
|
func (channel *Channel) setForward(forward string) {
|
||||||
|
|
@ -833,10 +835,6 @@ func (session *Session) isSubscribedTo(key string) bool {
|
||||||
session.client.stateMutex.RLock()
|
session.client.stateMutex.RLock()
|
||||||
defer session.client.stateMutex.RUnlock()
|
defer session.client.stateMutex.RUnlock()
|
||||||
|
|
||||||
if session.metadataSubscriptions == nil {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
return session.metadataSubscriptions.Has(key)
|
return session.metadataSubscriptions.Has(key)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -871,10 +869,6 @@ func (session *Session) UnsubscribeFrom(keys ...string) []string {
|
||||||
|
|
||||||
var removed []string
|
var removed []string
|
||||||
|
|
||||||
if session.metadataSubscriptions == nil {
|
|
||||||
return []string{}
|
|
||||||
}
|
|
||||||
|
|
||||||
for k := range session.metadataSubscriptions {
|
for k := range session.metadataSubscriptions {
|
||||||
if slices.Contains(keys, k) {
|
if slices.Contains(keys, k) {
|
||||||
removed = append(removed, k)
|
removed = append(removed, k)
|
||||||
|
|
@ -892,27 +886,28 @@ func (session *Session) MetadataSubscriptions() utils.HashSet[string] {
|
||||||
return maps.Clone(session.metadataSubscriptions)
|
return maps.Clone(session.metadataSubscriptions)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (channel *Channel) GetMetadata(key string) (string, error) {
|
func (channel *Channel) GetMetadata(key string) (string, bool) {
|
||||||
channel.stateMutex.RLock()
|
channel.stateMutex.RLock()
|
||||||
defer channel.stateMutex.RUnlock()
|
defer channel.stateMutex.RUnlock()
|
||||||
|
|
||||||
val, ok := channel.metadata[key]
|
val, ok := channel.metadata[key]
|
||||||
if !ok {
|
if !ok {
|
||||||
return "", errMetadataNotFound
|
return "", false
|
||||||
}
|
}
|
||||||
return val, nil
|
return val, true
|
||||||
}
|
}
|
||||||
|
|
||||||
func (channel *Channel) SetMetadata(key string, value string) {
|
func (channel *Channel) SetMetadata(key string, value string) {
|
||||||
|
defer channel.MarkDirty(IncludeAllAttrs)
|
||||||
|
|
||||||
channel.stateMutex.Lock()
|
channel.stateMutex.Lock()
|
||||||
|
defer channel.stateMutex.Unlock()
|
||||||
|
|
||||||
if channel.metadata == nil {
|
if channel.metadata == nil {
|
||||||
channel.metadata = make(map[string]string)
|
channel.metadata = make(map[string]string)
|
||||||
}
|
}
|
||||||
|
|
||||||
channel.metadata[key] = value
|
channel.metadata[key] = value
|
||||||
channel.stateMutex.Unlock()
|
|
||||||
channel.MarkDirty(IncludeAllAttrs)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (channel *Channel) ListMetadata() map[string]string {
|
func (channel *Channel) ListMetadata() map[string]string {
|
||||||
|
|
@ -923,21 +918,22 @@ func (channel *Channel) ListMetadata() map[string]string {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (channel *Channel) DeleteMetadata(key string) {
|
func (channel *Channel) DeleteMetadata(key string) {
|
||||||
channel.stateMutex.Lock()
|
defer channel.MarkDirty(IncludeAllAttrs)
|
||||||
delete(channel.metadata, key)
|
|
||||||
|
|
||||||
channel.stateMutex.Unlock()
|
channel.stateMutex.Lock()
|
||||||
channel.MarkDirty(IncludeAllAttrs)
|
defer channel.stateMutex.Unlock()
|
||||||
|
|
||||||
|
delete(channel.metadata, key)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (channel *Channel) ClearMetadata() map[string]string {
|
func (channel *Channel) ClearMetadata() map[string]string {
|
||||||
|
defer channel.MarkDirty(IncludeAllAttrs)
|
||||||
channel.stateMutex.Lock()
|
channel.stateMutex.Lock()
|
||||||
|
defer channel.stateMutex.Unlock()
|
||||||
|
|
||||||
oldMap := channel.metadata
|
oldMap := channel.metadata
|
||||||
channel.metadata = make(map[string]string)
|
channel.metadata = nil
|
||||||
|
|
||||||
channel.stateMutex.Unlock()
|
|
||||||
channel.MarkDirty(IncludeAllAttrs)
|
|
||||||
return oldMap
|
return oldMap
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -945,22 +941,15 @@ func (channel *Channel) CountMetadata() int {
|
||||||
channel.stateMutex.RLock()
|
channel.stateMutex.RLock()
|
||||||
defer channel.stateMutex.RUnlock()
|
defer channel.stateMutex.RUnlock()
|
||||||
|
|
||||||
if channel.metadata == nil {
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
return len(channel.metadata)
|
return len(channel.metadata)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (client *Client) GetMetadata(key string) (string, error) {
|
func (client *Client) GetMetadata(key string) (string, bool) {
|
||||||
client.stateMutex.RLock()
|
client.stateMutex.RLock()
|
||||||
defer client.stateMutex.RUnlock()
|
defer client.stateMutex.RUnlock()
|
||||||
|
|
||||||
val, ok := client.metadata[key]
|
val, ok := client.metadata[key]
|
||||||
if !ok {
|
return val, ok
|
||||||
return "", errMetadataNotFound
|
|
||||||
}
|
|
||||||
return val, nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (client *Client) SetMetadata(key string, value string) {
|
func (client *Client) SetMetadata(key string, value string) {
|
||||||
|
|
@ -993,7 +982,7 @@ func (client *Client) ClearMetadata() map[string]string {
|
||||||
defer client.stateMutex.Unlock()
|
defer client.stateMutex.Unlock()
|
||||||
|
|
||||||
oldMap := client.metadata
|
oldMap := client.metadata
|
||||||
client.metadata = make(map[string]string)
|
client.metadata = nil
|
||||||
|
|
||||||
return oldMap
|
return oldMap
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3201,8 +3201,8 @@ func metadataHandler(server *Server, client *Client, msg ircmsg.Message, rb *Res
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
val, err := t.GetMetadata(key)
|
val, ok := t.GetMetadata(key)
|
||||||
if err == errMetadataNotFound {
|
if !ok {
|
||||||
rb.Add(nil, server.name, RPL_KEYNOTSET, client.Nick(), target, key, client.t("Key is not set"))
|
rb.Add(nil, server.name, RPL_KEYNOTSET, client.Nick(), target, key, client.t("Key is not set"))
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ var (
|
||||||
|
|
||||||
type MetadataHaver = interface {
|
type MetadataHaver = interface {
|
||||||
SetMetadata(key string, value string)
|
SetMetadata(key string, value string)
|
||||||
GetMetadata(key string) (string, error)
|
GetMetadata(key string) (string, bool)
|
||||||
DeleteMetadata(key string)
|
DeleteMetadata(key string)
|
||||||
ListMetadata() map[string]string
|
ListMetadata() map[string]string
|
||||||
ClearMetadata() map[string]string
|
ClearMetadata() map[string]string
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue