Documentation
¶
Index ¶
- type Client
- func (c *Client) AddRole(ctx context.Context, name string) (err error)
- func (c *Client) AddRolePermission(ctx context.Context, name string, permission Permission) (err error)
- func (c *Client) AddUser(ctx context.Context, name, password string) (err error)
- func (c *Client) CreateDatabase(ctx context.Context, name string, options map[string]string) (err error)
- func (c *Client) DeleteRole(ctx context.Context, name string) (err error)
- func (c *Client) DeleteRolePermission(ctx context.Context, name string, permission Permission) (err error)
- func (c *Client) DeleteUser(ctx context.Context, name string) (err error)
- func (c *Client) DropDatabase(ctx context.Context, name string) (err error)
- func (c *Client) GetRolePermissions(ctx context.Context, name string) ([]Permission, error)
- func (c *Client) GetRoles(ctx context.Context) ([]string, error)
- func (c *Client) GetUser(ctx context.Context, name string) (user User, err error)
- func (c *Client) GetUserRoles(ctx context.Context, name string) (roles []string, err error)
- func (c *Client) ListDatabases(ctx context.Context) (databases []string, err error)
- func (c *Client) SetUserRoles(ctx context.Context, name string, roles []string) (err error)
- type Permission
- type StardogAPI
- type User
- type UserCredentials
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
Client holds an HTTPClient and connectivity information
func (*Client) AddRolePermission ¶
func (c *Client) AddRolePermission(ctx context.Context, name string, permission Permission) (err error)
Add the Permission to a role
func (*Client) CreateDatabase ¶
func (c *Client) CreateDatabase(ctx context.Context, name string, options map[string]string) (err error)
Creates a database with the given name and options
func (*Client) DeleteRole ¶
Delete a role
func (*Client) DeleteRolePermission ¶
func (c *Client) DeleteRolePermission(ctx context.Context, name string, permission Permission) (err error)
Delete the Permission from a role
func (*Client) DeleteUser ¶
Delete a user
func (*Client) DropDatabase ¶
Drops the given database
func (*Client) GetRolePermissions ¶
Get Permissions of a role
func (*Client) GetUserRoles ¶
Get the roles of a user
func (*Client) ListDatabases ¶
Returns the list of databases
type Permission ¶
type Permission struct { Action string `json:"action"` ResourceType string `json:"resource_type"` Resources []string `json:"resource"` }
Permission reflects the content returned and required by the Stardog API.
type StardogAPI ¶
type StardogAPI interface { // DB CreateDatabase(ctx context.Context, name string, options map[string]string) (err error) DropDatabase(ctx context.Context, name string) (err error) ListDatabases(ctx context.Context) (databases []string, err error) // User AddUser(ctx context.Context, name, password string) (err error) DeleteUser(ctx context.Context, name string) (err error) GetUser(ctx context.Context, name string) (user User, err error) SetUserRoles(ctx context.Context, name string, roles []string) (err error) GetUserRoles(ctx context.Context, name string) (roles []string, err error) // Roles AddRole(ctx context.Context, name string) (err error) DeleteRole(ctx context.Context, name string) (err error) GetRoles(ctx context.Context) (roles []string, err error) // Permissions AddRolePermission(ctx context.Context, name string, permission Permission) (err error) DeleteRolePermission(ctx context.Context, name string, permission Permission) (err error) GetRolePermissions(ctx context.Context, name string) (permissions []Permission, err error) }
StardogAPI provides an interface to interact with a subset of the Stardog API
type User ¶
type User struct { Name string Enabled bool `json:"enabled"` Superuser bool `json:"superuser"` Roles []string `json:"roles"` Permissions []Permission `json:"permissions"` }
User reflects the content returned by the Stardog API.
type UserCredentials ¶
UserCredentials is a helper for CreateUser()
Source Files
¶
Click to show internal directories.
Click to hide internal directories.