554325746@qq.com
2019-07-10 7183fd16c435d2aaf85e24d3608c5c43645ee608
util/sqlite.go
@@ -3,10 +3,11 @@
import (
   "fmt"
    "flag"
   "basic.com/pubsub/protomsg.git"
   "basic.com/r/dbapi.git"
   "basic.com/valib/gopherdiscovery.git"
   "basic.com/dbapi.git"
   "github.com/gogo/protobuf/proto"
    "basic.com/valib/gopherdiscovery.git"
)
/*************************
@@ -23,57 +24,84 @@
var CameraIds []protomsg.Camera
var CameraTasks []protomsg.CameraAndTaskInfo
var TaskSdks []protomsg.TaskSdkInfo
var Sdklist []string
//var TaskSdks []protomsg.TaskSdkInfo
var TaskSdks []protomsg.TaskSdkRun
var urlServer = "tcp://192.168.1.11:40007"
var urlPubSub = "tcp://192.168.1.11:50007"
var peers chan []string
var Sdklist []string
var Sdkinfos []protomsg.Sdk
var urlServer = flag.String("urlServer","tcp://127.0.0.1:40007","heartbeat address of url server")
var urlPubSub = flag.String("urlPubsub","tcp://127.0.0.1:5007", "heartbeat pubsub address of url server")
var dbip = flag.String("dbip","127.0.0.1","address of database ip")
var dbport = flag.Int("dbport", 8001, "port of database port")
var Sdkflag = make(chan bool)
var TaskSdkflag = make(chan bool)
var Cameraflag = make(chan bool)
var newsdkmsg = &protomsg.DbChangeMessage{}
func Getdata(opt []byte, initchan chan bool) {
func processinit(initchan chan bool) {
   CameraIds = camval.FindAll()
   fmt.Println("==============camera camera with task ================")
   CameraTasks = camval.FindAllCameraAndTask()
   fmt.Println(CameraTasks)
   TaskSdks = taskapi.FindAllTaskSdkRun()
   Sdklist = sdkapi.GetAllSdkIds()
    Sdkinfos = sdkapi.FindAll("")
   initchan <- true
}
func Getdata(opt []byte) {
   if err := proto.Unmarshal(opt, newsdkmsg); err != nil {
      fmt.Println("publichshMessage ", err)
      return
   }
   if !IsInit {
      fmt.Println("enter init.")
      CameraIds = camval.FindAll()
      fmt.Println("==============camera camera with task ================")
      CameraTasks = camval.FindAllCameraAndTask()
      fmt.Println(CameraTasks)
      TaskSdks = taskapi.FindAll()
      Sdklist = sdkapi.GetAllSdkIds()
      fmt.Println(Sdklist)
      IsInit = true
      initchan <- true
      return
   }
   switch newsdkmsg.Table {
   case protomsg.TableChanged_T_Camera:
      fmt.Println("update camera")
      CameraIds = camval.FindAll()
   case protomsg.TableChanged_T_CameraTask:
      CameraTasks = camval.FindAllCameraAndTask()
   case protomsg.TableChanged_T_TaskSdk:
      TaskSdks = taskapi.FindAll()
   case protomsg.TableChanged_T_Sdk:
      Sdklist = sdkapi.GetAllSdkIds()
   }
      Cameraflag <- true
   case protomsg.TableChanged_T_CameraTask:
      fmt.Println("update cameratask")
      CameraTasks = camval.FindAllCameraAndTask()
      fmt.Println("update cameratask finished!")
   case protomsg.TableChanged_T_TaskSdk:
      fmt.Println("update tasksdk")
      TaskSdks = taskapi.FindAllTaskSdkRun()
      TaskSdkflag <- true
   case protomsg.TableChanged_T_Sdk:
      fmt.Println("update sdk")
      Sdklist = sdkapi.GetAllSdkIds()
        Sdkinfos = sdkapi.FindAll("")
      Sdkflag <- true
      fmt.Println("update finished!")
   default:
      fmt.Println("unknow type operation")
   }
   fmt.Println(newsdkmsg)
}
func Init(initchan chan bool) {
   clientOne, _ := gopherdiscovery.ClientWithSub(urlServer, urlPubSub, "ip:192.168.1.124")
   peers, _ = clientOne.Peers()
    dbapi.Init(*dbip, *dbport)
   clientOne, _ := gopherdiscovery.ClientWithSub(*urlServer, *urlPubSub, "ip:local")
   recvinit := clientOne.HeartBeatMsg()
   fmt.Println(<-recvinit)
   processinit(initchan)
   peers, _ := clientOne.Peers()
   for x := range peers {
      Getdata([]byte(x[0]), initchan)
      Getdata(x)
   }
}