66 lines
2.1 KiB
Go
66 lines
2.1 KiB
Go
package egoscale
|
|
|
|
import (
|
|
"encoding/json"
|
|
)
|
|
|
|
// AsyncJobResult represents an asynchronous job result
|
|
type AsyncJobResult struct {
|
|
AccountID string `json:"accountid"`
|
|
Cmd string `json:"cmd"`
|
|
Created string `json:"created"`
|
|
JobInstanceID string `json:"jobinstanceid"`
|
|
JobInstanceType string `json:"jobinstancetype"`
|
|
JobProcStatus int `json:"jobprocstatus"`
|
|
JobResult *json.RawMessage `json:"jobresult"`
|
|
JobResultCode int `json:"jobresultcode"`
|
|
JobResultType string `json:"jobresulttype"`
|
|
JobStatus JobStatusType `json:"jobstatus"`
|
|
UserID string `json:"userid"`
|
|
JobID string `json:"jobid"`
|
|
}
|
|
|
|
// QueryAsyncJobResult represents a query to fetch the status of async job
|
|
//
|
|
// CloudStack API: https://cloudstack.apache.org/api/apidocs-4.10/apis/queryAsyncJobResult.html
|
|
type QueryAsyncJobResult struct {
|
|
JobID string `json:"jobid"`
|
|
}
|
|
|
|
func (*QueryAsyncJobResult) name() string {
|
|
return "queryAsyncJobResult"
|
|
}
|
|
|
|
func (*QueryAsyncJobResult) response() interface{} {
|
|
return new(QueryAsyncJobResultResponse)
|
|
}
|
|
|
|
// QueryAsyncJobResultResponse represents the current status of an asynchronous job
|
|
type QueryAsyncJobResultResponse AsyncJobResult
|
|
|
|
// ListAsyncJobs list the asynchronous jobs
|
|
//
|
|
// CloudStack API: https://cloudstack.apache.org/api/apidocs-4.10/apis/listAsyncJobs.html
|
|
type ListAsyncJobs struct {
|
|
Account string `json:"account,omitempty"`
|
|
DomainID string `json:"domainid,omitempty"`
|
|
IsRecursive bool `json:"isrecursive,omitempty"`
|
|
Keyword string `json:"keyword,omitempty"`
|
|
Page int `json:"page,omitempty"`
|
|
PageSize int `json:"pagesize,omitempty"`
|
|
StartDate string `json:"startdate,omitempty"`
|
|
}
|
|
|
|
func (*ListAsyncJobs) name() string {
|
|
return "listAsyncJobs"
|
|
}
|
|
|
|
func (*ListAsyncJobs) response() interface{} {
|
|
return new(ListAsyncJobsResponse)
|
|
}
|
|
|
|
// ListAsyncJobsResponse represents a list of job results
|
|
type ListAsyncJobsResponse struct {
|
|
Count int `json:"count"`
|
|
AsyncJobs []AsyncJobResult `json:"asyncjobs"`
|
|
}
|