101 lines
2.7 KiB
Go
101 lines
2.7 KiB
Go
// Code generated by sqlc. DO NOT EDIT.
|
|
// versions:
|
|
// sqlc v1.30.0
|
|
// source: permissions.sql
|
|
|
|
package db
|
|
|
|
import (
|
|
"context"
|
|
)
|
|
|
|
const deleteToolPermission = `-- name: DeleteToolPermission :exec
|
|
DELETE FROM tool_permissions WHERE tool_name = ?
|
|
`
|
|
|
|
func (q *Queries) DeleteToolPermission(ctx context.Context, toolName string) error {
|
|
_, err := q.db.ExecContext(ctx, deleteToolPermission, toolName)
|
|
return err
|
|
}
|
|
|
|
const getToolPermission = `-- name: GetToolPermission :one
|
|
SELECT id, tool_name, policy, updated_at FROM tool_permissions WHERE tool_name = ?
|
|
`
|
|
|
|
func (q *Queries) GetToolPermission(ctx context.Context, toolName string) (ToolPermission, error) {
|
|
row := q.db.QueryRowContext(ctx, getToolPermission, toolName)
|
|
var i ToolPermission
|
|
err := row.Scan(
|
|
&i.ID,
|
|
&i.ToolName,
|
|
&i.Policy,
|
|
&i.UpdatedAt,
|
|
)
|
|
return i, err
|
|
}
|
|
|
|
const listToolPermissions = `-- name: ListToolPermissions :many
|
|
SELECT id, tool_name, policy, updated_at FROM tool_permissions ORDER BY tool_name ASC
|
|
`
|
|
|
|
func (q *Queries) ListToolPermissions(ctx context.Context) ([]ToolPermission, error) {
|
|
rows, err := q.db.QueryContext(ctx, listToolPermissions)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
defer rows.Close()
|
|
items := []ToolPermission{}
|
|
for rows.Next() {
|
|
var i ToolPermission
|
|
if err := rows.Scan(
|
|
&i.ID,
|
|
&i.ToolName,
|
|
&i.Policy,
|
|
&i.UpdatedAt,
|
|
); err != nil {
|
|
return nil, err
|
|
}
|
|
items = append(items, i)
|
|
}
|
|
if err := rows.Close(); err != nil {
|
|
return nil, err
|
|
}
|
|
if err := rows.Err(); err != nil {
|
|
return nil, err
|
|
}
|
|
return items, nil
|
|
}
|
|
|
|
const resetToolPermissions = `-- name: ResetToolPermissions :exec
|
|
DELETE FROM tool_permissions
|
|
`
|
|
|
|
func (q *Queries) ResetToolPermissions(ctx context.Context) error {
|
|
_, err := q.db.ExecContext(ctx, resetToolPermissions)
|
|
return err
|
|
}
|
|
|
|
const upsertToolPermission = `-- name: UpsertToolPermission :one
|
|
INSERT INTO tool_permissions (tool_name, policy)
|
|
VALUES (?, ?)
|
|
ON CONFLICT(tool_name) DO UPDATE SET policy = excluded.policy, updated_at = strftime('%Y-%m-%dT%H:%M:%fZ', 'now')
|
|
RETURNING id, tool_name, policy, updated_at
|
|
`
|
|
|
|
type UpsertToolPermissionParams struct {
|
|
ToolName string `json:"tool_name"`
|
|
Policy string `json:"policy"`
|
|
}
|
|
|
|
func (q *Queries) UpsertToolPermission(ctx context.Context, arg UpsertToolPermissionParams) (ToolPermission, error) {
|
|
row := q.db.QueryRowContext(ctx, upsertToolPermission, arg.ToolName, arg.Policy)
|
|
var i ToolPermission
|
|
err := row.Scan(
|
|
&i.ID,
|
|
&i.ToolName,
|
|
&i.Policy,
|
|
&i.UpdatedAt,
|
|
)
|
|
return i, err
|
|
}
|