group

package
v0.7.12 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2017 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	GroupsResource = "rn:hydra:warden:clients"
	GroupResource  = "rn:hydra:warden:clients:%s"
	Scope          = "hydra.warden.groups"
)
View Source
const (
	GroupsHandlerPath = "/warden/groups"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Group

type Group struct {
	ID      string   `json:"id"`
	Members []string `json:"members"`
}

type HTTPManager

type HTTPManager struct {
	Client   *http.Client
	Endpoint *url.URL
	Dry      bool
}

func (*HTTPManager) AddGroupMembers

func (m *HTTPManager) AddGroupMembers(group string, members []string) error

func (*HTTPManager) CreateGroup

func (m *HTTPManager) CreateGroup(g *Group) error

func (*HTTPManager) DeleteGroup

func (m *HTTPManager) DeleteGroup(id string) error

func (*HTTPManager) FindGroupNames

func (m *HTTPManager) FindGroupNames(subject string) ([]string, error)

func (*HTTPManager) GetGroup

func (m *HTTPManager) GetGroup(id string) (*Group, error)

func (*HTTPManager) RemoveGroupMembers

func (m *HTTPManager) RemoveGroupMembers(group string, members []string) error

type Handler

type Handler struct {
	Manager Manager
	H       herodot.Herodot
	W       firewall.Firewall
}

func (*Handler) AddGroupMembers

func (h *Handler) AddGroupMembers(w http.ResponseWriter, r *http.Request, ps httprouter.Params)

func (*Handler) CreateGroup

func (h *Handler) CreateGroup(w http.ResponseWriter, r *http.Request, _ httprouter.Params)

func (*Handler) DeleteGroup

func (h *Handler) DeleteGroup(w http.ResponseWriter, r *http.Request, ps httprouter.Params)

func (*Handler) FindGroupNames

func (h *Handler) FindGroupNames(w http.ResponseWriter, r *http.Request, _ httprouter.Params)

func (*Handler) GetGroup

func (h *Handler) GetGroup(w http.ResponseWriter, r *http.Request, ps httprouter.Params)

func (*Handler) RemoveGroupMembers

func (h *Handler) RemoveGroupMembers(w http.ResponseWriter, r *http.Request, ps httprouter.Params)

func (*Handler) SetRoutes

func (h *Handler) SetRoutes(r *httprouter.Router)

type Manager

type Manager interface {
	CreateGroup(*Group) error
	GetGroup(id string) (*Group, error)
	DeleteGroup(id string) error

	AddGroupMembers(group string, members []string) error
	RemoveGroupMembers(group string, members []string) error

	FindGroupNames(subject string) ([]string, error)
}

type MemoryManager

type MemoryManager struct {
	Groups map[string]Group
	sync.RWMutex
}

func NewMemoryManager

func NewMemoryManager() *MemoryManager

func (*MemoryManager) AddGroupMembers

func (m *MemoryManager) AddGroupMembers(group string, subjects []string) error

func (*MemoryManager) CreateGroup

func (m *MemoryManager) CreateGroup(g *Group) error

func (*MemoryManager) DeleteGroup

func (m *MemoryManager) DeleteGroup(id string) error

func (*MemoryManager) FindGroupNames

func (m *MemoryManager) FindGroupNames(subject string) ([]string, error)

func (*MemoryManager) GetGroup

func (m *MemoryManager) GetGroup(id string) (*Group, error)

func (*MemoryManager) RemoveGroupMembers

func (m *MemoryManager) RemoveGroupMembers(group string, subjects []string) error

type SQLManager

type SQLManager struct {
	DB *sqlx.DB
}

func (*SQLManager) AddGroupMembers

func (m *SQLManager) AddGroupMembers(group string, subjects []string) error

func (*SQLManager) CreateGroup

func (m *SQLManager) CreateGroup(g *Group) error

func (*SQLManager) CreateSchemas

func (s *SQLManager) CreateSchemas() error

func (*SQLManager) DeleteGroup

func (m *SQLManager) DeleteGroup(id string) error

func (*SQLManager) FindGroupNames

func (m *SQLManager) FindGroupNames(subject string) ([]string, error)

func (*SQLManager) GetGroup

func (m *SQLManager) GetGroup(id string) (*Group, error)

func (*SQLManager) RemoveGroupMembers

func (m *SQLManager) RemoveGroupMembers(group string, subjects []string) error

Jump to

Keyboard shortcuts

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