ing
This commit is contained in:
parent
f5e37136e0
commit
c78d3b60ea
22
commons/annotation/service.go
Normal file
22
commons/annotation/service.go
Normal file
|
@ -0,0 +1,22 @@
|
|||
package annotation
|
||||
|
||||
// @Service()
|
||||
// inherit @Component
|
||||
import (
|
||||
"reflect"
|
||||
|
||||
cda "git.loafle.net/commons_go/di/annotation"
|
||||
cdia "git.loafle.net/commons_go/di/injection/annotation"
|
||||
)
|
||||
|
||||
const (
|
||||
ServiceTag = "@overFlow:Service"
|
||||
)
|
||||
|
||||
func init() {
|
||||
cda.RegisterAnnotation(ServiceTag, reflect.TypeOf((*Service)(nil)))
|
||||
}
|
||||
|
||||
type Service struct {
|
||||
cdia.Component
|
||||
}
|
|
@ -7,3 +7,4 @@ import:
|
|||
- package: git.loafle.net/commons_go/server
|
||||
- package: git.loafle.net/commons_go/rpc
|
||||
- package: gopkg.in/natefinch/npipe.v2
|
||||
- package: git.loafle.net/commons_go/di
|
||||
|
|
|
@ -1,15 +1,24 @@
|
|||
package server
|
||||
|
||||
import (
|
||||
cdr "git.loafle.net/commons_go/di/registry"
|
||||
crr "git.loafle.net/commons_go/rpc/registry"
|
||||
"git.loafle.net/commons_go/server"
|
||||
"git.loafle.net/overflow/overflow_discovery/service"
|
||||
oodca "git.loafle.net/overflow/overflow_discovery/commons/annotation"
|
||||
oods "git.loafle.net/overflow/overflow_discovery/service"
|
||||
oopcs "git.loafle.net/overflow/overflow_probe_container/server"
|
||||
)
|
||||
|
||||
func New(pidPath string) server.Server {
|
||||
oods.InitService()
|
||||
|
||||
rpcRegistry := crr.NewRPCRegistry()
|
||||
service.RegisterRPC(rpcRegistry)
|
||||
|
||||
services := cdr.GetInstancesByAnnotationName(oodca.ServiceTag)
|
||||
|
||||
for _, s := range services {
|
||||
rpcRegistry.RegisterService(s, "")
|
||||
}
|
||||
|
||||
rpcSH := oopcs.NewRPCServletHandler(rpcRegistry)
|
||||
socketHandler := newSocketHandler(rpcSH)
|
||||
|
|
|
@ -1,6 +1,18 @@
|
|||
package service
|
||||
|
||||
import (
|
||||
"reflect"
|
||||
|
||||
cda "git.loafle.net/commons_go/di/annotation"
|
||||
cdr "git.loafle.net/commons_go/di/registry"
|
||||
)
|
||||
|
||||
func init() {
|
||||
cdr.RegisterType(reflect.TypeOf((*ContainerService)(nil)))
|
||||
}
|
||||
|
||||
type ContainerService struct {
|
||||
cda.TypeAnnotation `annotation:"@overFlow:Service()"`
|
||||
}
|
||||
|
||||
func (cs *ContainerService) State() (bool, error) {
|
||||
|
|
|
@ -1,11 +1,20 @@
|
|||
package service
|
||||
|
||||
import (
|
||||
"reflect"
|
||||
|
||||
cda "git.loafle.net/commons_go/di/annotation"
|
||||
cdr "git.loafle.net/commons_go/di/registry"
|
||||
discoveryM "git.loafle.net/overflow/overflow_commons_go/modules/discovery/model"
|
||||
"git.loafle.net/overflow/overflow_discovery/discovery"
|
||||
)
|
||||
|
||||
func init() {
|
||||
cdr.RegisterType(reflect.TypeOf((*DiscoveryService)(nil)))
|
||||
}
|
||||
|
||||
type DiscoveryService struct {
|
||||
cda.TypeAnnotation `annotation:"@overFlow:Service()"`
|
||||
}
|
||||
|
||||
func (ds *DiscoveryService) DiscoverZone(requesterID string, dz *discoveryM.DiscoveryZone) error {
|
||||
|
|
|
@ -1,10 +1,8 @@
|
|||
package service
|
||||
|
||||
import (
|
||||
crr "git.loafle.net/commons_go/rpc/registry"
|
||||
)
|
||||
|
||||
func RegisterRPC(rpcRegistry crr.RPCRegistry) {
|
||||
rpcRegistry.RegisterService(&ContainerService{}, "")
|
||||
rpcRegistry.RegisterService(&DiscoveryService{}, "")
|
||||
func InitService() {
|
||||
}
|
||||
|
||||
func DestroyService() {
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user