调整orgin结点名称与增加全局模块

This commit is contained in:
boyce
2019-02-01 13:50:09 +08:00
parent 9420b685b2
commit 20bfffeb3e
4 changed files with 52 additions and 21 deletions

View File

@@ -10,7 +10,7 @@ import (
"github.com/duanhf2012/origin/cluster"
"github.com/duanhf2012/origin/network"
"github.com/duanhf2012/origin/server"
"github.com/duanhf2012/origin/originnode"
"github.com/duanhf2012/origin/service"
"github.com/duanhf2012/origin/sysservice"
@@ -123,17 +123,23 @@ func (ws *CTest) OnDestory() error {
}
func main() {
server := server.NewServer()
if server == nil {
node := originnode.NewOrginNode()
if node == nil {
return
}
var module CTestModule
module.SetModuleType(1)
originnode.AddModule(&module)
ptest := originnode.GetModuleByType(1)
fmt.Print(ptest)
var receiver CMessageReceiver
wsservice := sysservice.NewWSServerService("/ws", 1314, &receiver, false)
test := NewCTest(0)
httpserver := sysservice.NewHttpServerService(9120)
server.SetupService(test, httpserver, wsservice)
node.SetupService(test, httpserver, wsservice)
server.Init()
server.Start()
node.Init()
node.Start()
}

25
originnode/global.go Normal file
View File

@@ -0,0 +1,25 @@
package originnode
import (
_ "net/http/pprof"
"github.com/duanhf2012/origin/service"
)
type GlobalModule struct {
service.BaseModule
}
var g_module GlobalModule
func AddModule(module service.IModule) bool {
if module.GetModuleType() == 0 {
return false
}
return g_module.AddModule(module)
}
func GetModuleByType(moduleType uint32) service.IModule {
return g_module.GetModuleByType(moduleType)
}

View File

@@ -1,4 +1,4 @@
package server
package originnode
import (
"fmt"
@@ -20,13 +20,13 @@ type CExitCtl struct {
waitGroup *sync.WaitGroup
}
type cserver struct {
type COriginNode struct {
CExitCtl
serviceManager service.IServiceManager
sigs chan os.Signal
}
func (s *cserver) Init() {
func (s *COriginNode) Init() {
service.InitLog()
service.InstanceServiceMgr().Init()
@@ -36,7 +36,7 @@ func (s *cserver) Init() {
signal.Notify(s.sigs, syscall.SIGINT, syscall.SIGTERM)
}
func (s *cserver) SetupService(services ...service.IService) {
func (s *COriginNode) SetupService(services ...service.IService) {
for i := 0; i < len(services); i++ {
if cluster.InstanceClusterMgr().HasLocalService(services[i].GetServiceName()) == true {
service.InstanceServiceMgr().Setup(services[i])
@@ -61,7 +61,7 @@ func (s *cserver) SetupService(services ...service.IService) {
}
func (s *cserver) Start() {
func (s *COriginNode) Start() {
go func() {
log.Println(http.ListenAndServe("localhost:6060", nil))
@@ -77,19 +77,19 @@ func (s *cserver) Start() {
s.Stop()
}
func (s *cserver) Stop() {
func (s *COriginNode) Stop() {
close(s.exit)
s.waitGroup.Wait()
}
func NewServer() *cserver {
func NewOrginNode() *COriginNode {
err := cluster.InstanceClusterMgr().Init()
if err != nil {
fmt.Print(err)
return nil
}
return new(cserver)
return new(COriginNode)
}
func HasCmdParam(param string) bool {

View File

@@ -17,13 +17,13 @@ type MethodInfo struct {
types reflect.Type
}
type IBaseModule interface {
type IModule interface {
SetModuleType(moduleType uint32)
GetModuleType() uint32
OnInit() error
OnRun() error
AddModule(module IBaseModule) bool
GetModuleByType(moduleType uint32) IBaseModule
AddModule(module IModule) bool
GetModuleByType(moduleType uint32) IModule
GetOwnerService() IService
SetOwnerService(iservice IService)
}
@@ -77,7 +77,7 @@ type BaseService struct {
type BaseModule struct {
moduleType uint32
mapModule map[uint32]IBaseModule
mapModule map[uint32]IModule
ownerService IService
}
@@ -185,7 +185,7 @@ func (slf *BaseModule) GetModuleType() uint32 {
//OnInit() error
//OnRun() error
func (slf *BaseModule) AddModule(module IBaseModule) bool {
func (slf *BaseModule) AddModule(module IModule) bool {
if module.GetModuleType() == 0 {
return false
}
@@ -193,7 +193,7 @@ func (slf *BaseModule) AddModule(module IBaseModule) bool {
module.SetOwnerService(slf.ownerService)
if slf.mapModule == nil {
slf.mapModule = make(map[uint32]IBaseModule)
slf.mapModule = make(map[uint32]IModule)
}
_, ok := slf.mapModule[module.GetModuleType()]
@@ -205,7 +205,7 @@ func (slf *BaseModule) AddModule(module IBaseModule) bool {
return true
}
func (slf *BaseModule) GetModuleByType(moduleType uint32) IBaseModule {
func (slf *BaseModule) GetModuleByType(moduleType uint32) IModule {
ret, ok := slf.mapModule[moduleType]
if ok == false {
return nil