api

package
v0.0.0-...-f47669d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 13, 2017 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func StartServer

func StartServer() error

StartServer configures and starts API Server

Types

type Cat

type Cat struct {
	ID   int64  `json:"id"    db:"cat_id"`
	Name string `json:"name"  db:"cat_name"`
	Age  int    `json:"age"   db:"cat_age"`
	Type string `json:"type"  db:"cat_type"`
}

Cat data

type CatsDataStore

type CatsDataStore interface {
	ReadAllCats() (cats []*Cat, err error)
	CreateCat(cat *Cat) (err error)
	ReadCat(id int64) (cat *Cat, err error)
	UpdateCat(cat *Cat) (err error)
	DeleteCat(id int64) (err error)
}

CatsDataStore represents interface to manage cats

func NewCatsDB

func NewCatsDB(dbURL string) CatsDataStore

NewCatsDB returns a new CatsDataStore

type CatsRoutes

type CatsRoutes struct {
	CatsRoutesHandler
	// contains filtered or unexported fields
}

CatsRoutes implements HTTP Handlers

func (*CatsRoutes) CreateHandler

func (cr *CatsRoutes) CreateHandler(w http.ResponseWriter, r *http.Request) error

func (*CatsRoutes) DeleteHandler

func (cr *CatsRoutes) DeleteHandler(w http.ResponseWriter, r *http.Request) error

func (*CatsRoutes) ReadAllHandler

func (cr *CatsRoutes) ReadAllHandler(w http.ResponseWriter, r *http.Request) error

func (*CatsRoutes) ReadHandler

func (cr *CatsRoutes) ReadHandler(w http.ResponseWriter, r *http.Request) error

func (*CatsRoutes) UpdateHandler

func (cr *CatsRoutes) UpdateHandler(w http.ResponseWriter, r *http.Request) error

type CatsRoutesHandler

type CatsRoutesHandler interface {
	CreateHandler(w http.ResponseWriter, r *http.Request) error
	ReadAllHandler(w http.ResponseWriter, r *http.Request) error
	ReadHandler(w http.ResponseWriter, r *http.Request) error
	UpdateHandler(w http.ResponseWriter, r *http.Request) error
	DeleteHandler(w http.ResponseWriter, r *http.Request) error
}

CatsRoutesHandler represents the HTTP Handler methods

func SetupCatsRoutes

func SetupCatsRoutes(dataStore CatsDataStore, router *mux.Router) CatsRoutesHandler

SetupCatsRoutes return a new CatsRoutesHandler

type DB

type DB interface {
	Query(query string, args ...interface{}) (*sql.Rows, error)
	Prepare(query string) (*sql.Stmt, error)
	QueryRow(query string, args ...interface{}) *sql.Row
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL