mirror of
https://github.com/duanhf2012/origin.git
synced 2026-02-18 18:34:45 +08:00
优化service安装流程
This commit is contained in:
@@ -68,32 +68,7 @@ func (s *COriginNode) SetupService(services ...service.IService) {
|
|||||||
if cluster.InstanceClusterMgr().HasLocalService(services[i].GetServiceName()) == true {
|
if cluster.InstanceClusterMgr().HasLocalService(services[i].GetServiceName()) == true {
|
||||||
service.InstanceServiceMgr().Setup(services[i])
|
service.InstanceServiceMgr().Setup(services[i])
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//将其他服务通知已经安装
|
|
||||||
for i := 0; i < len(services); i++ {
|
|
||||||
for j := 0; j < len(services); j++ {
|
|
||||||
if cluster.InstanceClusterMgr().HasLocalService(services[i].GetServiceName()) == false {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
if cluster.InstanceClusterMgr().HasLocalService(services[j].GetServiceName()) == false {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
if services[i].GetServiceName() == services[j].GetServiceName() {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
services[i].OnSetupService(services[j])
|
|
||||||
|
|
||||||
}
|
|
||||||
services[i].(service.IModule).SetOwnerService(services[i])
|
|
||||||
services[i].(service.IModule).SetOwner(services[i].(service.IModule))
|
|
||||||
services[i].(service.IModule).SetSelf(services[i].(service.IModule))
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *COriginNode) Start() {
|
func (s *COriginNode) Start() {
|
||||||
|
|||||||
@@ -20,8 +20,22 @@ type CServiceManager struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (slf *CServiceManager) Setup(s IService) bool {
|
func (slf *CServiceManager) Setup(s IService) bool {
|
||||||
|
|
||||||
|
s.(IModule).SetOwnerService(s)
|
||||||
|
s.(IModule).SetOwner(s.(IModule))
|
||||||
|
s.(IModule).SetSelf(s.(IModule))
|
||||||
|
|
||||||
slf.localserviceMap[s.GetServiceName()] = s
|
slf.localserviceMap[s.GetServiceName()] = s
|
||||||
slf.orderLocalService = append(slf.orderLocalService, s.GetServiceName())
|
slf.orderLocalService = append(slf.orderLocalService, s.GetServiceName())
|
||||||
|
|
||||||
|
|
||||||
|
//通知其他服务已经安装
|
||||||
|
for _, is := range slf.localserviceMap {
|
||||||
|
//
|
||||||
|
is.OnSetupService(s)
|
||||||
|
s.OnSetupService(is)
|
||||||
|
}
|
||||||
|
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user