29 lines
1.2 KiB
Go
29 lines
1.2 KiB
Go
package work
|
|
|
|
import "git.cin.su/m/Assistant/contracts/world"
|
|
|
|
type FreshnessRequirementMode string
|
|
type FreshnessFallbackPolicy string
|
|
|
|
const (
|
|
FreshnessAny FreshnessRequirementMode = "ANY"
|
|
FreshnessPreferCurrent FreshnessRequirementMode = "PREFER_CURRENT"
|
|
FreshnessRequireCurrent FreshnessRequirementMode = "REQUIRE_CURRENT"
|
|
FreshnessRequireWithinAge FreshnessRequirementMode = "REQUIRE_WITHIN_AGE"
|
|
FreshnessRequireVersionMatch FreshnessRequirementMode = "REQUIRE_VERSION_MATCH"
|
|
FreshnessLiveRequired FreshnessRequirementMode = "LIVE_REQUIRED"
|
|
FallbackAllowStaleDisclosure FreshnessFallbackPolicy = "ALLOW_STALE_WITH_DISCLOSURE"
|
|
FallbackHypothesisOnly FreshnessFallbackPolicy = "USE_AS_HYPOTHESIS_ONLY"
|
|
FallbackWaitForSource FreshnessFallbackPolicy = "WAIT_FOR_SOURCE"
|
|
FallbackAskOwner FreshnessFallbackPolicy = "ASK_OWNER"
|
|
FallbackStopUnknown FreshnessFallbackPolicy = "STOP_WITH_UNKNOWN"
|
|
)
|
|
|
|
type TaskFreshnessRequirement struct {
|
|
Mode FreshnessRequirementMode
|
|
MaximumAgeMillis *int64
|
|
RequiredVersionRefs []world.SemanticReference
|
|
RevalidationRequired bool
|
|
FallbackPolicy FreshnessFallbackPolicy
|
|
}
|