// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.29.0 // source: resource_keys.sql package entitlements import ( "context" ) const getResourceKey = `-- name: GetResourceKey :one SELECT resource_key, display_name, description, unit, created_at, provider, kind FROM core.resource_keys WHERE resource_key = $1 ` // Single-key lookup for the rule-authoring handler: rule_type is derived // server-side from the key's kind, never taken from client input. func (q *Queries) GetResourceKey(ctx context.Context, resourceKey string) (ResourceKey, error) { row := q.db.QueryRowContext(ctx, getResourceKey, resourceKey) var i ResourceKey err := row.Scan( &i.ResourceKey, &i.DisplayName, &i.Description, &i.Unit, &i.CreatedAt, &i.Provider, &i.Kind, ) return i, err } const listResourceKeyLabels = `-- name: ListResourceKeyLabels :many SELECT rk.resource_key, rk.display_name, rk.unit, COALESCE(p.display_name, '') AS provider_display_name FROM core.resource_keys rk LEFT JOIN core.providers p ON p.slug = rk.provider ORDER BY rk.resource_key ASC ` type ListResourceKeyLabelsRow struct { ResourceKey string `json:"resource_key"` DisplayName string `json:"display_name"` Unit string `json:"unit"` ProviderDisplayName string `json:"provider_display_name"` } // Display metadata for entitlement rendering: each key's human-friendly // label plus its owning integration's display name. LEFT JOIN because // provider NULL = platform-owned/pooled (see the resource_keys DDL // comment); such keys render un-attributed. func (q *Queries) ListResourceKeyLabels(ctx context.Context) ([]ListResourceKeyLabelsRow, error) { rows, err := q.db.QueryContext(ctx, listResourceKeyLabels) if err != nil { return nil, err } defer rows.Close() items := []ListResourceKeyLabelsRow{} for rows.Next() { var i ListResourceKeyLabelsRow if err := rows.Scan( &i.ResourceKey, &i.DisplayName, &i.Unit, &i.ProviderDisplayName, ); 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 listResourceKeys = `-- name: ListResourceKeys :many SELECT resource_key, display_name, description, unit, created_at, provider, kind FROM core.resource_keys ORDER BY resource_key ASC ` func (q *Queries) ListResourceKeys(ctx context.Context) ([]ResourceKey, error) { rows, err := q.db.QueryContext(ctx, listResourceKeys) if err != nil { return nil, err } defer rows.Close() items := []ResourceKey{} for rows.Next() { var i ResourceKey if err := rows.Scan( &i.ResourceKey, &i.DisplayName, &i.Description, &i.Unit, &i.CreatedAt, &i.Provider, &i.Kind, ); 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 }