diff --git a/thehive/app/org/thp/thehive/controllers/v0/ObservableCtrl.scala b/thehive/app/org/thp/thehive/controllers/v0/ObservableCtrl.scala index ee3db84efb..70ae84b648 100644 --- a/thehive/app/org/thp/thehive/controllers/v0/ObservableCtrl.scala +++ b/thehive/app/org/thp/thehive/controllers/v0/ObservableCtrl.scala @@ -102,7 +102,7 @@ class ObservableCtrl @Inject() ( caseSrv.createObservable(`case`, inputObservable.toObservable, data) } match { case Success(o) => Right(o.toJson) - case Failure(error) => Left(errorHandler.toErrorResult(error)._2 ++ Json.obj("object" -> Json.obj("data" -> data))) + case Failure(error) => Left(errorHandler.toErrorResult(error)._2 + ("object" -> Json.obj("data" -> data))) } private def createAttachmentObservableInCase( @@ -123,9 +123,9 @@ class ObservableCtrl @Inject() ( } } match { case Success(o) => Right(o.toJson) - case _ => + case Failure(error) => val filename = fileOrAttachment.fold(_.filename, _.name) - Left(Json.obj("object" -> Json.obj("data" -> s"file:$filename", "attachment" -> Json.obj("name" -> filename)))) + Left(errorHandler.toErrorResult(error)._2 + ("object" -> Json.obj("data" -> s"file:$filename", "attachment" -> Json.obj("name" -> filename)))) } def createInAlert(alertId: String): Action[AnyContent] = @@ -183,7 +183,7 @@ class ObservableCtrl @Inject() ( alertSrv.createObservable(alert, inputObservable.toObservable, data) } match { case Success(o) => Right(o.toJson) - case Failure(error) => Left(errorHandler.toErrorResult(error)._2 ++ Json.obj("object" -> Json.obj("data" -> data))) + case Failure(error) => Left(errorHandler.toErrorResult(error)._2 + ("object" -> Json.obj("data" -> data))) } private def createAttachmentObservableInAlert( @@ -223,7 +223,7 @@ class ObservableCtrl @Inject() ( attachment.fold(createAttachment) } match { case Success(o) => Right(o.toJson) - case _ => + case Failure(error) => object attachmentName extends Poly1 { implicit val fromFile: Case.Aux[FFile, String] = at[FFile](_.filename) implicit val fromAttachment: Case.Aux[InputAttachment, String] = at[InputAttachment](_.name) @@ -232,7 +232,7 @@ class ObservableCtrl @Inject() ( } } val filename = attachment.fold(attachmentName) - Left(Json.obj("object" -> Json.obj("data" -> s"file:$filename", "attachment" -> Json.obj("name" -> filename)))) + Left(errorHandler.toErrorResult(error)._2 + ("object" -> Json.obj("data" -> s"file:$filename", "attachment" -> Json.obj("name" -> filename)))) } def get(observableId: String): Action[AnyContent] = diff --git a/thehive/app/org/thp/thehive/controllers/v1/ObservableCtrl.scala b/thehive/app/org/thp/thehive/controllers/v1/ObservableCtrl.scala index a74733e829..fdcada7e17 100644 --- a/thehive/app/org/thp/thehive/controllers/v1/ObservableCtrl.scala +++ b/thehive/app/org/thp/thehive/controllers/v1/ObservableCtrl.scala @@ -156,7 +156,7 @@ class ObservableCtrl @Inject() ( caseSrv.createObservable(`case`, inputObservable.toObservable, data) } match { case Success(o) => Right(o.toJson) - case Failure(error) => Left(errorHandler.toErrorResult(error)._2 ++ Json.obj("object" -> Json.obj("data" -> data))) + case Failure(error) => Left(errorHandler.toErrorResult(error)._2 + ("object" -> Json.obj("data" -> data))) } private def createAttachmentObservableInCase( @@ -177,9 +177,9 @@ class ObservableCtrl @Inject() ( } } match { case Success(o) => Right(o.toJson) - case _ => + case Failure(error) => val filename = fileOrAttachment.fold(_.filename, _.name) - Left(Json.obj("object" -> Json.obj("data" -> s"file:$filename", "attachment" -> Json.obj("name" -> filename)))) + Left(errorHandler.toErrorResult(error)._2 + ("object" -> Json.obj("data" -> s"file:$filename", "attachment" -> Json.obj("name" -> filename)))) } def createInAlert(alertId: String): Action[AnyContent] = @@ -237,7 +237,7 @@ class ObservableCtrl @Inject() ( alertSrv.createObservable(alert, inputObservable.toObservable, data) } match { case Success(o) => Right(o.toJson) - case Failure(error) => Left(errorHandler.toErrorResult(error)._2 ++ Json.obj("object" -> Json.obj("data" -> data))) + case Failure(error) => Left(errorHandler.toErrorResult(error)._2 + ("object" -> Json.obj("data" -> data))) } private def createAttachmentObservableInAlert( @@ -277,7 +277,7 @@ class ObservableCtrl @Inject() ( attachment.fold(createAttachment) } match { case Success(o) => Right(o.toJson) - case _ => + case Failure(error) => object attachmentName extends Poly1 { implicit val fromFile: Case.Aux[FFile, String] = at[FFile](_.filename) implicit val fromAttachment: Case.Aux[InputAttachment, String] = at[InputAttachment](_.name) @@ -286,7 +286,7 @@ class ObservableCtrl @Inject() ( } } val filename = attachment.fold(attachmentName) - Left(Json.obj("object" -> Json.obj("data" -> s"file:$filename", "attachment" -> Json.obj("name" -> filename)))) + Left(errorHandler.toErrorResult(error)._2 + ("object" -> Json.obj("data" -> s"file:$filename", "attachment" -> Json.obj("name" -> filename)))) } def get(observableId: String): Action[AnyContent] =