agent call process
This commit is contained in:
snoop 2017-05-16 15:11:32 +09:00
parent d7b4060a28
commit e1c9f5de64
3 changed files with 175 additions and 85 deletions

View File

@ -47,6 +47,15 @@ func callAdd(container *string, conf *config_manager.Config) bool {
}
func callInitConfigOne(container* string, conf *config_manager.Config) bool {
var cl []*config_manager.Config
cl = append(cl , conf)
return callInitConfig(container, cl)
}
func callInitConfig(container *string, cl []*config_manager.Config) bool {

View File

@ -280,6 +280,23 @@ func (c *CrawlerManager)removeSensor(id string) {
}
func (c *CrawlerManager)updateSensor(id string) error {
conf := c.ConfigMgr.GetSensorById(id)
b := callInitConfigOne(&conf.Crawler.Container, conf)
if b == false {
return errors.New("update sensor error")
}
return nil
}
func (c *CrawlerManager)stopContainerAll() {

View File

@ -1,135 +1,199 @@
package crawler_manager
import (
"loafle.com/overflow/agent_api/observer"
//ooo "loafle.com/overflow/agent_api/observer"
//"loafle.com/overflow/agent_api/config_manager"
//"loafle.com/overflow/agent_api/messages"
//
//"fmt"
"loafle.com/overflow/agent_api/config_manager"
"loafle.com/overflow/agent_api/observer/messages"
"fmt"
)
func listenEvent() {
func Start(res chan bool, conMgr config_manager.ConfigManager) {
go listenConfigLoaded();
go listenAgentStop()
go listenAddSensor();
go listenRemoveSensor();
go listenUpdateSensor();
go listenUpdateCrawler()
}
func listenConfigLoaded() {
ch := make(chan interface{}, 0)
observer.Add(messages.CFG_LOADED, ch)
o := <-ch
cm := o.(config_manager.ConfigManager)
GetInstance().ConfigMgr = cm;
GetInstance().ConfigMgr = conMgr;
SettingPath()
err := GetInstance().init();
if err != nil {
//FIXME:: noti err
res <- false
return;
}
observer.Notify(messages.CRM_READY, cm)
res <- true
}
func listenAgentStop() {
ch := make(chan interface{}, 0)
observer.Add(messages.CLT_STOPPED, ch)
o := <-ch
fmt.Println(o)
func Stop(res chan bool) {
GetInstance().stopContainerAll()
observer.Notify(messages.CRM_STOPPED, nil)
res <- true
}
func listenAddSensor() {
ch := make(chan interface{}, 0)
observer.Add(messages.SCF_SENSOR_ADD_DONE, ch);
func AddSensor(id string) error {
o := <-ch
str := o.(string)
fmt.Println(str)
err := GetInstance().addSensor(str)
err := GetInstance().addSensor(id)
if err != nil {
//FIXME:: noti err
return
return err
}
observer.Notify(messages.CRM_SENSOR_ADD_DONE, nil)
return nil
}
func listenRemoveSensor() {
func RemoveSensor(id string) {
ch := make(chan interface{}, 0)
observer.Add(messages.CLT_SENSOR_REMOVE_DONE, ch);
GetInstance().removeSensor(id)
o := <-ch
//FIXME:: error return
str := o.(string)
GetInstance().removeSensor(str)
observer.Notify(messages.CRM_SENSOR_REMOVE_DONE, nil)
}
func listenUpdateSensor() {
func UpdateSensor(id string) error {
ch := make(chan interface{}, 0)
observer.Add(messages.SCF_SENSOR_UPDATE_DONE, ch);
o := <-ch
container := o.(string)
err := GetInstance().runAndInitContainerOne(&container)
err := GetInstance().updateSensor(id)
if err != nil {
//FIXME:: noti err
return
return err
}
observer.Notify(messages.CRM_SENSOR_UPDATE_DONE, nil)
return nil
}
func listenUpdateCrawler() {
func UpdateCRM() {
ch := make(chan interface{}, 0)
observer.Add(messages.CLT_CRM_UPDATE_DONE, ch);
o := <-ch
fmt.Println(o)
//FIXME:: update crawler
observer.Notify(messages.CRM_UPDATE_DONE, nil)
}
func listenEvent() {
//go listenConfigLoaded();
//go listenAgentStop()
//
//go listenAddSensor();
//go listenRemoveSensor();
//go listenUpdateSensor();
//
//go listenUpdateCrawler()
}
//
//func listenConfigLoaded() {
//
// ch := make(chan interface{}, 0)
// observer.Add(messages.CFG_LOADED, ch)
//
// o := <-ch
//
// cm := o.(config_manager.ConfigManager)
//
// GetInstance().ConfigMgr = cm;
//
// SettingPath()
//
// err := GetInstance().init();
// if err != nil {
// //FIXME:: noti err
// return;
// }
//
//
// observer.Notify(messages.CRM_READY, cm)
//
//}
//
//func listenAgentStop() {
//
// ch := make(chan interface{}, 0)
// observer.Add(messages.CLT_STOPPED, ch)
//
// o := <-ch
//
// fmt.Println(o)
//
// GetInstance().stopContainerAll()
//
// observer.Notify(messages.CRM_STOPPED, nil)
//
//
//}
//
//func listenAddSensor() {
// ch := make(chan interface{}, 0)
// observer.Add(messages.SCF_SENSOR_ADD_DONE, ch);
//
// o := <-ch
//
// str := o.(string)
//
// fmt.Println(str)
//
// err := GetInstance().addSensor(str)
//
// if err != nil {
// //FIXME:: noti err
// return
// }
//
// observer.Notify(messages.CRM_SENSOR_ADD_DONE, nil)
//
//}
//
//func listenRemoveSensor() {
//
// ch := make(chan interface{}, 0)
// observer.Add(messages.CLT_SENSOR_REMOVE_DONE, ch);
//
// o := <-ch
//
// str := o.(string)
//
// GetInstance().removeSensor(str)
//
//
// observer.Notify(messages.CRM_SENSOR_REMOVE_DONE, nil)
//
//}
//
//func listenUpdateSensor() {
//
// ch := make(chan interface{}, 0)
// observer.Add(messages.SCF_SENSOR_UPDATE_DONE, ch);
//
// o := <-ch
//
// container := o.(string)
//
// err := GetInstance().runAndInitContainerOne(&container)
//
// if err != nil {
// //FIXME:: noti err
// return
// }
//
// observer.Notify(messages.CRM_SENSOR_UPDATE_DONE, nil)
//
//}
//
//func listenUpdateCrawler() {
//
// ch := make(chan interface{}, 0)
// observer.Add(messages.CLT_CRM_UPDATE_DONE, ch);
//
// o := <-ch
//
// fmt.Println(o)
// //FIXME::update crawler
//
//
// observer.Notify(messages.CRM_UPDATE_DONE, nil)
//
//}
//