github.com/navikt/knorten@v0.0.0-20240419132333-1333f46ed8b6/pkg/database/gensql/events.sql.go (about)

     1  // Code generated by sqlc. DO NOT EDIT.
     2  // source: events.sql
     3  
     4  package gensql
     5  
     6  import (
     7  	"context"
     8  	"database/sql"
     9  	"encoding/json"
    10  
    11  	"github.com/google/uuid"
    12  )
    13  
    14  const eventCreate = `-- name: EventCreate :exec
    15  INSERT INTO Events (owner, type, payload, status, deadline)
    16  VALUES ($1,
    17          $2,
    18          $3,
    19          'new',
    20          $4)
    21  `
    22  
    23  type EventCreateParams struct {
    24  	Owner    string
    25  	Type     string
    26  	Payload  json.RawMessage
    27  	Deadline string
    28  }
    29  
    30  func (q *Queries) EventCreate(ctx context.Context, arg EventCreateParams) error {
    31  	_, err := q.db.ExecContext(ctx, eventCreate,
    32  		arg.Owner,
    33  		arg.Type,
    34  		arg.Payload,
    35  		arg.Deadline,
    36  	)
    37  	return err
    38  }
    39  
    40  const eventGet = `-- name: EventGet :one
    41  SELECT id, type, payload, status, deadline, created_at, updated_at, owner, retry_count
    42  FROM Events
    43  WHERE id = $1
    44  `
    45  
    46  func (q *Queries) EventGet(ctx context.Context, id uuid.UUID) (Event, error) {
    47  	row := q.db.QueryRowContext(ctx, eventGet, id)
    48  	var i Event
    49  	err := row.Scan(
    50  		&i.ID,
    51  		&i.Type,
    52  		&i.Payload,
    53  		&i.Status,
    54  		&i.Deadline,
    55  		&i.CreatedAt,
    56  		&i.UpdatedAt,
    57  		&i.Owner,
    58  		&i.RetryCount,
    59  	)
    60  	return i, err
    61  }
    62  
    63  const eventIncrementRetryCount = `-- name: EventIncrementRetryCount :exec
    64  UPDATE events
    65  SET retry_count = retry_count + 1
    66  WHERE id = $1
    67  `
    68  
    69  func (q *Queries) EventIncrementRetryCount(ctx context.Context, id uuid.UUID) error {
    70  	_, err := q.db.ExecContext(ctx, eventIncrementRetryCount, id)
    71  	return err
    72  }
    73  
    74  const eventLogCreate = `-- name: EventLogCreate :exec
    75  INSERT INTO Event_Logs (event_id, log_type, message)
    76  VALUES ($1, $2, $3)
    77  `
    78  
    79  type EventLogCreateParams struct {
    80  	EventID uuid.UUID
    81  	LogType string
    82  	Message string
    83  }
    84  
    85  func (q *Queries) EventLogCreate(ctx context.Context, arg EventLogCreateParams) error {
    86  	_, err := q.db.ExecContext(ctx, eventLogCreate, arg.EventID, arg.LogType, arg.Message)
    87  	return err
    88  }
    89  
    90  const eventLogsForEventGet = `-- name: EventLogsForEventGet :many
    91  SELECT id, event_id, log_type, message, created_at
    92  FROM event_logs
    93  WHERE event_id = $1
    94  ORDER BY created_at DESC
    95  `
    96  
    97  func (q *Queries) EventLogsForEventGet(ctx context.Context, id uuid.UUID) ([]EventLog, error) {
    98  	rows, err := q.db.QueryContext(ctx, eventLogsForEventGet, id)
    99  	if err != nil {
   100  		return nil, err
   101  	}
   102  	defer rows.Close()
   103  	items := []EventLog{}
   104  	for rows.Next() {
   105  		var i EventLog
   106  		if err := rows.Scan(
   107  			&i.ID,
   108  			&i.EventID,
   109  			&i.LogType,
   110  			&i.Message,
   111  			&i.CreatedAt,
   112  		); err != nil {
   113  			return nil, err
   114  		}
   115  		items = append(items, i)
   116  	}
   117  	if err := rows.Close(); err != nil {
   118  		return nil, err
   119  	}
   120  	if err := rows.Err(); err != nil {
   121  		return nil, err
   122  	}
   123  	return items, nil
   124  }
   125  
   126  const eventSetStatus = `-- name: EventSetStatus :exec
   127  UPDATE Events
   128  SET status = $1
   129  WHERE id = $2
   130  `
   131  
   132  type EventSetStatusParams struct {
   133  	Status string
   134  	ID     uuid.UUID
   135  }
   136  
   137  func (q *Queries) EventSetStatus(ctx context.Context, arg EventSetStatusParams) error {
   138  	_, err := q.db.ExecContext(ctx, eventSetStatus, arg.Status, arg.ID)
   139  	return err
   140  }
   141  
   142  const eventsByOwnerGet = `-- name: EventsByOwnerGet :many
   143  SELECT id, type, payload, status, deadline, created_at, updated_at, owner, retry_count
   144  FROM Events
   145  WHERE owner = $1
   146  ORDER BY updated_at DESC
   147  LIMIT $2
   148  `
   149  
   150  type EventsByOwnerGetParams struct {
   151  	Owner string
   152  	Lim   sql.NullInt32
   153  }
   154  
   155  func (q *Queries) EventsByOwnerGet(ctx context.Context, arg EventsByOwnerGetParams) ([]Event, error) {
   156  	rows, err := q.db.QueryContext(ctx, eventsByOwnerGet, arg.Owner, arg.Lim)
   157  	if err != nil {
   158  		return nil, err
   159  	}
   160  	defer rows.Close()
   161  	items := []Event{}
   162  	for rows.Next() {
   163  		var i Event
   164  		if err := rows.Scan(
   165  			&i.ID,
   166  			&i.Type,
   167  			&i.Payload,
   168  			&i.Status,
   169  			&i.Deadline,
   170  			&i.CreatedAt,
   171  			&i.UpdatedAt,
   172  			&i.Owner,
   173  			&i.RetryCount,
   174  		); err != nil {
   175  			return nil, err
   176  		}
   177  		items = append(items, i)
   178  	}
   179  	if err := rows.Close(); err != nil {
   180  		return nil, err
   181  	}
   182  	if err := rows.Err(); err != nil {
   183  		return nil, err
   184  	}
   185  	return items, nil
   186  }
   187  
   188  const eventsGetType = `-- name: EventsGetType :many
   189  SELECT id, type, payload, status, deadline, created_at, updated_at, owner, retry_count
   190  FROM Events
   191  WHERE type = $1
   192  `
   193  
   194  func (q *Queries) EventsGetType(ctx context.Context, eventType string) ([]Event, error) {
   195  	rows, err := q.db.QueryContext(ctx, eventsGetType, eventType)
   196  	if err != nil {
   197  		return nil, err
   198  	}
   199  	defer rows.Close()
   200  	items := []Event{}
   201  	for rows.Next() {
   202  		var i Event
   203  		if err := rows.Scan(
   204  			&i.ID,
   205  			&i.Type,
   206  			&i.Payload,
   207  			&i.Status,
   208  			&i.Deadline,
   209  			&i.CreatedAt,
   210  			&i.UpdatedAt,
   211  			&i.Owner,
   212  			&i.RetryCount,
   213  		); err != nil {
   214  			return nil, err
   215  		}
   216  		items = append(items, i)
   217  	}
   218  	if err := rows.Close(); err != nil {
   219  		return nil, err
   220  	}
   221  	if err := rows.Err(); err != nil {
   222  		return nil, err
   223  	}
   224  	return items, nil
   225  }
   226  
   227  const eventsProcessingGet = `-- name: EventsProcessingGet :many
   228  SELECT id, type, payload, status, deadline, created_at, updated_at, owner, retry_count
   229  FROM events
   230  WHERE status = 'processing'
   231  ORDER BY created_at DESC
   232  `
   233  
   234  func (q *Queries) EventsProcessingGet(ctx context.Context) ([]Event, error) {
   235  	rows, err := q.db.QueryContext(ctx, eventsProcessingGet)
   236  	if err != nil {
   237  		return nil, err
   238  	}
   239  	defer rows.Close()
   240  	items := []Event{}
   241  	for rows.Next() {
   242  		var i Event
   243  		if err := rows.Scan(
   244  			&i.ID,
   245  			&i.Type,
   246  			&i.Payload,
   247  			&i.Status,
   248  			&i.Deadline,
   249  			&i.CreatedAt,
   250  			&i.UpdatedAt,
   251  			&i.Owner,
   252  			&i.RetryCount,
   253  		); err != nil {
   254  			return nil, err
   255  		}
   256  		items = append(items, i)
   257  	}
   258  	if err := rows.Close(); err != nil {
   259  		return nil, err
   260  	}
   261  	if err := rows.Err(); err != nil {
   262  		return nil, err
   263  	}
   264  	return items, nil
   265  }
   266  
   267  const eventsReset = `-- name: EventsReset :exec
   268  UPDATE events
   269  SET status = 'pending'
   270  WHERE status = 'processing'
   271  `
   272  
   273  func (q *Queries) EventsReset(ctx context.Context) error {
   274  	_, err := q.db.ExecContext(ctx, eventsReset)
   275  	return err
   276  }
   277  
   278  const eventsUpcomingGet = `-- name: EventsUpcomingGet :many
   279  SELECT id, type, payload, status, deadline, created_at, updated_at, owner, retry_count
   280  FROM Events
   281  WHERE status = 'new'
   282     OR status = 'pending'
   283     OR status = 'deadline_reached'
   284  ORDER BY created_at ASC
   285  `
   286  
   287  func (q *Queries) EventsUpcomingGet(ctx context.Context) ([]Event, error) {
   288  	rows, err := q.db.QueryContext(ctx, eventsUpcomingGet)
   289  	if err != nil {
   290  		return nil, err
   291  	}
   292  	defer rows.Close()
   293  	items := []Event{}
   294  	for rows.Next() {
   295  		var i Event
   296  		if err := rows.Scan(
   297  			&i.ID,
   298  			&i.Type,
   299  			&i.Payload,
   300  			&i.Status,
   301  			&i.Deadline,
   302  			&i.CreatedAt,
   303  			&i.UpdatedAt,
   304  			&i.Owner,
   305  			&i.RetryCount,
   306  		); err != nil {
   307  			return nil, err
   308  		}
   309  		items = append(items, i)
   310  	}
   311  	if err := rows.Close(); err != nil {
   312  		return nil, err
   313  	}
   314  	if err := rows.Err(); err != nil {
   315  		return nil, err
   316  	}
   317  	return items, nil
   318  }