opencode_offline/internal/db/messages.sql.go

200 lines
4.4 KiB
Go
Raw Normal View History

2025-03-24 05:25:31 +08:00
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.29.0
2025-03-24 05:25:31 +08:00
// source: messages.sql
package db
import (
"context"
2025-04-12 08:01:45 +08:00
"database/sql"
2025-03-24 05:25:31 +08:00
)
const createMessage = `-- name: CreateMessage :one
INSERT INTO messages (
id,
session_id,
2025-03-28 05:35:48 +08:00
role,
2025-04-03 21:20:15 +08:00
parts,
2025-05-14 02:08:43 +08:00
model
2025-03-24 05:25:31 +08:00
) VALUES (
2025-05-14 02:08:43 +08:00
?, ?, ?, ?, ?
2025-03-24 05:25:31 +08:00
)
2025-04-12 08:01:45 +08:00
RETURNING id, session_id, role, parts, model, created_at, updated_at, finished_at
2025-03-24 05:25:31 +08:00
`
type CreateMessageParams struct {
2025-04-12 08:01:45 +08:00
ID string `json:"id"`
SessionID string `json:"session_id"`
Role string `json:"role"`
Parts string `json:"parts"`
Model sql.NullString `json:"model"`
2025-03-24 05:25:31 +08:00
}
func (q *Queries) CreateMessage(ctx context.Context, arg CreateMessageParams) (Message, error) {
2025-03-28 05:35:48 +08:00
row := q.queryRow(ctx, q.createMessageStmt, createMessage,
arg.ID,
arg.SessionID,
arg.Role,
2025-04-03 21:20:15 +08:00
arg.Parts,
2025-04-12 08:01:45 +08:00
arg.Model,
2025-03-28 05:35:48 +08:00
)
2025-03-24 05:25:31 +08:00
var i Message
err := row.Scan(
&i.ID,
&i.SessionID,
2025-03-28 05:35:48 +08:00
&i.Role,
2025-04-03 21:20:15 +08:00
&i.Parts,
2025-04-12 08:01:45 +08:00
&i.Model,
2025-03-24 05:25:31 +08:00
&i.CreatedAt,
&i.UpdatedAt,
2025-04-12 08:01:45 +08:00
&i.FinishedAt,
2025-03-24 05:25:31 +08:00
)
return i, err
}
const deleteMessage = `-- name: DeleteMessage :exec
DELETE FROM messages
WHERE id = ?
`
func (q *Queries) DeleteMessage(ctx context.Context, id string) error {
_, err := q.exec(ctx, q.deleteMessageStmt, deleteMessage, id)
return err
}
const deleteSessionMessages = `-- name: DeleteSessionMessages :exec
DELETE FROM messages
WHERE session_id = ?
`
func (q *Queries) DeleteSessionMessages(ctx context.Context, sessionID string) error {
_, err := q.exec(ctx, q.deleteSessionMessagesStmt, deleteSessionMessages, sessionID)
return err
}
const getMessage = `-- name: GetMessage :one
2025-04-12 08:01:45 +08:00
SELECT id, session_id, role, parts, model, created_at, updated_at, finished_at
2025-03-24 05:25:31 +08:00
FROM messages
WHERE id = ? LIMIT 1
`
func (q *Queries) GetMessage(ctx context.Context, id string) (Message, error) {
row := q.queryRow(ctx, q.getMessageStmt, getMessage, id)
var i Message
err := row.Scan(
&i.ID,
&i.SessionID,
2025-03-28 05:35:48 +08:00
&i.Role,
2025-04-03 21:20:15 +08:00
&i.Parts,
2025-04-12 08:01:45 +08:00
&i.Model,
2025-03-24 05:25:31 +08:00
&i.CreatedAt,
&i.UpdatedAt,
2025-04-12 08:01:45 +08:00
&i.FinishedAt,
2025-03-24 05:25:31 +08:00
)
return i, err
}
const listMessagesBySession = `-- name: ListMessagesBySession :many
2025-04-12 08:01:45 +08:00
SELECT id, session_id, role, parts, model, created_at, updated_at, finished_at
2025-03-24 05:25:31 +08:00
FROM messages
WHERE session_id = ?
ORDER BY created_at ASC
`
func (q *Queries) ListMessagesBySession(ctx context.Context, sessionID string) ([]Message, error) {
rows, err := q.query(ctx, q.listMessagesBySessionStmt, listMessagesBySession, sessionID)
if err != nil {
return nil, err
}
defer rows.Close()
items := []Message{}
for rows.Next() {
var i Message
if err := rows.Scan(
&i.ID,
&i.SessionID,
2025-03-28 05:35:48 +08:00
&i.Role,
2025-04-03 21:20:15 +08:00
&i.Parts,
2025-04-12 08:01:45 +08:00
&i.Model,
2025-03-24 05:25:31 +08:00
&i.CreatedAt,
&i.UpdatedAt,
2025-04-12 08:01:45 +08:00
&i.FinishedAt,
2025-03-24 05:25:31 +08:00
); 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
}
2025-03-28 05:35:48 +08:00
const listMessagesBySessionAfter = `-- name: ListMessagesBySessionAfter :many
SELECT id, session_id, role, parts, model, created_at, updated_at, finished_at
FROM messages
WHERE session_id = ? AND created_at > ?
ORDER BY created_at ASC
`
type ListMessagesBySessionAfterParams struct {
SessionID string `json:"session_id"`
2025-05-14 02:08:43 +08:00
CreatedAt string `json:"created_at"`
}
func (q *Queries) ListMessagesBySessionAfter(ctx context.Context, arg ListMessagesBySessionAfterParams) ([]Message, error) {
rows, err := q.query(ctx, q.listMessagesBySessionAfterStmt, listMessagesBySessionAfter, arg.SessionID, arg.CreatedAt)
if err != nil {
return nil, err
}
defer rows.Close()
items := []Message{}
for rows.Next() {
var i Message
if err := rows.Scan(
&i.ID,
&i.SessionID,
&i.Role,
&i.Parts,
&i.Model,
&i.CreatedAt,
&i.UpdatedAt,
&i.FinishedAt,
); 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
}
2025-03-28 05:35:48 +08:00
const updateMessage = `-- name: UpdateMessage :exec
UPDATE messages
SET
2025-04-03 21:20:15 +08:00
parts = ?,
2025-04-12 08:01:45 +08:00
finished_at = ?,
2025-05-14 02:08:43 +08:00
updated_at = strftime('%Y-%m-%dT%H:%M:%f000Z', 'now')
2025-03-28 05:35:48 +08:00
WHERE id = ?
`
type UpdateMessageParams struct {
2025-05-14 02:08:43 +08:00
Parts string `json:"parts"`
FinishedAt sql.NullString `json:"finished_at"`
ID string `json:"id"`
2025-03-28 05:35:48 +08:00
}
func (q *Queries) UpdateMessage(ctx context.Context, arg UpdateMessageParams) error {
2025-04-12 08:01:45 +08:00
_, err := q.exec(ctx, q.updateMessageStmt, updateMessage, arg.Parts, arg.FinishedAt, arg.ID)
2025-03-28 05:35:48 +08:00
return err
}