Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // ErrNotAuthorized is used when the the access is not permisted ErrNotAuthorized = errors.New(http.StatusUnauthorized, "not authorized") // ErrUserNotFound is used when an user is not found ErrUserNotFound = errors.New(http.StatusNotFound, "user not found") // ErrUserExists is used when an user already exists ErrUserExists = errors.New(http.StatusNotFound, "user already exists") // ErrInvalidAdminRouter is used when an invalid admin router is given ErrInvalidAdminRouter = errors.New(http.StatusNotFound, "invalid admin router given") )
Functions ¶
func NewBasicAuth ¶
func NewBasicAuth(repo Repository) func(http.Handler) http.Handler
NewBasicAuth is a HTTP basic auth middleware
Types ¶
type CassandraRepository ¶
type CassandraRepository struct {
// contains filtered or unexported fields
}
CassandraRepository represents a cassandra repository
func NewCassandraRepository ¶
func NewCassandraRepository(session wrapper.Holder) (*CassandraRepository, error)
func (*CassandraRepository) Add ¶
func (r *CassandraRepository) Add(user *User) error
Add adds an user to the repository
func (*CassandraRepository) FindAll ¶
func (r *CassandraRepository) FindAll() ([]*User, error)
FindAll fetches all the basic user definitions available
func (*CassandraRepository) FindByUsername ¶
func (r *CassandraRepository) FindByUsername(username string) (*User, error)
FindByUsername find an user by username returns ErrUserNotFound when a user is not found.
func (*CassandraRepository) Remove ¶
func (r *CassandraRepository) Remove(username string) error
Remove an user from the repository
type Handler ¶
type Handler struct {
// contains filtered or unexported fields
}
Handler is the api rest handlers
func NewHandler ¶
func NewHandler(repo Repository) *Handler
NewHandler creates a new instance of Handler
type InMemoryRepository ¶
InMemoryRepository represents a in memory repository
func NewInMemoryRepository ¶
func NewInMemoryRepository() *InMemoryRepository
NewInMemoryRepository creates a in memory repository
func (*InMemoryRepository) Add ¶
func (r *InMemoryRepository) Add(user *User) error
Add adds an user to the repository
func (*InMemoryRepository) FindAll ¶
func (r *InMemoryRepository) FindAll() ([]*User, error)
FindAll fetches all the users available
func (*InMemoryRepository) FindByUsername ¶
func (r *InMemoryRepository) FindByUsername(username string) (*User, error)
FindByUsername find an user by username
func (*InMemoryRepository) Remove ¶
func (r *InMemoryRepository) Remove(username string) error
Remove removes an user from the repository
type MongoRepository ¶
type MongoRepository struct {
// contains filtered or unexported fields
}
MongoRepository represents a mongodb repository
func NewMongoRepository ¶
func NewMongoRepository(db *mongo.Database) (*MongoRepository, error)
NewMongoRepository creates a mongo API definition repo
func (*MongoRepository) Add ¶
func (r *MongoRepository) Add(user *User) error
Add adds an user to the repository
func (*MongoRepository) FindAll ¶
func (r *MongoRepository) FindAll() ([]*User, error)
FindAll fetches all the API definitions available
func (*MongoRepository) FindByUsername ¶
func (r *MongoRepository) FindByUsername(username string) (*User, error)
FindByUsername find an user by username
func (*MongoRepository) Remove ¶
func (r *MongoRepository) Remove(username string) error
Remove an user from the repository