Loading go-apps/meep-gis-engine/main.go +9 −2 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ func main() { // Initialize GIS Engine err := server.Init() if err != nil { log.Error("Failed to initialize Monitoring Engine") log.Error("Failed to initialize GIS Engine") run = false return } Loading @@ -60,7 +60,7 @@ func main() { // Start GIS Engine Event Handler thread err = server.Run() if err != nil { log.Error("Failed to start Monitoring Engine") log.Error("Failed to start GIS Engine") run = false return } Loading @@ -82,4 +82,11 @@ func main() { time.Sleep(time.Second) count++ } // Uninitialize GIS Engine err := server.Uninit() if err != nil { log.Error("Failed to uninitialize GIS Engine") return } } go-apps/meep-gis-engine/server/gis-engine.go +31 −0 Original line number Diff line number Diff line Loading @@ -189,6 +189,37 @@ func Init() (err error) { return nil } // Uninit - GIS Engine initialization func Uninit() (err error) { if ge == nil { err = errors.New("GIS Engine not initialized") log.Error(err.Error()) return err } // Deregister Message Queue handler if ge.mqLocal != nil { ge.mqLocal.UnregisterHandler(ge.handlerId) } // Delete GIS Asset Manager if ge.assetMgr != nil { err = ge.assetMgr.DeleteAssetMgr() if err != nil { log.Error(err.Error()) return err } } // Flush GIS Cache if ge.gisCache != nil { ge.gisCache.Flush() } return nil } // Run - GIS Engine thread func Run() (err error) { Loading go-packages/meep-gis-asset-mgr/asset-mgr.go +36 −2 Original line number Diff line number Diff line Loading @@ -139,6 +139,10 @@ type Compute struct { type AssetMgr struct { name string namespace string user string pwd string host string port string dbName string db *sql.DB connected bool Loading @@ -160,10 +164,14 @@ func NewAssetMgr(name, namespace, user, pwd, host, port string) (am *AssetMgr, e } else { am.namespace = "default" } am.user = user am.pwd = pwd am.host = host am.port = port // Connect to Postgis DB for retry := 0; retry <= DbMaxRetryCount; retry++ { am.db, err = am.connectDB("", user, pwd, host, port) am.db, err = am.connectDB("", am.user, am.pwd, am.host, am.port) if err == nil { break } Loading @@ -183,7 +191,7 @@ func NewAssetMgr(name, namespace, user, pwd, host, port string) (am *AssetMgr, e _ = am.CreateDb(am.dbName) // Close connection to postgis DB am.db.Close() _ = am.db.Close() // Connect with sandbox-specific DB am.db, err = am.connectDB(am.dbName, user, pwd, host, port) Loading Loading @@ -241,6 +249,32 @@ func (am *AssetMgr) notifyListener(cbType string, assetName string) { } } // DeleteAssetMgr - func (am *AssetMgr) DeleteAssetMgr() (err error) { if am.db == nil { err = errors.New("Asset Manager database not initialized") log.Error(err.Error()) return err } // Close connection to sandbox-specific DB _ = am.db.Close() // Connect to Postgis DB am.db, err = am.connectDB("", am.user, am.pwd, am.host, am.port) if err != nil { log.Error("Failed to connect to postgis DB with err: ", err.Error()) return err } defer am.db.Close() // Destroy sandbox database _ = am.DestroyDb(am.dbName) return nil } // CreateDb -- Create new DB with provided name func (am *AssetMgr) CreateDb(name string) (err error) { _, err = am.db.Exec("CREATE DATABASE " + name) Loading Loading
go-apps/meep-gis-engine/main.go +9 −2 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ func main() { // Initialize GIS Engine err := server.Init() if err != nil { log.Error("Failed to initialize Monitoring Engine") log.Error("Failed to initialize GIS Engine") run = false return } Loading @@ -60,7 +60,7 @@ func main() { // Start GIS Engine Event Handler thread err = server.Run() if err != nil { log.Error("Failed to start Monitoring Engine") log.Error("Failed to start GIS Engine") run = false return } Loading @@ -82,4 +82,11 @@ func main() { time.Sleep(time.Second) count++ } // Uninitialize GIS Engine err := server.Uninit() if err != nil { log.Error("Failed to uninitialize GIS Engine") return } }
go-apps/meep-gis-engine/server/gis-engine.go +31 −0 Original line number Diff line number Diff line Loading @@ -189,6 +189,37 @@ func Init() (err error) { return nil } // Uninit - GIS Engine initialization func Uninit() (err error) { if ge == nil { err = errors.New("GIS Engine not initialized") log.Error(err.Error()) return err } // Deregister Message Queue handler if ge.mqLocal != nil { ge.mqLocal.UnregisterHandler(ge.handlerId) } // Delete GIS Asset Manager if ge.assetMgr != nil { err = ge.assetMgr.DeleteAssetMgr() if err != nil { log.Error(err.Error()) return err } } // Flush GIS Cache if ge.gisCache != nil { ge.gisCache.Flush() } return nil } // Run - GIS Engine thread func Run() (err error) { Loading
go-packages/meep-gis-asset-mgr/asset-mgr.go +36 −2 Original line number Diff line number Diff line Loading @@ -139,6 +139,10 @@ type Compute struct { type AssetMgr struct { name string namespace string user string pwd string host string port string dbName string db *sql.DB connected bool Loading @@ -160,10 +164,14 @@ func NewAssetMgr(name, namespace, user, pwd, host, port string) (am *AssetMgr, e } else { am.namespace = "default" } am.user = user am.pwd = pwd am.host = host am.port = port // Connect to Postgis DB for retry := 0; retry <= DbMaxRetryCount; retry++ { am.db, err = am.connectDB("", user, pwd, host, port) am.db, err = am.connectDB("", am.user, am.pwd, am.host, am.port) if err == nil { break } Loading @@ -183,7 +191,7 @@ func NewAssetMgr(name, namespace, user, pwd, host, port string) (am *AssetMgr, e _ = am.CreateDb(am.dbName) // Close connection to postgis DB am.db.Close() _ = am.db.Close() // Connect with sandbox-specific DB am.db, err = am.connectDB(am.dbName, user, pwd, host, port) Loading Loading @@ -241,6 +249,32 @@ func (am *AssetMgr) notifyListener(cbType string, assetName string) { } } // DeleteAssetMgr - func (am *AssetMgr) DeleteAssetMgr() (err error) { if am.db == nil { err = errors.New("Asset Manager database not initialized") log.Error(err.Error()) return err } // Close connection to sandbox-specific DB _ = am.db.Close() // Connect to Postgis DB am.db, err = am.connectDB("", am.user, am.pwd, am.host, am.port) if err != nil { log.Error("Failed to connect to postgis DB with err: ", err.Error()) return err } defer am.db.Close() // Destroy sandbox database _ = am.DestroyDb(am.dbName) return nil } // CreateDb -- Create new DB with provided name func (am *AssetMgr) CreateDb(name string) (err error) { _, err = am.db.Exec("CREATE DATABASE " + name) Loading