mirror of https://github.com/q191201771/lal.git
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
651 B
Go
31 lines
651 B
Go
4 years ago
|
// Copyright 2020, Chef. All rights reserved.
|
||
|
// https://github.com/q191201771/lal
|
||
|
//
|
||
|
// Use of this source code is governed by a MIT-style license
|
||
|
// that can be found in the License file.
|
||
|
//
|
||
|
// Author: Chef (191201771@qq.com)
|
||
|
|
||
|
package datamanager
|
||
|
|
||
|
type DataManger interface {
|
||
|
AddPub(streamName, serverID string)
|
||
|
DelPub(streamName, serverID string)
|
||
|
QueryPub(streamName string) (serverID string, exist bool)
|
||
|
}
|
||
|
|
||
|
type DataManagerType int
|
||
|
|
||
|
const (
|
||
|
DMTMemory DataManagerType = iota
|
||
|
)
|
||
|
|
||
|
func NewDataManager(t DataManagerType) DataManger {
|
||
|
switch t {
|
||
|
case DMTMemory:
|
||
|
return NewDataManagerMemory()
|
||
|
default:
|
||
|
panic("invalid data manager type")
|
||
|
}
|
||
|
}
|