// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.27.0 // source: clean.sql package repository import ( "context" "github.com/jackc/pgx/v5/pgtype" ) const addDocumentCleanEntry = `-- name: AddDocumentCleanEntry :exec INSERT INTO documentCleans (documentId, version, bucket, key) VALUES ($1, $2, $3, $4) ` type AddDocumentCleanEntryParams struct { Documentid pgtype.UUID `db:"documentid"` Version int32 `db:"version"` Bucket string `db:"bucket"` Key string `db:"key"` } // AddDocumentCleanEntry // // INSERT INTO documentCleans (documentId, version, bucket, key) VALUES ($1, $2, $3, $4) func (q *Queries) AddDocumentCleanEntry(ctx context.Context, arg *AddDocumentCleanEntryParams) error { _, err := q.db.Exec(ctx, addDocumentCleanEntry, arg.Documentid, arg.Version, arg.Bucket, arg.Key, ) return err } const getDocumentCleanEntry = `-- name: GetDocumentCleanEntry :one SELECT dc.documentId, dc.bucket, dc.key, dc.version FROM documentCleans AS dc JOIN documents AS d ON d.id = dc.documentId LEFT JOIN collectors as c ON d.jobId = c.jobId LEFT JOIN collectorCurrentActiveVersions as av on c.id = av.collectorId LEFT JOIN collectorMinCleanVersions AS ccv ON c.id = ccv.collectorId and isInVersion(av.id, ccv.addedVersion, ccv.removedVersion) WHERE dc.documentId = $1 and dc.version >= coalesce(ccv.versionId, 1) ORDER BY d.id DESC LIMIT 1 ` type GetDocumentCleanEntryRow struct { Documentid pgtype.UUID `db:"documentid"` Bucket string `db:"bucket"` Key string `db:"key"` Version int32 `db:"version"` } // GetDocumentCleanEntry // // SELECT dc.documentId, dc.bucket, dc.key, dc.version // FROM documentCleans AS dc // JOIN documents AS d ON d.id = dc.documentId // LEFT JOIN collectors as c ON d.jobId = c.jobId // LEFT JOIN collectorCurrentActiveVersions as av on c.id = av.collectorId // LEFT JOIN collectorMinCleanVersions AS ccv ON c.id = ccv.collectorId // and isInVersion(av.id, ccv.addedVersion, ccv.removedVersion) // WHERE dc.documentId = $1 and dc.version >= coalesce(ccv.versionId, 1) // ORDER BY d.id DESC LIMIT 1 func (q *Queries) GetDocumentCleanEntry(ctx context.Context, documentid pgtype.UUID) (*GetDocumentCleanEntryRow, error) { row := q.db.QueryRow(ctx, getDocumentCleanEntry, documentid) var i GetDocumentCleanEntryRow err := row.Scan( &i.Documentid, &i.Bucket, &i.Key, &i.Version, ) return &i, err } const isDocumentClean = `-- name: IsDocumentClean :one SELECT EXISTS( SELECT 1 FROM documentCleans AS dc JOIN documents AS d ON d.id = dc.documentId LEFT JOIN collectors as c ON d.jobId = c.jobId LEFT JOIN collectorCurrentActiveVersions as av on c.id = av.collectorId LEFT JOIN collectorMinCleanVersions AS ccv ON c.id = ccv.collectorId and isInVersion(av.id, ccv.addedVersion, ccv.removedVersion) WHERE dc.documentId = $1 and dc.version >= coalesce(ccv.versionId, 1) ) ` // IsDocumentClean // // SELECT EXISTS( // SELECT 1 // FROM documentCleans AS dc // JOIN documents AS d ON d.id = dc.documentId // LEFT JOIN collectors as c ON d.jobId = c.jobId // LEFT JOIN collectorCurrentActiveVersions as av on c.id = av.collectorId // LEFT JOIN collectorMinCleanVersions AS ccv ON c.id = ccv.collectorId // and isInVersion(av.id, ccv.addedVersion, ccv.removedVersion) // WHERE dc.documentId = $1 and dc.version >= coalesce(ccv.versionId, 1) // ) func (q *Queries) IsDocumentClean(ctx context.Context, documentid pgtype.UUID) (bool, error) { row := q.db.QueryRow(ctx, isDocumentClean, documentid) var exists bool err := row.Scan(&exists) return exists, err }