agent/taskengine/taskerrors/commander.go (95 lines of code) (raw):

package taskerrors import ( "fmt" "strings" ) type CommanderError struct { Code string SubCode string Message string } // Code const ( errCodeCommanderNotFound = "CommanderNotFound" errCodeCommanderStart = "StartCommanderFailed" errCodeCommanderTask = "CommanderTaskError" errCodeIpcError = "IpcError" ) // SubCode const ( // CommanderNotFound errSubCodeLoadCommanderFail = "LoadCommanderFailed" // StartCommanderFailed errSubCodeClientNotCreated = "ClientNotCreated" errSubCodeCreateClientFail = "CreateClientFailed" errSubCodeStartProcessFail = "StartProcessFailed" errSubCodeAttachProcessFail = "AttachProcessFailed" // CommanderTaskError errSubCodeStatusUpdateTimeout = "StatusUpdateTimeout" errSubCodeCommanderExit = "CommanderExit" // IpcError errSubCodeRequestError = "RequestError" ) func NewCommanderError(code, subcode, message string) *CommanderError { return &CommanderError{ Code: code, SubCode: subcode, Message: message, } } func (e *CommanderError) Error() string { return fmt.Sprintf("%s.%s: %s", e.Code, e.SubCode, e.Message) } func (e *CommanderError) SubMessage() string { return fmt.Sprintf("%s: %s", e.SubCode, e.Message) } func NewLoadCommanderFailedError(message ...string) *CommanderError { return &CommanderError{ Code: errCodeCommanderNotFound, SubCode: errSubCodeLoadCommanderFail, Message: strings.Join(message, ". "), } } func NewClientNotCreatedError(message ...string) *CommanderError { return &CommanderError{ Code: errCodeCommanderStart, SubCode: errSubCodeClientNotCreated, Message: strings.Join(message, ". "), } } func NewCreateClientFailedError(message ...string) *CommanderError { return &CommanderError{ Code: errCodeCommanderStart, SubCode: errSubCodeCreateClientFail, Message: strings.Join(message, ". "), } } func NewStartProcessFailedError(message ...string) *CommanderError { return &CommanderError{ Code: errCodeCommanderStart, SubCode: errSubCodeStartProcessFail, Message: strings.Join(message, ". "), } } func NewAttachProcessFailedError(message ...string) *CommanderError { return &CommanderError{ Code: errCodeCommanderStart, SubCode: errSubCodeAttachProcessFail, Message: strings.Join(message, ". "), } } func NewIpcRequestFailedError(message ...string) *CommanderError { return &CommanderError{ Code: errCodeIpcError, SubCode: errSubCodeRequestError, Message: strings.Join(message, ". "), } } func NewStatusUpdateTimeoutError(message ...string) *CommanderError { return &CommanderError{ Code: errCodeCommanderTask, SubCode: errSubCodeStatusUpdateTimeout, Message: strings.Join(message, ". "), } } func NewCommanderExitError(message ...string) *CommanderError { return &CommanderError{ Code: errCodeCommanderTask, SubCode: errSubCodeCommanderExit, Message: strings.Join(message, ". "), } }