增加接口管理

This commit is contained in:
白茶清欢 2022-06-30 12:05:17 +08:00
parent bbb96188a1
commit 4f3252f57f

53
rpc.go
View File

@ -84,6 +84,17 @@ func (r *request) GetServiceInfo(serviceFlag string) (*Service, error) {
return serviceInfo, nil return serviceInfo, nil
} }
// RemoveService 删除一个service
//
// Author : go_developer@163.com<白茶清欢>
//
// Date : 11:46 2022/6/30
func (r *request) RemoveService(serviceFlag string) {
r.lock.Lock()
defer r.lock.Unlock()
delete(r.serviceTable, serviceFlag)
}
// AddServiceApi 向一个service中增加Api // AddServiceApi 向一个service中增加Api
// //
// Author : go_developer@163.com<白茶清欢> // Author : go_developer@163.com<白茶清欢>
@ -106,3 +117,45 @@ func (r *request) AddServiceApi(serviceFlag string, apiConfig *Api) error {
serviceInfo.ApiTable[apiConfig.Flag] = apiConfig serviceInfo.ApiTable[apiConfig.Flag] = apiConfig
return nil return nil
} }
// GetServiceApi 获取服务api配置
//
// Author : go_developer@163.com<白茶清欢>
//
// Date : 11:53 2022/6/30
func (r *request) GetServiceApi(serviceFlag string, apiFlag string) (*Service, *Api, error) {
var (
serviceInfo *Service
err error
exist bool
apiInfo *Api
)
if serviceInfo, err = r.GetServiceInfo(serviceFlag); nil != err {
return nil, nil, err
}
r.lock.Lock()
defer r.lock.Unlock()
if apiInfo, exist = serviceInfo.ApiTable[apiFlag]; !exist {
return nil, nil, errors.New(serviceFlag + " : " + apiFlag + " -> api")
}
return serviceInfo, apiInfo, nil
}
// RemoveServiceApi 删除服务下的一个api
//
// Author : go_developer@163.com<白茶清欢>
//
// Date : 12:02 2022/6/30
func (r *request) RemoveServiceApi(serviceFlag string, apiFlag string) {
var (
serviceInfo *Service
err error
)
if serviceInfo, _, err = r.GetServiceApi(serviceFlag, apiFlag); nil != err {
// 不存在无需处理
return
}
r.lock.Lock()
defer r.lock.Unlock()
delete(serviceInfo.ApiTable, apiFlag)
}