diff --git a/main.go b/main.go index 155c5c4..0ec5265 100644 --- a/main.go +++ b/main.go @@ -8,10 +8,12 @@ import ( "os" "github.com/go-sql-driver/mysql" - "github.com/jorgerojas26/lazysql/app" "github.com/jorgerojas26/lazysql/components" + "github.com/jorgerojas26/lazysql/drivers" + "github.com/jorgerojas26/lazysql/helpers" "github.com/jorgerojas26/lazysql/helpers/logger" + "github.com/jorgerojas26/lazysql/models" ) var version = "dev" @@ -41,12 +43,31 @@ func main() { // Check if "version" arg is passed. argsWithProg := os.Args - if len(argsWithProg) > 1 { switch argsWithProg[1] { case "version": fmt.Println("LazySQL version: ", version) os.Exit(0) + default: + connectionString := argsWithProg[1] + parsed, err := helpers.ParseConnectionString(connectionString) + if err != nil { + fmt.Printf("Could not parse connection string: %s\n", err) + os.Exit(1) + } + connection := models.Connection{ + Name: connectionString, + Provider: parsed.Driver, + DBName: connectionString, + URL: connectionString, + } + newDbDriver := &drivers.SQLite{} + err = newDbDriver.Connect(connection.URL) + if err != nil { + fmt.Printf("Could not connect to database %s: %s\n", connectionString, err) + os.Exit(1) + } + components.MainPages.AddPage(connection.URL, components.NewHomePage(connection, newDbDriver).Flex, true, true) } }