Documentation
¶
Index ¶
- Variables
- func StartJanitor(ctx context.Context, b *InMemoryBackend)
- type AccelerationSettings
- type Handler
- func (h *Handler) ChaosOperations() []string
- func (h *Handler) ChaosRegions() []string
- func (h *Handler) ChaosServiceName() string
- func (h *Handler) ExtractOperation(c *echo.Context) string
- func (h *Handler) ExtractResource(c *echo.Context) string
- func (h *Handler) GetSupportedOperations() []string
- func (h *Handler) Handler() echo.HandlerFunc
- func (h *Handler) MatchPriority() int
- func (h *Handler) Name() string
- func (h *Handler) Reset()
- func (h *Handler) Restore(ctx context.Context, data []byte) error
- func (h *Handler) RouteMatcher() service.Matcher
- func (h *Handler) Snapshot(ctx context.Context) []byte
- type HopDestination
- type InMemoryBackend
- func (b *InMemoryBackend) AccountID() string
- func (b *InMemoryBackend) AddJobInternal(j *Job)
- func (b *InMemoryBackend) AddJobTemplateInternal(jt *JobTemplate)
- func (b *InMemoryBackend) AddPresetInternal(p *Preset)
- func (b *InMemoryBackend) AddQueueInternal(q *Queue)
- func (b *InMemoryBackend) AdvanceJobPhase() bool
- func (b *InMemoryBackend) AssociateCertificate(certARN string) error
- func (b *InMemoryBackend) CancelJob(id string) error
- func (b *InMemoryBackend) CreateJob(role, queue, jobTemplate string, settings map[string]any, ...) (*Job, error)
- func (b *InMemoryBackend) CreateJobFull(role, queue, jobTemplate string, settings map[string]any, ...) (*Job, error)
- func (b *InMemoryBackend) CreateJobTemplate(name, description, category, queue string, priority int, ...) (*JobTemplate, error)
- func (b *InMemoryBackend) CreatePreset(name, description, category string, settings map[string]any, ...) (*Preset, error)
- func (b *InMemoryBackend) CreateQueue(name, description, pricingPlan, status string, tags map[string]string) (*Queue, error)
- func (b *InMemoryBackend) CreateQueueFull(name, description, pricingPlan, status string, tags map[string]string, ...) (*Queue, error)
- func (b *InMemoryBackend) CreateResourceShare(jobID string) (string, error)
- func (b *InMemoryBackend) DeleteJobTemplate(name string) error
- func (b *InMemoryBackend) DeletePolicy() error
- func (b *InMemoryBackend) DeletePreset(name string) error
- func (b *InMemoryBackend) DeleteQueue(name string) error
- func (b *InMemoryBackend) DisassociateCertificate(certARN string) error
- func (b *InMemoryBackend) GetJob(id string) (*Job, error)
- func (b *InMemoryBackend) GetJobTemplate(name string) (*JobTemplate, error)
- func (b *InMemoryBackend) GetJobsQueryResults(queryID string) []*Job
- func (b *InMemoryBackend) GetPolicy() (*Policy, error)
- func (b *InMemoryBackend) GetPreset(name string) (*Preset, error)
- func (b *InMemoryBackend) GetQueue(name string) (*Queue, error)
- func (b *InMemoryBackend) GetTags(resourceARN string) map[string]string
- func (b *InMemoryBackend) ListJobTemplates() []*JobTemplate
- func (b *InMemoryBackend) ListJobs() []*Job
- func (b *InMemoryBackend) ListJobsFiltered(status, queue, order string) []*Job
- func (b *InMemoryBackend) ListPresets() []*Preset
- func (b *InMemoryBackend) ListQueues() []*Queue
- func (b *InMemoryBackend) PutPolicy(httpInputs, httpsInputs, s3Inputs string) *Policy
- func (b *InMemoryBackend) Region() string
- func (b *InMemoryBackend) Reset()
- func (b *InMemoryBackend) Restore(ctx context.Context, data []byte) error
- func (b *InMemoryBackend) Snapshot(ctx context.Context) []byte
- func (b *InMemoryBackend) StartJobsQuery(filterList []map[string]any, maxResults int, order string) (string, error)
- func (b *InMemoryBackend) SweepExpiredTokens()
- func (b *InMemoryBackend) TagResource(resourceARN string, tags map[string]string)
- func (b *InMemoryBackend) UntagResource(resourceARN string, tagKeys []string)
- func (b *InMemoryBackend) UpdateJob(id, queue string, priority *int, hopDestinations []HopDestination) (*Job, error)
- func (b *InMemoryBackend) UpdateJobTemplate(name, description, category, queue string, priority *int, ...) (*JobTemplate, error)
- func (b *InMemoryBackend) UpdatePreset(name, description, category string, settings map[string]any) (*Preset, error)
- func (b *InMemoryBackend) UpdateQueue(name, description, status string, concurrentJobs *int, ...) (*Queue, error)
- type Job
- type JobMessages
- type JobTemplate
- type JobTiming
- type OutputDetail
- type OutputGroupDetail
- type Policy
- type Preset
- type Provider
- type Queue
- type QueueTransition
- type ReservationPlan
- type ShareDetails
- type StorageBackend
- type VideoDetail
- type WarningGroup
Constants ¶
This section is empty.
Variables ¶
var ( // ErrNotFound is returned when a requested resource does not exist. ErrNotFound = awserr.New("NotFoundException", awserr.ErrNotFound) // ErrAlreadyExists is returned when a resource already exists. ErrAlreadyExists = awserr.New("ConflictException", awserr.ErrConflict) // ErrValidation is returned when request parameters fail validation. ErrValidation = awserr.New("BadRequestException", awserr.ErrInvalidParameter) )
var ErrNilAppContext = errors.New("mediaconvert: nil AppContext")
ErrNilAppContext is returned when Init receives a nil AppContext.
Functions ¶
func StartJanitor ¶
func StartJanitor(ctx context.Context, b *InMemoryBackend)
StartJanitor launches the background goroutine that advances job phases and sweeps expired tokens. It runs until ctx is cancelled.
Types ¶
type AccelerationSettings ¶
type AccelerationSettings struct {
Mode string `json:"mode,omitempty"`
}
AccelerationSettings holds the requested acceleration mode.
type Handler ¶
type Handler struct {
Backend StorageBackend
}
Handler is the Echo HTTP handler for Amazon MediaConvert operations.
func NewHandler ¶
func NewHandler(backend StorageBackend) *Handler
NewHandler creates a new MediaConvert handler.
func (*Handler) ChaosOperations ¶
ChaosOperations returns all operations that can be fault-injected.
func (*Handler) ChaosRegions ¶
ChaosRegions returns all regions this handler instance handles.
func (*Handler) ChaosServiceName ¶
ChaosServiceName returns the lowercase AWS service name for fault rule matching.
func (*Handler) ExtractOperation ¶
ExtractOperation returns the operation name from the request path and method.
func (*Handler) ExtractResource ¶
ExtractResource extracts a resource ID from the request path.
func (*Handler) GetSupportedOperations ¶
GetSupportedOperations returns the list of supported operations.
func (*Handler) Handler ¶
func (h *Handler) Handler() echo.HandlerFunc
Handler returns the Echo handler function.
func (*Handler) MatchPriority ¶
MatchPriority returns the routing priority.
func (*Handler) Reset ¶
func (h *Handler) Reset()
Reset clears all backend state. Implements service.Resettable.
func (*Handler) RouteMatcher ¶
RouteMatcher returns a function that matches MediaConvert requests. MediaConvert uses REST paths prefixed with /2017-08-29/.
func (*Handler) Snapshot ¶
Snapshot implements persistence.Persistable by delegating to the backend.
Without this delegation, cli.go's setupPersistence type-asserts the service.Registerable value returned by Provider.Init (this Handler, not InMemoryBackend) against a Snapshot/Restore interface -- since Handler itself never exposed either method, InMemoryBackend.Snapshot/Restore (persistence.go) were dead code and this service was never actually persisted, despite StorageBackend already declaring the Persistable contract.
type HopDestination ¶
type HopDestination struct {
Queue string `json:"queue,omitempty"`
WaitMinutes int `json:"waitMinutes,omitempty"`
Priority int `json:"priority,omitempty"`
}
HopDestination represents a queue hop destination for a job.
type InMemoryBackend ¶
type InMemoryBackend struct {
// contains filtered or unexported fields
}
InMemoryBackend is the in-memory store for MediaConvert resources.
registry holds every "clean" store.Table (queues, jobTemplates, jobs, presets) so their Reset/Snapshot/Restore collapse to one call each via resetTablesLocked / persistence.go. queueCounters and tokenIndex are "dirty" tables -- their value types carry no natural identity field of their own (see queueJobCounter.queueArn / tokenEntry.token) -- so they are NOT on this registry; persistence.go round-trips them through a throwaway DTO registry instead. queries is a store.Table too (for keyed Get/Put/ Delete) but was never persisted pre-Phase-3.3 and stays that way: it is reset alongside the others but never appears in backendSnapshot. See store_setup.go for the full rationale.
func NewInMemoryBackend ¶
func NewInMemoryBackend(accountID, region string) *InMemoryBackend
NewInMemoryBackend creates a new in-memory MediaConvert backend.
func (*InMemoryBackend) AccountID ¶
func (b *InMemoryBackend) AccountID() string
AccountID returns the account ID configured for this backend.
func (*InMemoryBackend) AddJobInternal ¶
func (b *InMemoryBackend) AddJobInternal(j *Job)
AddJobInternal inserts a job directly into the backend.
func (*InMemoryBackend) AddJobTemplateInternal ¶
func (b *InMemoryBackend) AddJobTemplateInternal(jt *JobTemplate)
AddJobTemplateInternal inserts a job template directly into the backend.
func (*InMemoryBackend) AddPresetInternal ¶
func (b *InMemoryBackend) AddPresetInternal(p *Preset)
AddPresetInternal inserts a preset directly into the backend.
func (*InMemoryBackend) AddQueueInternal ¶
func (b *InMemoryBackend) AddQueueInternal(q *Queue)
AddQueueInternal inserts a queue directly into the backend, bypassing business logic.
func (*InMemoryBackend) AdvanceJobPhase ¶
func (b *InMemoryBackend) AdvanceJobPhase() bool
AdvanceJobPhase advances job phase/status for the janitor. Returns true if any job was advanced.
func (*InMemoryBackend) AssociateCertificate ¶
func (b *InMemoryBackend) AssociateCertificate(certARN string) error
AssociateCertificate registers an ACM certificate ARN with this backend.
func (*InMemoryBackend) CancelJob ¶
func (b *InMemoryBackend) CancelJob(id string) error
CancelJob cancels a job by ID. Only SUBMITTED or PROGRESSING jobs can be canceled.
func (*InMemoryBackend) CreateJob ¶
func (b *InMemoryBackend) CreateJob( role, queue, jobTemplate string, settings map[string]any, tags map[string]string, userMetadata map[string]string, billingTagsSource string, ) (*Job, error)
CreateJob creates a new MediaConvert job.
func (*InMemoryBackend) CreateJobFull ¶
func (b *InMemoryBackend) CreateJobFull( role, queue, jobTemplate string, settings map[string]any, tags map[string]string, userMetadata map[string]string, billingTagsSource, clientRequestToken, accelerationMode, jobEngineVersionReq string, priority int, hopDestinations []HopDestination, ) (*Job, error)
CreateJobFull creates a new MediaConvert job with all optional fields.
func (*InMemoryBackend) CreateJobTemplate ¶
func (b *InMemoryBackend) CreateJobTemplate( name, description, category, queue string, priority int, settings map[string]any, tags map[string]string, ) (*JobTemplate, error)
CreateJobTemplate creates a new MediaConvert job template.
func (*InMemoryBackend) CreatePreset ¶
func (b *InMemoryBackend) CreatePreset( name, description, category string, settings map[string]any, tags map[string]string, ) (*Preset, error)
CreatePreset creates a new MediaConvert output preset.
func (*InMemoryBackend) CreateQueue ¶
func (b *InMemoryBackend) CreateQueue( name, description, pricingPlan, status string, tags map[string]string, ) (*Queue, error)
CreateQueue creates a new MediaConvert queue.
func (*InMemoryBackend) CreateQueueFull ¶
func (b *InMemoryBackend) CreateQueueFull( name, description, pricingPlan, status string, tags map[string]string, concurrentJobs int, reservationPlan *ReservationPlan, serviceOverrides map[string]any, ) (*Queue, error)
CreateQueueFull creates a queue with all optional fields.
func (*InMemoryBackend) CreateResourceShare ¶
func (b *InMemoryBackend) CreateResourceShare(jobID string) (string, error)
CreateResourceShare records a resource-share request for the given job ID. Sets ShareStatus = "SHARED" on the job and populates LastShareDetails.
func (*InMemoryBackend) DeleteJobTemplate ¶
func (b *InMemoryBackend) DeleteJobTemplate(name string) error
DeleteJobTemplate removes a job template by name.
func (*InMemoryBackend) DeletePolicy ¶
func (b *InMemoryBackend) DeletePolicy() error
DeletePolicy removes the account policy.
func (*InMemoryBackend) DeletePreset ¶
func (b *InMemoryBackend) DeletePreset(name string) error
DeletePreset removes a preset by name.
func (*InMemoryBackend) DeleteQueue ¶
func (b *InMemoryBackend) DeleteQueue(name string) error
DeleteQueue removes a queue by name.
func (*InMemoryBackend) DisassociateCertificate ¶
func (b *InMemoryBackend) DisassociateCertificate(certARN string) error
DisassociateCertificate removes an ACM certificate ARN association.
func (*InMemoryBackend) GetJob ¶
func (b *InMemoryBackend) GetJob(id string) (*Job, error)
GetJob returns a job by ID.
func (*InMemoryBackend) GetJobTemplate ¶
func (b *InMemoryBackend) GetJobTemplate(name string) (*JobTemplate, error)
GetJobTemplate returns a job template by name.
func (*InMemoryBackend) GetJobsQueryResults ¶
func (b *InMemoryBackend) GetJobsQueryResults(queryID string) []*Job
GetJobsQueryResults returns jobs matching the stored query for the given ID. If the queryID is unknown (not from a prior StartJobsQuery call), returns empty.
func (*InMemoryBackend) GetPolicy ¶
func (b *InMemoryBackend) GetPolicy() (*Policy, error)
GetPolicy returns the current account policy, or nil if none has been set.
func (*InMemoryBackend) GetPreset ¶
func (b *InMemoryBackend) GetPreset(name string) (*Preset, error)
GetPreset returns a preset by name.
func (*InMemoryBackend) GetQueue ¶
func (b *InMemoryBackend) GetQueue(name string) (*Queue, error)
GetQueue returns a queue by name.
func (*InMemoryBackend) GetTags ¶
func (b *InMemoryBackend) GetTags(resourceARN string) map[string]string
GetTags returns a copy of tags for the given resource ARN.
func (*InMemoryBackend) ListJobTemplates ¶
func (b *InMemoryBackend) ListJobTemplates() []*JobTemplate
ListJobTemplates returns all job templates sorted by name.
func (*InMemoryBackend) ListJobs ¶
func (b *InMemoryBackend) ListJobs() []*Job
ListJobs returns all jobs sorted by creation time (newest first).
func (*InMemoryBackend) ListJobsFiltered ¶
func (b *InMemoryBackend) ListJobsFiltered(status, queue, order string) []*Job
ListJobsFiltered returns jobs filtered by status and/or queue ARN/name, sorted by creation time. order="" or "DESCENDING" → newest first; "ASCENDING" → oldest first.
func (*InMemoryBackend) ListPresets ¶
func (b *InMemoryBackend) ListPresets() []*Preset
ListPresets returns all presets sorted by name.
func (*InMemoryBackend) ListQueues ¶
func (b *InMemoryBackend) ListQueues() []*Queue
ListQueues returns all queues sorted by name.
func (*InMemoryBackend) PutPolicy ¶
func (b *InMemoryBackend) PutPolicy(httpInputs, httpsInputs, s3Inputs string) *Policy
PutPolicy sets the account policy.
func (*InMemoryBackend) Region ¶
func (b *InMemoryBackend) Region() string
Region returns the region configured for this backend.
func (*InMemoryBackend) Reset ¶
func (b *InMemoryBackend) Reset()
Reset clears all stored resources, resetting the backend to its initial state.
func (*InMemoryBackend) Restore ¶
func (b *InMemoryBackend) Restore(ctx context.Context, data []byte) error
Restore loads backend state from a JSON snapshot. It implements persistence.Persistable.
func (*InMemoryBackend) Snapshot ¶
func (b *InMemoryBackend) Snapshot(ctx context.Context) []byte
Snapshot serialises the backend state to JSON. It implements persistence.Persistable.
func (*InMemoryBackend) StartJobsQuery ¶
func (b *InMemoryBackend) StartJobsQuery(filterList []map[string]any, maxResults int, order string) (string, error)
StartJobsQuery stores a jobs query and returns a query ID for deferred retrieval. Filters use key-value pairs where key is a field name (e.g. "queue", "status") and values are the allowed values for that field.
func (*InMemoryBackend) SweepExpiredTokens ¶
func (b *InMemoryBackend) SweepExpiredTokens()
SweepExpiredTokens removes token entries that have exceeded the TTL. Called by the janitor; safe to call externally for testing.
func (*InMemoryBackend) TagResource ¶
func (b *InMemoryBackend) TagResource(resourceARN string, tags map[string]string)
TagResource adds or updates tags for the given resource ARN.
func (*InMemoryBackend) UntagResource ¶
func (b *InMemoryBackend) UntagResource(resourceARN string, tagKeys []string)
UntagResource removes the specified tag keys from the resource ARN.
func (*InMemoryBackend) UpdateJob ¶
func (b *InMemoryBackend) UpdateJob(id, queue string, priority *int, hopDestinations []HopDestination) (*Job, error)
UpdateJob updates a job's priority, queue, and hop destinations.
func (*InMemoryBackend) UpdateJobTemplate ¶
func (b *InMemoryBackend) UpdateJobTemplate( name, description, category, queue string, priority *int, settings map[string]any, ) (*JobTemplate, error)
UpdateJobTemplate updates a job template's description, category, queue, priority, and settings.
func (*InMemoryBackend) UpdatePreset ¶
func (b *InMemoryBackend) UpdatePreset(name, description, category string, settings map[string]any) (*Preset, error)
UpdatePreset updates a preset's description, category, and settings.
func (*InMemoryBackend) UpdateQueue ¶
func (b *InMemoryBackend) UpdateQueue( name, description, status string, concurrentJobs *int, reservationPlanSettings *ReservationPlan, ) (*Queue, error)
UpdateQueue updates a queue's description, status, concurrent-job limit, and reservation plan settings. concurrentJobs and reservationPlanSettings are nil when the caller doesn't want to change that field (matches the real UpdateQueueInput, whose members are all optional).
type Job ¶
type Job struct {
AccelerationSettings *AccelerationSettings `json:"accelerationSettings,omitempty"`
Messages *JobMessages `json:"messages,omitempty"`
Timing *JobTiming `json:"timing,omitempty"`
Settings map[string]any `json:"settings,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
UserMetadata map[string]string `json:"userMetadata,omitempty"`
Arn string `json:"arn"`
ID string `json:"id"`
Queue string `json:"queue,omitempty"`
QueueArn string `json:"queueArn,omitempty"`
Role string `json:"role"`
Status string `json:"status"`
CurrentPhase string `json:"currentPhase,omitempty"`
JobTemplate string `json:"jobTemplate,omitempty"`
ErrorMessage string `json:"errorMessage,omitempty"`
BillingTagsSource string `json:"billingTagsSource,omitempty"`
AccelerationStatus string `json:"accelerationStatus,omitempty"`
StatusUpdateInterval string `json:"statusUpdateInterval,omitempty"`
SimulateReservedQueue string `json:"simulateReservedQueue,omitempty"`
ClientRequestToken string `json:"clientRequestToken,omitempty"`
JobEngineVersionRequested string `json:"jobEngineVersionRequested,omitempty"`
JobEngineVersionUsed string `json:"jobEngineVersionUsed,omitempty"`
OutputGroupDetails []OutputGroupDetail `json:"outputGroupDetails,omitempty"`
QueueTransitions []QueueTransition `json:"queueTransitions,omitempty"`
HopDestinations []HopDestination `json:"hopDestinations,omitempty"`
Warnings []WarningGroup `json:"warnings,omitempty"`
CreatedAt float64 `json:"createdAt"`
ErrorCode int `json:"errorCode,omitempty"`
JobPercentComplete int `json:"jobPercentComplete"`
Priority int `json:"priority"`
RetryCount int `json:"retryCount"`
}
Job represents a MediaConvert transcoding job.
type JobMessages ¶
type JobMessages struct {
Info []string `json:"info,omitempty"`
Warning []string `json:"warning,omitempty"`
}
JobMessages holds informational and warning messages for a job.
type JobTemplate ¶
type JobTemplate struct {
Settings map[string]any `json:"settings,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
Arn string `json:"arn"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
Category string `json:"category,omitempty"`
Queue string `json:"queue,omitempty"`
Type string `json:"type"`
CreatedAt float64 `json:"createdAt"`
LastUpdated float64 `json:"lastUpdated"`
Priority int `json:"priority"`
}
JobTemplate represents a MediaConvert job template.
type JobTiming ¶
type JobTiming struct {
SubmitTime float64 `json:"submitTime,omitempty"`
StartTime float64 `json:"startTime,omitempty"`
FinishTime float64 `json:"finishTime,omitempty"`
}
JobTiming holds timing information for a MediaConvert job.
type OutputDetail ¶
type OutputDetail struct {
VideoDetails *VideoDetail `json:"videoDetails,omitempty"`
DurationInMs int `json:"durationInMs,omitempty"`
}
OutputDetail contains output-level detail for a completed job.
type OutputGroupDetail ¶
type OutputGroupDetail struct {
OutputDetails []OutputDetail `json:"outputDetails,omitempty"`
}
OutputGroupDetail contains details for one output group.
type Policy ¶
type Policy struct {
HTTPInputs string `json:"httpInputs,omitempty"`
HTTPSInputs string `json:"httpsInputs,omitempty"`
S3Inputs string `json:"s3Inputs,omitempty"`
}
Policy represents a MediaConvert account policy.
type Preset ¶
type Preset struct {
Settings map[string]any `json:"settings,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
Arn string `json:"arn"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
Category string `json:"category,omitempty"`
Type string `json:"type"`
CreatedAt float64 `json:"createdAt"`
LastUpdated float64 `json:"lastUpdated"`
}
Preset represents a MediaConvert output preset.
type Provider ¶
type Provider struct{}
Provider implements service.Provider for MediaConvert.
func (*Provider) Init ¶
func (p *Provider) Init(ctx *service.AppContext) (service.Registerable, error)
Init initializes the MediaConvert backend and handler.
type Queue ¶
type Queue struct {
ReservationPlan *ReservationPlan `json:"reservationPlan,omitempty"`
ServiceOverrides map[string]any `json:"serviceOverrides,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
Arn string `json:"arn"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
PricingPlan string `json:"pricingPlan"`
Status string `json:"status"`
Type string `json:"type"`
CreatedAt float64 `json:"createdAt"`
LastUpdated float64 `json:"lastUpdated"`
ProgressingJobsCount int `json:"progressingJobsCount"`
SubmittedJobsCount int `json:"submittedJobsCount"`
ConcurrentJobs int `json:"concurrentJobs,omitempty"`
}
Queue represents a MediaConvert queue.
type QueueTransition ¶
type QueueTransition struct {
SourceQueue string `json:"sourceQueue,omitempty"`
DestinationQueue string `json:"destinationQueue,omitempty"`
Timestamp float64 `json:"timestamp,omitempty"`
}
QueueTransition records a queue change event for a job.
type ReservationPlan ¶
type ReservationPlan struct {
Status string `json:"status,omitempty"`
Commitment string `json:"commitment,omitempty"`
RenewalType string `json:"renewalType,omitempty"`
ExpiresAt float64 `json:"expiresAt,omitempty"`
PurchasedAt float64 `json:"purchasedAt,omitempty"`
ReservedSlots int `json:"reservedSlots,omitempty"`
}
ReservationPlan holds reservation plan details for a queue.
type StorageBackend ¶
type StorageBackend interface {
// Queue operations
CreateQueue(name, description, pricingPlan, status string, tags map[string]string) (*Queue, error)
CreateQueueFull(
name, description, pricingPlan, status string,
tags map[string]string,
concurrentJobs int,
reservationPlan *ReservationPlan,
serviceOverrides map[string]any,
) (*Queue, error)
GetQueue(name string) (*Queue, error)
ListQueues() []*Queue
UpdateQueue(
name, description, status string,
concurrentJobs *int,
reservationPlanSettings *ReservationPlan,
) (*Queue, error)
DeleteQueue(name string) error
// Job Template operations
CreateJobTemplate(
name, description, category, queue string,
priority int,
settings map[string]any,
tags map[string]string,
) (*JobTemplate, error)
GetJobTemplate(name string) (*JobTemplate, error)
ListJobTemplates() []*JobTemplate
UpdateJobTemplate(
name, description, category, queue string,
priority *int,
settings map[string]any,
) (*JobTemplate, error)
DeleteJobTemplate(name string) error
// Job operations
CreateJob(
role, queue, jobTemplate string,
settings map[string]any,
tags map[string]string,
userMetadata map[string]string,
billingTagsSource string,
) (*Job, error)
CreateJobFull(
role, queue, jobTemplate string,
settings map[string]any,
tags map[string]string,
userMetadata map[string]string,
billingTagsSource, clientRequestToken, accelerationMode, jobEngineVersionReq string,
priority int,
hopDestinations []HopDestination,
) (*Job, error)
GetJob(id string) (*Job, error)
ListJobs() []*Job
ListJobsFiltered(status, queue, order string) []*Job
CancelJob(id string) error
UpdateJob(id, queue string, priority *int, hopDestinations []HopDestination) (*Job, error)
// Preset operations
CreatePreset(name, description, category string, settings map[string]any, tags map[string]string) (*Preset, error)
GetPreset(name string) (*Preset, error)
ListPresets() []*Preset
UpdatePreset(name, description, category string, settings map[string]any) (*Preset, error)
DeletePreset(name string) error
// Policy operations
GetPolicy() (*Policy, error)
PutPolicy(httpInputs, httpsInputs, s3Inputs string) *Policy
DeletePolicy() error
// Certificate operations
AssociateCertificate(certARN string) error
DisassociateCertificate(certARN string) error
// Jobs query / resource share operations
GetJobsQueryResults(queryID string) []*Job
StartJobsQuery(filterList []map[string]any, maxResults int, order string) (string, error)
// Tag operations
GetTags(resourceARN string) map[string]string
TagResource(resourceARN string, tags map[string]string)
UntagResource(resourceARN string, tagKeys []string)
// Lifecycle
Reset()
Region() string
AccountID() string
Snapshot(ctx context.Context) []byte
Restore(ctx context.Context, data []byte) error
}
StorageBackend defines the interface for MediaConvert backend implementations. All mutating methods must be safe for concurrent use.
type VideoDetail ¶
type VideoDetail struct {
WidthInPx int `json:"widthInPx,omitempty"`
HeightInPx int `json:"heightInPx,omitempty"`
}
VideoDetail holds video dimension details.
type WarningGroup ¶
WarningGroup represents an aggregated warning count.
Source Files
¶
- certificates.go
- errors.go
- handler.go
- handler_certificates.go
- handler_endpoints.go
- handler_job_templates.go
- handler_jobs.go
- handler_jobs_query.go
- handler_policy.go
- handler_presets.go
- handler_probe.go
- handler_queues.go
- handler_resource_shares.go
- handler_search.go
- handler_tags.go
- handler_versions.go
- interfaces.go
- janitor.go
- job_templates.go
- jobs.go
- jobs_query.go
- models.go
- persistence.go
- policy.go
- presets.go
- provider.go
- queues.go
- resource_shares.go
- store.go
- store_setup.go
- tags.go