* 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:
livio-a
2020-03-19 14:39:06 +01:00
committed by GitHub
parent 661bcfbdec
commit 87d5cd3f09
41 changed files with 1523 additions and 1 deletions

View 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
}