Advertisement
Guest User

Untitled

a guest
Apr 19th, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.19 KB | None | 0 0
  1. package database
  2.  
  3. import (
  4. "fmt"
  5. "time"
  6.  
  7. "database/sql"
  8.  
  9. _ "github.com/lib/pq"
  10. "github.com/thrasher-/gocryptotrader/config"
  11. )
  12.  
  13. const CLIENT_TABLE = `
  14. CREATE TABLE tickerData
  15. (
  16. exchangeName character
  17. currencyPair character
  18. last float64
  19. high float64
  20. low float64
  21. bid float64
  22. ask float64
  23. volume float64
  24. inserted
  25. )
  26. WITH (OIDS=FALSE);
  27. `
  28.  
  29. //Databasethingy main db struct and stuff that init variables
  30. type Databasethingy struct {
  31. //clientinfo map[string] /*ExchangeName*/ clientDetails
  32. tickerData map[string] /*ExchangeName*/ exchangeData
  33. configData []byte
  34. DBUser string
  35. DBPassword string
  36. DBName string
  37. Verbose bool
  38. }
  39.  
  40. // type clientDetails struct {
  41. // Username string
  42. // Password string
  43. // APIKey string
  44. // APISecret string
  45. // Email string
  46. // }
  47.  
  48. type exchangeData struct {
  49. ticker map[string] /*CurrrencyPair*/ tickerData
  50. }
  51.  
  52. type tickerData struct {
  53. Last float64
  54. High float64
  55. Low float64
  56. Bid float64
  57. Ask float64
  58. Volume float64
  59. time time.Time
  60. }
  61.  
  62. func (d *Databasethingy) SetDefaults() {
  63. d.DBUser = "gctbot"
  64. d.DBPassword = "1337"
  65. d.DBName = "gctdb"
  66. d.Verbose = false
  67. }
  68.  
  69. func (d *Databasethingy) Setup(configPath string) error {
  70. configRunner := config.GetConfig()
  71. err := configRunner.LoadConfig(configPath)
  72. if err != nil {
  73. return err
  74. }
  75.  
  76. //d.exchangeInfo = make(map[string]config.ExchangeConfig)
  77. //d.clientinfo = make(map[string]clientDetails)
  78. d.tickerData = make(map[string]exchangeData)
  79.  
  80. // for _, something := range configRunner.Exchanges {
  81. // d.exchangeInfo[something.Name] = something
  82. // }
  83. return nil
  84. }
  85.  
  86. //RunDB something something rawr
  87. func (d *Databasethingy) RunDB() error {
  88. d.SetDefaults()
  89. d.Setup("../testdata/configtest.dat")
  90.  
  91. dbInfo := fmt.Sprintf("user=%s password=%s dbname=%s sslmode=disable",
  92. d.DBUser, d.DBPassword, d.DBName)
  93. db, err := sql.Open("postgres", dbInfo)
  94. if err != nil {
  95. return err
  96. }
  97. defer db.Close()
  98.  
  99. err = db.Ping()
  100. if err != nil {
  101. return err
  102. }
  103. return nil
  104. }
  105.  
  106. func (d *Databasethingy) setDBTables() {
  107.  
  108. }
  109.  
  110. // func createTable() {
  111. //
  112. // }
  113. //
  114. // func insertValue() {
  115. //
  116. // }
  117. // func updateExchangeInfo() {
  118. //
  119. // }
  120. // func updateTickerInfo() {
  121. //
  122. // }
  123. //
  124. // func query() {
  125. //
  126. // }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement