main.go 927 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package main
  2. import (
  3. "bufio"
  4. "fmt"
  5. "os"
  6. "sparrow/pkg/server"
  7. "strings"
  8. )
  9. func main() {
  10. // init server
  11. err := server.Init("pdcfg")
  12. if err != nil {
  13. fmt.Printf("pdcfg init error : %s\n", err)
  14. return
  15. }
  16. cmdHandler := NewCommandHander()
  17. cmdHandler.SetHandler("vendor", DoVendorCommand)
  18. cmdHandler.SetHandler("product", DoProductCommand)
  19. cmdHandler.SetHandler("application", DoApplicationCommand)
  20. reader := bufio.NewReader(os.Stdin)
  21. for {
  22. fmt.Printf("> ")
  23. line, err := reader.ReadString('\n')
  24. if err != nil {
  25. fmt.Println(err)
  26. continue
  27. }
  28. fragments := strings.Split(line, " ")
  29. if len(fragments) < 1 {
  30. fmt.Println("wrong command.")
  31. continue
  32. }
  33. cmd := fragments[0]
  34. handler, err := cmdHandler.GetHandler(cmd)
  35. if err != nil {
  36. fmt.Printf("Error: %v \n", err)
  37. continue
  38. }
  39. args := fragments[1:]
  40. err = handler(args)
  41. if err != nil {
  42. fmt.Println(err)
  43. continue
  44. }
  45. }
  46. }