Adding queues and storage is now postgres only
This commit is contained in:
parent
7ec0ce5a45
commit
1c2472cc2c
11 changed files with 368 additions and 31 deletions
36
storage/inboundJobs.go
Normal file
36
storage/inboundJobs.go
Normal file
|
@ -0,0 +1,36 @@
|
|||
package storage
|
||||
|
||||
import (
|
||||
"time"
|
||||
)
|
||||
|
||||
// Auto-generate string names for the various constants
|
||||
//go:generate stringer -type InboundJobSource
|
||||
|
||||
type InboundJobSource uint8
|
||||
|
||||
// TODO: Adjust and expand these constants later, depending on sources
|
||||
const (
|
||||
InJobSourceAccInbox InboundJobSource = iota
|
||||
InJobSourceServerInbox
|
||||
InJobSourceApiMasto
|
||||
InJobSourceApiLinstrom
|
||||
)
|
||||
|
||||
// Store inbound jobs from api and ap in the db until they finished processing
|
||||
// Ensures data consistency in case the server is forced to restart unexpectedly
|
||||
// No DeletedAt field since don't want completed jobs to linger in the db for any longer than necessary
|
||||
type InboundJob struct {
|
||||
ID uint `gorm:"primarykey"`
|
||||
CreatedAt time.Time
|
||||
// Raw data, could be json or gob data, check source for how to interpret
|
||||
RawData []byte
|
||||
// Where this job is coming from. Important for figuring out how to decode the raw data and what to do with it
|
||||
Source InboundJobSource
|
||||
|
||||
// Section: Various data
|
||||
// TODO: Expand based on needs
|
||||
|
||||
// If from an inbox, include the owner id here
|
||||
InboxOwner *string
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue