Documentation ¶
Index ¶
- func GetNextcloudServerMock(called *[]string) http.Handler
- func New(m map[string]interface{}) (user.Manager, error)
- func TestingHTTPClient(handler http.Handler) (*http.Client, func())
- type Action
- type Manager
- func (um *Manager) Configure(ml map[string]interface{}) error
- func (um *Manager) FindUsers(ctx context.Context, query string, skipFetchingGroups bool) ([]*userpb.User, error)
- func (um *Manager) GetUser(ctx context.Context, uid *userpb.UserId, skipFetchingGroups bool) (*userpb.User, error)
- func (um *Manager) GetUserByClaim(ctx context.Context, claim, value string, skipFetchingGroups bool) (*userpb.User, error)
- func (um *Manager) GetUserGroups(ctx context.Context, uid *userpb.UserId) ([]string, error)
- func (um *Manager) SetHTTPClient(c *http.Client)
- type Response
- type UserManagerConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetNextcloudServerMock ¶
GetNextcloudServerMock returns a handler that pretends to be a remote Nextcloud server
func New ¶
New returns a user manager implementation that reads a json file to provide user metadata.
func TestingHTTPClient ¶
TestingHTTPClient thanks to https://itnext.io/how-to-stub-requests-to-remote-hosts-with-go-6c2c1db32bf2 Ideally, this function would live in tests/helpers, but if we put it there, it gets excluded by .dockerignore, and the Docker build fails (see https://github.com/cs3org/reva/issues/1999) So putting it here for now - open to suggestions if someone knows a better way to inject this.
Types ¶
type Action ¶
type Action struct {
// contains filtered or unexported fields
}
Action describes a REST request to forward to the Nextcloud backend
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
Manager is the Nextcloud-based implementation of the share.Manager interface see https://github.com/cs3org/reva/blob/v1.13.0/pkg/user/user.go#L29-L35
func NewUserManager ¶
func NewUserManager(c *UserManagerConfig) (*Manager, error)
NewUserManager returns a new Nextcloud-based UserManager
func (*Manager) Configure ¶
Configure method as defined in https://github.com/cs3org/reva/blob/v1.13.0/pkg/user/user.go#L29-L35
func (*Manager) FindUsers ¶
func (um *Manager) FindUsers(ctx context.Context, query string, skipFetchingGroups bool) ([]*userpb.User, error)
FindUsers method as defined in https://github.com/cs3org/reva/blob/v1.13.0/pkg/user/user.go#L29-L35
func (*Manager) GetUser ¶
func (um *Manager) GetUser(ctx context.Context, uid *userpb.UserId, skipFetchingGroups bool) (*userpb.User, error)
GetUser method as defined in https://github.com/cs3org/reva/blob/v1.13.0/pkg/user/user.go#L29-L35
func (*Manager) GetUserByClaim ¶
func (um *Manager) GetUserByClaim(ctx context.Context, claim, value string, skipFetchingGroups bool) (*userpb.User, error)
GetUserByClaim method as defined in https://github.com/cs3org/reva/blob/v1.13.0/pkg/user/user.go#L29-L35
func (*Manager) GetUserGroups ¶
GetUserGroups method as defined in https://github.com/cs3org/reva/blob/v1.13.0/pkg/user/user.go#L29-L35
func (*Manager) SetHTTPClient ¶
SetHTTPClient sets the HTTP client
type Response ¶
type Response struct {
// contains filtered or unexported fields
}
Response contains data for the Nextcloud mock server to respond and to switch to a new server state
type UserManagerConfig ¶
type UserManagerConfig struct { EndPoint string `mapstructure:"endpoint" docs:";The Nextcloud backend endpoint for user management"` MockHTTP bool `mapstructure:"mock_http"` }
UserManagerConfig contains config for a Nextcloud-based UserManager