Something went wrong on our end
-
Volker Schukai authoredVolker Schukai authored
runnable.go 536 B
// Copyright 2023 schukai GmbH
// SPDX-License-Identifier: AGPL-3.0
package jobqueue
import (
"context"
)
type ResultStatus int
const (
ResultStatusSuccess ResultStatus = iota
ResultStatusFailed
)
type RunGenericResult interface {
GetStatus() ResultStatus
}
type RunResult[T any] struct {
Status ResultStatus
Data T
}
func (r RunResult[T]) GetStatus() ResultStatus {
return r.Status
}
type Runnable[T any] interface {
Run(ctx context.Context) (RunResult[T], error)
GetType() string
GetPersistence() RunnableImport
}