Returned full error to browser. (#897)
This is first step of new error handling. UI rework will be done Co-authored-by: Benjamin Perez <benjamin@bexsoft.net>
This commit is contained in:
@@ -39,6 +39,10 @@ type Error struct {
|
|||||||
// code
|
// code
|
||||||
Code int32 `json:"code,omitempty"`
|
Code int32 `json:"code,omitempty"`
|
||||||
|
|
||||||
|
// detailed message
|
||||||
|
// Required: true
|
||||||
|
DetailedMessage *string `json:"detailedMessage"`
|
||||||
|
|
||||||
// message
|
// message
|
||||||
// Required: true
|
// Required: true
|
||||||
Message *string `json:"message"`
|
Message *string `json:"message"`
|
||||||
@@ -48,6 +52,10 @@ type Error struct {
|
|||||||
func (m *Error) Validate(formats strfmt.Registry) error {
|
func (m *Error) Validate(formats strfmt.Registry) error {
|
||||||
var res []error
|
var res []error
|
||||||
|
|
||||||
|
if err := m.validateDetailedMessage(formats); err != nil {
|
||||||
|
res = append(res, err)
|
||||||
|
}
|
||||||
|
|
||||||
if err := m.validateMessage(formats); err != nil {
|
if err := m.validateMessage(formats); err != nil {
|
||||||
res = append(res, err)
|
res = append(res, err)
|
||||||
}
|
}
|
||||||
@@ -58,6 +66,15 @@ func (m *Error) Validate(formats strfmt.Registry) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *Error) validateDetailedMessage(formats strfmt.Registry) error {
|
||||||
|
|
||||||
|
if err := validate.Required("detailedMessage", "body", m.DetailedMessage); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func (m *Error) validateMessage(formats strfmt.Registry) error {
|
func (m *Error) validateMessage(formats strfmt.Registry) error {
|
||||||
|
|
||||||
if err := validate.Required("message", "body", m.Message); err != nil {
|
if err := validate.Required("message", "body", m.Message); err != nil {
|
||||||
|
|||||||
@@ -2220,13 +2220,17 @@ func init() {
|
|||||||
"error": {
|
"error": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"required": [
|
"required": [
|
||||||
"message"
|
"message",
|
||||||
|
"detailedMessage"
|
||||||
],
|
],
|
||||||
"properties": {
|
"properties": {
|
||||||
"code": {
|
"code": {
|
||||||
"type": "integer",
|
"type": "integer",
|
||||||
"format": "int32"
|
"format": "int32"
|
||||||
},
|
},
|
||||||
|
"detailedMessage": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
"message": {
|
"message": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
@@ -7800,13 +7804,17 @@ func init() {
|
|||||||
"error": {
|
"error": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"required": [
|
"required": [
|
||||||
"message"
|
"message",
|
||||||
|
"detailedMessage"
|
||||||
],
|
],
|
||||||
"properties": {
|
"properties": {
|
||||||
"code": {
|
"code": {
|
||||||
"type": "integer",
|
"type": "integer",
|
||||||
"format": "int32"
|
"format": "int32"
|
||||||
},
|
},
|
||||||
|
"detailedMessage": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
"message": {
|
"message": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -157,7 +157,7 @@ func prepareError(err ...error) *models.Error {
|
|||||||
errorMessage = err[0].Error()
|
errorMessage = err[0].Error()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return &models.Error{Code: errorCode, Message: swag.String(errorMessage)}
|
return &models.Error{Code: errorCode, Message: swag.String(errorMessage), DetailedMessage: swag.String(err[0].Error())}
|
||||||
}
|
}
|
||||||
|
|
||||||
func getFrame(skipFrames int) runtime.Frame {
|
func getFrame(skipFrames int) runtime.Frame {
|
||||||
|
|||||||
@@ -42,10 +42,12 @@ const initialState: SystemState = {
|
|||||||
loadingProgress: 100,
|
loadingProgress: 100,
|
||||||
snackBar: {
|
snackBar: {
|
||||||
message: "",
|
message: "",
|
||||||
|
detailedErrorMsg: "",
|
||||||
type: "message",
|
type: "message",
|
||||||
},
|
},
|
||||||
modalSnackBar: {
|
modalSnackBar: {
|
||||||
message: "",
|
message: "",
|
||||||
|
detailedErrorMsg: "",
|
||||||
type: "message",
|
type: "message",
|
||||||
},
|
},
|
||||||
serverDiagnosticStatus: "",
|
serverDiagnosticStatus: "",
|
||||||
|
|||||||
@@ -15,6 +15,7 @@
|
|||||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
export interface snackBarMessage {
|
export interface snackBarMessage {
|
||||||
message: string;
|
message: string;
|
||||||
|
detailedErrorMsg?: string;
|
||||||
type: "message" | "error";
|
type: "message" | "error";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -3786,13 +3786,17 @@ func init() {
|
|||||||
"error": {
|
"error": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"required": [
|
"required": [
|
||||||
"message"
|
"message",
|
||||||
|
"detailedMessage"
|
||||||
],
|
],
|
||||||
"properties": {
|
"properties": {
|
||||||
"code": {
|
"code": {
|
||||||
"type": "integer",
|
"type": "integer",
|
||||||
"format": "int32"
|
"format": "int32"
|
||||||
},
|
},
|
||||||
|
"detailedMessage": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
"message": {
|
"message": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
@@ -9292,13 +9296,17 @@ func init() {
|
|||||||
"error": {
|
"error": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"required": [
|
"required": [
|
||||||
"message"
|
"message",
|
||||||
|
"detailedMessage"
|
||||||
],
|
],
|
||||||
"properties": {
|
"properties": {
|
||||||
"code": {
|
"code": {
|
||||||
"type": "integer",
|
"type": "integer",
|
||||||
"format": "int32"
|
"format": "int32"
|
||||||
},
|
},
|
||||||
|
"detailedMessage": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
"message": {
|
"message": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -166,7 +166,7 @@ func prepareError(err ...error) *models.Error {
|
|||||||
errorMessage = err[0].Error()
|
errorMessage = err[0].Error()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return &models.Error{Code: errorCode, Message: swag.String(errorMessage)}
|
return &models.Error{Code: errorCode, Message: swag.String(errorMessage), DetailedMessage: swag.String(err[0].Error())}
|
||||||
}
|
}
|
||||||
|
|
||||||
func getFrame(skipFrames int) runtime.Frame {
|
func getFrame(skipFrames int) runtime.Frame {
|
||||||
|
|||||||
@@ -2294,12 +2294,15 @@ definitions:
|
|||||||
type: object
|
type: object
|
||||||
required:
|
required:
|
||||||
- message
|
- message
|
||||||
|
- detailedMessage
|
||||||
properties:
|
properties:
|
||||||
code:
|
code:
|
||||||
type: integer
|
type: integer
|
||||||
format: int32
|
format: int32
|
||||||
message:
|
message:
|
||||||
type: string
|
type: string
|
||||||
|
detailedMessage:
|
||||||
|
type: string
|
||||||
user:
|
user:
|
||||||
type: object
|
type: object
|
||||||
properties:
|
properties:
|
||||||
|
|||||||
@@ -1079,12 +1079,15 @@ definitions:
|
|||||||
type: object
|
type: object
|
||||||
required:
|
required:
|
||||||
- message
|
- message
|
||||||
|
- detailedMessage
|
||||||
properties:
|
properties:
|
||||||
code:
|
code:
|
||||||
type: integer
|
type: integer
|
||||||
format: int32
|
format: int32
|
||||||
message:
|
message:
|
||||||
type: string
|
type: string
|
||||||
|
detailedMessage:
|
||||||
|
type: string
|
||||||
user:
|
user:
|
||||||
type: object
|
type: object
|
||||||
properties:
|
properties:
|
||||||
|
|||||||
Reference in New Issue
Block a user