models

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 24, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ToTaskDefinitions

func ToTaskDefinitions(models []TaskDefinition) ([]pkg.TaskDefinition, error)

func ToTaskInstances

func ToTaskInstances(taskInstanceModels []TaskInstance) ([]pkg.TaskInstance, error)

Types

type CronTrigger

type CronTrigger struct {
	Id               string          `json:"id" gorm:"primaryKey"`
	CreatedAt        int64           `json:"created_at,string" gorm:"autoCreateTime:nano"`
	UpdatedAt        int64           `json:"updated_at,string" gorm:"autoUpdateTime:nano"`
	Expression       string          `json:"expression"`
	TaskDefinitionId *uuid.UUID      `json:"task_definition_id"`
	TaskDefinition   *TaskDefinition `json:"task"`
}

func GetCronTriggerModelFromTrigger

func GetCronTriggerModelFromTrigger(trigger *pkg.CronTrigger) (*CronTrigger, error)

type ExecuteOnceTrigger

type ExecuteOnceTrigger struct {
	Id               string          `json:"id" gorm:"primaryKey"`
	CreatedAt        int64           `json:"created_at,string" gorm:"autoCreateTime:nano"`
	UpdatedAt        int64           `json:"updated_at,string" gorm:"autoUpdateTime:nano"`
	FireAt           time.Time       `json:"fire_at"`
	TaskDefinitionId *uuid.UUID      `json:"task_definition_id"`
	TaskDefinition   *TaskDefinition `json:"task"`
}

func GetExecuteOnceTriggerModelFromTrigger

func GetExecuteOnceTriggerModelFromTrigger(trigger *pkg.ExecuteOnceTrigger) (*ExecuteOnceTrigger, error)

type TaskDefinition

type TaskDefinition struct {
	Id                  *uuid.UUID          `json:"id" gorm:"primaryKey"`
	CreatedAt           int64               `json:"created_at,string" gorm:"autoCreateTime:nano"`
	UpdatedAt           int64               `json:"updated_at,string" gorm:"autoUpdateTime:nano"`
	Metadata            gormjsonb.JSONB     `json:"metadata" gorm:"type:jsonb"`
	ExpireAfter         *time.Duration      `json:"expire_after"`
	ExpireAfterInterval *string             `json:"expire_after_interval"`
	InProgress          bool                `json:"in_progress_at"`
	LastFireTime        *time.Time          `json:"last_fire_time"`
	NextFireTime        *time.Time          `json:"next_fire_time"`
	ExecuteOnceTrigger  *ExecuteOnceTrigger `json:"execute_once_trigger" gorm:"foreignKey:Id"`
	CronTrigger         *CronTrigger        `json:"cron_trigger" gorm:"foreignKey:Id"`
	CompletedAt         *time.Time          `json:"completed_at"`
	TaskInstances       []TaskInstance      `json:"task_instances"`
	Recurring           bool
}

func GetTaskDefinitionModelFromTaskDefinition

func GetTaskDefinitionModelFromTaskDefinition(task pkg.TaskDefinition) (*TaskDefinition, error)

func (*TaskDefinition) BeforeCreate added in v1.0.3

func (t *TaskDefinition) BeforeCreate(tx *gorm.DB) error

func (TaskDefinition) ToTaskDefinition

func (t TaskDefinition) ToTaskDefinition() (pkg.TaskDefinition, error)

type TaskInstance

type TaskInstance struct {
	Id               *uuid.UUID      `json:"id" gorm:"primaryKey"`
	CreatedAt        int64           `json:"created_at,string" gorm:"autoCreateTime:nano"`
	UpdatedAt        int64           `json:"updated_at,string" gorm:"autoUpdateTime:nano"`
	ExpiresAt        *time.Time      `json:"expires_at"`
	ExecuteAt        *time.Time      `json:"execute_at"`
	StartedAt        *time.Time      `json:"started_at"`
	CompletedAt      *time.Time      `json:"completed_at"`
	TaskDefinitionId *uuid.UUID      `json:"task_definition_id"`
	TaskDefinition   *TaskDefinition `json:"task_definition"`
}

func GetTaskInstanceModelFromTaskInstance

func GetTaskInstanceModelFromTaskInstance(taskInstance pkg.TaskInstance) (*TaskInstance, error)

func (*TaskInstance) BeforeCreate added in v1.0.3

func (t *TaskInstance) BeforeCreate(tx *gorm.DB) error

func (TaskInstance) ToTaskInstance

func (t TaskInstance) ToTaskInstance() (pkg.TaskInstance, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL