authz

package
v0.32.0 Latest Latest
Warning

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

Go to latest
Published: Jul 28, 2023 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultSortBy = "permissionId"
View Source
const ResourceTypePermission = "permission"

Variables

This section is empty.

Functions

func CreateHandler added in v0.11.0

func CreateHandler(svc PermissionService, w http.ResponseWriter, r *http.Request) error

func DeleteHandler added in v0.11.0

func DeleteHandler(svc PermissionService, w http.ResponseWriter, r *http.Request) error

func GetHandler added in v0.11.0

func GetHandler(svc PermissionService, w http.ResponseWriter, r *http.Request) error

func ListHandler added in v0.11.0

func ListHandler(svc PermissionService, w http.ResponseWriter, r *http.Request) error

func UpdateHandler added in v0.11.0

func UpdateHandler(svc PermissionService, w http.ResponseWriter, r *http.Request) error

Types

type Model added in v0.8.0

type Model interface {
	GetID() int64
	GetObjectId() int64
	GetPermissionId() string
	GetName() *string
	SetName(*string)
	GetDescription() *string
	SetDescription(*string)
	GetCreatedAt() time.Time
	GetUpdatedAt() time.Time
	GetDeletedAt() *time.Time
	ToPermissionSpec() *PermissionSpec
}

type MySQLRepository

type MySQLRepository struct {
	database.SQLRepository
}

func NewMySQLRepository

func NewMySQLRepository(db *database.MySQL) *MySQLRepository

func (MySQLRepository) Create

func (repo MySQLRepository) Create(ctx context.Context, model Model) (int64, error)

func (MySQLRepository) DeleteByPermissionId

func (repo MySQLRepository) DeleteByPermissionId(ctx context.Context, permissionId string) error

func (MySQLRepository) GetById

func (repo MySQLRepository) GetById(ctx context.Context, id int64) (Model, error)

func (MySQLRepository) GetByPermissionId

func (repo MySQLRepository) GetByPermissionId(ctx context.Context, permissionId string) (Model, error)

func (MySQLRepository) List

func (repo MySQLRepository) List(ctx context.Context, listParams service.ListParams) ([]Model, error)

func (MySQLRepository) UpdateByPermissionId

func (repo MySQLRepository) UpdateByPermissionId(ctx context.Context, permissionId string, model Model) error

type Permission

type Permission struct {
	ID           int64      `mysql:"id" postgres:"id" sqlite:"id"`
	ObjectId     int64      `mysql:"objectId" postgres:"object_id" sqlite:"objectId"`
	PermissionId string     `mysql:"permissionId" postgres:"permission_id" sqlite:"permissionId"`
	Name         *string    `mysql:"name" postgres:"name" sqlite:"name"`
	Description  *string    `mysql:"description" postgres:"description" sqlite:"description"`
	CreatedAt    time.Time  `mysql:"createdAt" postgres:"created_at" sqlite:"createdAt"`
	UpdatedAt    time.Time  `mysql:"updatedAt" postgres:"updated_at" sqlite:"updatedAt"`
	DeletedAt    *time.Time `mysql:"deletedAt" postgres:"deleted_at" sqlite:"deletedAt"`
}

func (Permission) GetCreatedAt added in v0.8.0

func (permission Permission) GetCreatedAt() time.Time

func (Permission) GetDeletedAt added in v0.8.0

func (permission Permission) GetDeletedAt() *time.Time

func (Permission) GetDescription added in v0.8.0

func (permission Permission) GetDescription() *string

func (Permission) GetID added in v0.8.0

func (permission Permission) GetID() int64

func (Permission) GetName added in v0.8.0

func (permission Permission) GetName() *string

func (Permission) GetObjectId added in v0.8.0

func (permission Permission) GetObjectId() int64

func (Permission) GetPermissionId added in v0.8.0

func (permission Permission) GetPermissionId() string

func (Permission) GetUpdatedAt added in v0.8.0

func (permission Permission) GetUpdatedAt() time.Time

func (*Permission) SetDescription added in v0.8.0

func (permission *Permission) SetDescription(newDescription *string)

func (*Permission) SetName added in v0.8.0

func (permission *Permission) SetName(newName *string)

func (Permission) ToPermissionSpec

func (permission Permission) ToPermissionSpec() *PermissionSpec

type PermissionListParamParser

type PermissionListParamParser struct{}

func (PermissionListParamParser) GetDefaultSortBy

func (parser PermissionListParamParser) GetDefaultSortBy() string

func (PermissionListParamParser) GetSupportedSortBys

func (parser PermissionListParamParser) GetSupportedSortBys() []string

func (PermissionListParamParser) ParseValue

func (parser PermissionListParamParser) ParseValue(val string, sortBy string) (interface{}, error)

type PermissionRepository

