probe/service/DataClientService.go

63 lines
1.4 KiB
Go
Raw Normal View History

2018-04-17 14:11:13 +00:00
package service
import (
2018-05-03 11:24:07 +00:00
"fmt"
2018-04-17 14:11:13 +00:00
"reflect"
cda "git.loafle.net/commons/di-go/annotation"
cdr "git.loafle.net/commons/di-go/registry"
2018-04-26 08:43:40 +00:00
ocsp "git.loafle.net/overflow/commons-go/service/probe"
2018-05-03 11:24:07 +00:00
"git.loafle.net/overflow/probe/client/data"
2018-04-26 08:43:40 +00:00
// For annotation
_ "git.loafle.net/overflow/commons-go/core/annotation"
2018-04-17 14:11:13 +00:00
)
var DataClientServiceType = reflect.TypeOf((*DataClientService)(nil))
func init() {
cdr.RegisterType(DataClientServiceType)
}
type DataClientService struct {
2018-04-26 08:43:40 +00:00
ocsp.DataClientService
2018-04-18 14:56:13 +00:00
RPCClientService
2018-04-17 14:11:13 +00:00
2018-04-18 14:56:13 +00:00
cda.TypeAnnotation `annotation:"@overflow:RPCService()"`
2018-04-17 14:11:13 +00:00
}
func (s *DataClientService) InitService() error {
2018-04-18 14:56:13 +00:00
if err := s.RPCClientService.InitService(); nil != err {
2018-05-03 11:24:07 +00:00
return fmt.Errorf("DataClientService: InitService failed %v", err)
2018-04-17 14:11:13 +00:00
}
return nil
}
func (s *DataClientService) StartService() error {
2018-04-18 14:56:13 +00:00
if err := s.RPCClientService.StartService(); nil != err {
2018-05-03 11:24:07 +00:00
return fmt.Errorf("DataClientService: StartService failed %v", err)
2018-04-18 14:56:13 +00:00
}
2018-05-03 11:24:07 +00:00
client, err := data.New()
2018-04-18 14:56:13 +00:00
if nil != err {
2018-05-03 11:24:07 +00:00
return fmt.Errorf("ProbeClientService: StartService failed %v", err)
2018-04-18 14:56:13 +00:00
}
s.client = client
2018-04-17 14:11:13 +00:00
if err := s.client.Start(); nil != err {
2018-05-03 11:24:07 +00:00
return fmt.Errorf("DataClientService: StartService failed %v", err)
2018-04-17 14:11:13 +00:00
}
return nil
}
func (s *DataClientService) StopService() {
2018-04-18 14:56:13 +00:00
s.RPCClientService.StopService()
2018-04-17 14:11:13 +00:00
}
func (s *DataClientService) DestroyService() {
2018-04-18 14:56:13 +00:00
s.RPCClientService.DestroyService()
2018-04-17 14:11:13 +00:00
}