From 8fd83ff179edaec86c369c9cc388e7a7bc4392b6 Mon Sep 17 00:00:00 2001 From: Christine Dodrill Date: Fri, 28 Apr 2017 18:09:14 -0700 Subject: [PATCH] database: remove old rethinkdb code --- database/route.go | 85 ++++------------------------------------------- 1 file changed, 7 insertions(+), 78 deletions(-) diff --git a/database/route.go b/database/route.go index b95aa36..abe72e4 100644 --- a/database/route.go +++ b/database/route.go @@ -1,37 +1,9 @@ package database import ( - "git.xeserv.us/xena/route/routerpc" - r "github.com/GoRethink/gorethink" + proto "git.xeserv.us/xena/route/proto" ) -// DB is the high level wrapper to the datastore. -type DB struct { - s *r.Session -} - -// New takes a rethinkdb host and databasea and sets up a connection. -func New(host, database string) (*DB, error) { - session, err := r.Connect(r.ConnectOpts{ - Address: host, - Database: database, - }) - if err != nil { - return nil, err - } - - db := &DB{ - s: session, - } - - return db, nil -} - -var tables = []string{ - "certs", - "routes", -} - // Route is a single HTTP route. type Route struct { ID string `gorethink:"id,omitempty" storm:"id"` @@ -41,54 +13,11 @@ type Route struct { Token string `gorethink:"token" storm:"-"` // deprecated } -// SaveRoute adds the route to the database. -func (db *DB) SaveRoute(resp *routerpc.AddHostResponse) error { - rt := &Route{ - Hostname: resp.Hostname, - Token: resp.Token, +// AsProto converts this into the protobuf. +func (r Route) AsProto() *proto.Route { + return &proto.Route{ + Id: r.ID, + Creator: r.Creator, + Host: r.Hostname, } - - // TODO: check if OnionHostname or Hostname actually exists in - // the database. RethinkDB doesn't support unique secondary indexes. - - _, err := r.Table("routes").Insert(rt).RunWrite(db.s) - if err != nil { - return err - } - - return nil -} - -func (db *DB) GetRouteForHost(name string) (*Route, error) { - rows, err := r.Table("routes").Filter(map[string]interface{}{"hostname": name}).Run(db.s) - if err != nil { - return nil, err - } - - result := &Route{} - - err = rows.One(result) - if err != nil { - return nil, err - } - - return result, nil -} - -// GetAllRoutes fetches all of the route entries from the database -// and returns them. This is intended for the startup process or -// admin tooling. -func (db *DB) GetAllRoutes() ([]Route, error) { - rows, err := r.Table("routes").Run(db.s) - if err != nil { - return nil, err - } - - var routes []Route - err = rows.All(&routes) - if err != nil { - return nil, err - } - - return routes, nil }