type PermissionRepository interface {
	Create(ctx context.Context, permission Model) (int64, error)
	GetById(ctx context.Context, id int64) (Model, error)
	GetByPermissionId(ctx context.Context, permissionId string) (Model, error)
	List(ctx context.Context, listParams service.ListParams) ([]Model, error)
	UpdateByPermissionId(ctx context.Context, permissionId string, permission Model) error
	DeleteByPermissionId(ctx context.Context, permissionId string) error
}

func NewRepository

func NewRepository(db database.Database) (PermissionRepository, error)

type PermissionService

type PermissionService struct {
	service.BaseService
	Repository PermissionRepository
	EventSvc   event.Service
	ObjectSvc  *object.ObjectService
}

func NewService

func NewService(env service.Env, repository PermissionRepository, eventSvc event.Service, objectSvc *object.ObjectService) *PermissionService

func (PermissionService) Create

func (svc PermissionService) Create(ctx context.Context, permissionSpec PermissionSpec) (*PermissionSpec, error)

func (PermissionService) DeleteByPermissionId

func (svc PermissionService) DeleteByPermissionId(ctx context.Context, permissionId string) (*wookie.Token, error)

func (PermissionService) GetByPermissionId

func (svc PermissionService) GetByPermissionId(ctx context.Context, permissionId string) (*PermissionSpec, error)

func (PermissionService) List

func (svc PermissionService) List(ctx context.Context, listParams service.ListParams) ([]PermissionSpec, error)

func (PermissionService) Routes added in v0.8.0

func (svc PermissionService) Routes() ([]service.Route, error)

GetRoutes registers all route handlers for this module

func (PermissionService) UpdateByPermissionId

func (svc PermissionService) UpdateByPermissionId(ctx context.Context, permissionId string, permissionSpec UpdatePermissionSpec) (*PermissionSpec, error)

type PermissionSpec

type PermissionSpec struct {
	PermissionId string    `json:"permissionId" validate:"required,valid_object_id"`
	Name         *string   `json:"name"`
	Description  *string   `json:"description"`
	CreatedAt    time.Time `json:"createdAt"`
}

func (PermissionSpec) ToObjectSpec

func (spec PermissionSpec) ToObjectSpec() *object.ObjectSpec

func (PermissionSpec) ToPermission

func (spec PermissionSpec) ToPermission(objectId int64) *Permission

type PostgresRepository added in v0.4.0

type PostgresRepository struct {
	database.SQLRepository
}

func NewPostgresRepository added in v0.4.0

func NewPostgresRepository(db *database.Postgres) *PostgresRepository

func (PostgresRepository) Create added in v0.4.0

func (repo PostgresRepository) Create(ctx context.Context, model Model) (int64, error)

func (PostgresRepository) DeleteByPermissionId added in v0.4.0

func (repo PostgresRepository) DeleteByPermissionId(ctx context.Context, permissionId string) error

func (PostgresRepository) GetById added in v0.4.0

func (repo PostgresRepository) GetById(ctx context.Context, id int64) (Model, error)

func (PostgresRepository) GetByPermissionId added in v0.4.0

func (repo PostgresRepository) GetByPermissionId(ctx context.Context, permissionId string) (Model, error)

func (PostgresRepository) List added in v0.4.0

func (repo PostgresRepository) List(ctx context.Context, listParams service.ListParams) ([]Model, error)

func (PostgresRepository) UpdateByPermissionId added in v0.4.0

func (repo PostgresRepository) UpdateByPermissionId(ctx context.Context, permissionId string, model Model) error

type SQLiteRepository added in v0.11.0

type SQLiteRepository struct {
	database.SQLRepository
}

func NewSQLiteRepository added in v0.11.0

func NewSQLiteRepository(db *database.SQLite) *SQLiteRepository

func (SQLiteRepository) Create added in v0.11.0

func (repo SQLiteRepository) Create(ctx context.Context, model Model) (int64, error)

func (SQLiteRepository) DeleteByPermissionId added in v0.11.0

func (repo SQLiteRepository) DeleteByPermissionId(ctx context.Context, permissionId string) error

func (SQLiteRepository) GetById added in v0.11.0

func (repo SQLiteRepository) GetById(ctx context.Context, id int64) (Model, error)

func (SQLiteRepository) GetByPermissionId added in v0.11.0

func (repo SQLiteRepository) GetByPermissionId(ctx context.Context, permissionId string) (Model, error)

func (SQLiteRepository) List added in v0.11.0

func (repo SQLiteRepository) List(ctx context.Context, listParams service.ListParams) ([]Model, error)

func (SQLiteRepository) UpdateByPermissionId added in v0.11.0

func (repo SQLiteRepository) UpdateByPermissionId(ctx context.Context, permissionId string, model Model) error

type UpdatePermissionSpec

type UpdatePermissionSpec struct {
	Name        *string `json:"name"`
	Description *string `json:"description"`
}

Jump to

Keyboard shortcuts

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