Simpleify ChannelsCreate
This commit is contained in:
parent
c51bfc4603
commit
cec5fd0672
|
@ -203,25 +203,36 @@ func (b *memoryBackend) ChannelsGetList() ([]microsub.Channel, error) {
|
||||||
return channels, nil
|
return channels, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// ChannelsCreate creates a channels
|
func (b *memoryBackend) createChannel(name string) microsub.Channel {
|
||||||
func (b *memoryBackend) ChannelsCreate(name string) (microsub.Channel, error) {
|
uid := fmt.Sprintf("%012d", b.NextUid)
|
||||||
defer b.save()
|
|
||||||
|
|
||||||
conn := pool.Get()
|
|
||||||
defer conn.Close()
|
|
||||||
|
|
||||||
uid := fmt.Sprintf("%04d", b.NextUid)
|
|
||||||
channel := microsub.Channel{
|
channel := microsub.Channel{
|
||||||
UID: uid,
|
UID: uid,
|
||||||
Name: name,
|
Name: name,
|
||||||
}
|
}
|
||||||
|
return channel
|
||||||
|
}
|
||||||
|
|
||||||
|
func (b *memoryBackend) setChannel(channel microsub.Channel) {
|
||||||
b.lock.Lock()
|
b.lock.Lock()
|
||||||
|
defer b.lock.Unlock()
|
||||||
b.Channels[channel.UID] = channel
|
b.Channels[channel.UID] = channel
|
||||||
b.Feeds[channel.UID] = []microsub.Feed{}
|
b.Feeds[channel.UID] = []microsub.Feed{}
|
||||||
b.NextUid++
|
b.NextUid++
|
||||||
b.lock.Unlock()
|
}
|
||||||
|
|
||||||
|
// ChannelsCreate creates a channels
|
||||||
|
func (b *memoryBackend) ChannelsCreate(name string) (microsub.Channel, error) {
|
||||||
|
defer b.save()
|
||||||
|
|
||||||
|
channel := b.createChannel(name)
|
||||||
|
b.setChannel(channel)
|
||||||
|
|
||||||
|
b.setChannel(channel)
|
||||||
|
|
||||||
|
conn := pool.Get()
|
||||||
|
defer conn.Close()
|
||||||
|
|
||||||
|
uid := channel.UID
|
||||||
conn.Do("SADD", "channels", uid)
|
conn.Do("SADD", "channels", uid)
|
||||||
conn.Do("SETNX", "channel_sortorder_"+uid, 99999)
|
conn.Do("SETNX", "channel_sortorder_"+uid, 99999)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user