mirror of
https://github.com/zitadel/zitadel.git
synced 2025-10-24 07:09:09 +00:00
Init (#17)
* add basic gitignore * init go mod * add semrel and badges * add error pkg * added config pkg * added main cmd structure * return error on file not found and added log ids and messages * add todo for error_creator.go
This commit is contained in:
48
internal/errors/caos_error.go
Normal file
48
internal/errors/caos_error.go
Normal file
@@ -0,0 +1,48 @@
|
||||
package errors
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
)
|
||||
|
||||
var _ Error = (*CaosError)(nil)
|
||||
|
||||
type CaosError struct {
|
||||
Parent error
|
||||
Message string
|
||||
ID string
|
||||
}
|
||||
|
||||
func ThrowError(parent error, id, message string) error {
|
||||
return createCaosError(parent, id, message)
|
||||
}
|
||||
|
||||
func createCaosError(parent error, id, message string) *CaosError {
|
||||
return &CaosError{
|
||||
Parent: parent,
|
||||
ID: id,
|
||||
Message: message,
|
||||
}
|
||||
}
|
||||
|
||||
func (err *CaosError) Error() string {
|
||||
if err.Parent != nil {
|
||||
return fmt.Sprintf("ID=%s Message=%s Parent=(%v)", err.ID, err.Message, err.Parent)
|
||||
}
|
||||
return fmt.Sprintf("ID=%s Message=%s", err.ID, err.Message)
|
||||
}
|
||||
|
||||
func (err *CaosError) Unwrap() error {
|
||||
return err.GetParent()
|
||||
}
|
||||
|
||||
func (err *CaosError) GetParent() error {
|
||||
return err.Parent
|
||||
}
|
||||
|
||||
func (err *CaosError) GetMessage() string {
|
||||
return err.Message
|
||||
}
|
||||
|
||||
func (err *CaosError) GetID() string {
|
||||
return err.ID
|
||||
}
|
||||
Reference in New Issue
Block a user