Skip to content

Commit

Permalink
#1731 Use implicit parameter for FieldsParser in Query
Browse files Browse the repository at this point in the history
  • Loading branch information
To-om committed Jan 27, 2021
1 parent d9cd63f commit d58d3e7
Show file tree
Hide file tree
Showing 32 changed files with 3 additions and 40 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,6 @@ class PublicAction @Inject() (actionSrv: ActionSrv, organisationSrv: Organisatio
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Action], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, actionSteps, _) => actionSteps.richPage(range.from, range.to, withTotal = true)(_.richAction)
)
override val outputQuery: Query = Query.output[RichAction, Traversal.V[Action]](_.richAction)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,6 @@ class PublicAnalyzerTemplate @Inject() (analyzerTemplateSrv: AnalyzerTemplateSrv
override val pageQuery: ParamQuery[OutputParam] =
Query.withParam[OutputParam, Traversal.V[AnalyzerTemplate], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, analyzerTemplateTraversal, _) => analyzerTemplateTraversal.page(range.from, range.to, withTotal = true)
)
override val outputQuery: Query = Query.output[AnalyzerTemplate with Entity]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,6 @@ class PublicJob @Inject() (jobSrv: JobSrv) extends PublicData with JobRenderer {
override val pageQuery: ParamQuery[OutputParam] =
Query.withParam[OutputParam, Traversal.V[Job], IteratorOutput](
"page",
FieldsParser[OutputParam],
{
case (OutputParam(from, to, _, withParents), jobSteps, authContext) if withParents > 0 =>
jobSteps.richPage(from, to, withTotal = true)(_.richJobWithCustomRenderer(jobParents(_)(authContext))(authContext))
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v0/AlertCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -363,7 +363,6 @@ class PublicAlert @Inject() (
override val pageQuery: ParamQuery[OutputParam] =
Query.withParam[OutputParam, Traversal.V[Alert], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, alertSteps, _) =>
alertSteps
.richPage(range.from, range.to, withTotal = true) { alerts =>
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v0/AuditCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,6 @@ class PublicAudit @Inject() (auditSrv: AuditSrv, organisationSrv: OrganisationSr
override val pageQuery: ParamQuery[org.thp.thehive.controllers.v0.OutputParam] =
Query.withParam[OutputParam, Traversal.V[Audit], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, auditSteps, _) => auditSteps.richPage(range.from, range.to, withTotal = true)(_.richAudit)
)
override val outputQuery: Query = Query.output[RichAudit, Traversal.V[Audit]](_.richAudit)
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v0/CaseCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,6 @@ class PublicCase @Inject() (
override val pageQuery: ParamQuery[OutputParam] =
Query.withParam[OutputParam, Traversal.V[Case], IteratorOutput](
"page",
FieldsParser[OutputParam],
{
case (OutputParam(from, to, withStats, _), caseSteps, authContext) =>
caseSteps
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,6 @@ class PublicCaseTemplate @Inject() (
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[CaseTemplate], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, caseTemplateSteps, _) => caseTemplateSteps.richPage(range.from, range.to, withTotal = true)(_.richCaseTemplate)
)
override val outputQuery: Query = Query.output[RichCaseTemplate, Traversal.V[CaseTemplate]](_.richCaseTemplate)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,6 @@ class PublicCustomField @Inject() (customFieldSrv: CustomFieldSrv) extends Publi
override val initialQuery: Query = Query.init[Traversal.V[CustomField]]("listCustomField", (graph, _) => customFieldSrv.startTraversal(graph))
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[CustomField], IteratorOutput](
"page",
FieldsParser[OutputParam],
{
case (OutputParam(from, to, _, _), customFieldSteps, _) =>
customFieldSteps.page(from, to, withTotal = true)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,6 @@ class PublicDashboard @Inject() (

val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Dashboard], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, dashboardSteps, _) => dashboardSteps.richPage(range.from, range.to, withTotal = true)(_.richDashboard)
)
override val outputQuery: Query = Query.output[RichDashboard, Traversal.V[Dashboard]](_.richDashboard)
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v0/LogCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,6 @@ class PublicLog @Inject() (logSrv: LogSrv, organisationSrv: OrganisationSrv) ext
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Log], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, logSteps, _) => logSteps.richPage(range.from, range.to, withTotal = true)(_.richLog)
)
override val outputQuery: Query = Query.output[RichLog, Traversal.V[Log]](_.richLog)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ class PublicObservableType @Inject() (observableTypeSrv: ObservableTypeSrv) exte
override val pageQuery: ParamQuery[OutputParam] =
Query.withParam[OutputParam, Traversal.V[ObservableType], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, observableTypeSteps, _) => observableTypeSteps.richPage(range.from, range.to, withTotal = true)(identity)
)
override val outputQuery: Query = Query.output[ObservableType with Entity]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,6 @@ class PublicOrganisation @Inject() (organisationSrv: OrganisationSrv) extends Pu
Query.init[Traversal.V[Organisation]]("listOrganisation", (graph, authContext) => organisationSrv.startTraversal(graph).visible(authContext))
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Organisation], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, organisationSteps, _) => organisationSteps.page(range.from, range.to, withTotal = true)
)
override val outputQuery: Query = Query.output[Organisation with Entity]
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v0/PageCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,6 @@ class PublicPage @Inject() (pageSrv: PageSrv, organisationSrv: OrganisationSrv)
)
val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Page], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, pageSteps, _) => pageSteps.page(range.from, range.to, withTotal = true)
)
override val outputQuery: Query = Query.output[Page with Entity]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,6 @@ class PublicProfile @Inject() (profileSrv: ProfileSrv) extends PublicData {

val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Profile], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, profileSteps, _) => profileSteps.page(range.from, range.to, withTotal = true)
)
override val outputQuery: Query = Query.output[Profile with Entity]
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v0/TagCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,6 @@ class PublicTag @Inject() (tagSrv: TagSrv) extends PublicData {
override val initialQuery: Query = Query.init[Traversal.V[Tag]]("listTag", (graph, _) => tagSrv.startTraversal(graph))
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Tag], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, tagSteps, _) => tagSteps.page(range.from, range.to, withTotal = true)
)
override val outputQuery: Query = Query.output[Tag with Entity]
Expand Down
7 changes: 2 additions & 5 deletions thehive/app/org/thp/thehive/controllers/v0/TaskCtrl.scala
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
package org.thp.thehive.controllers.v0

import org.apache.tinkerpop.gremlin.process.traversal.P

import javax.inject.{Inject, Named, Singleton}
import org.thp.scalligraph.controllers._
import org.thp.scalligraph.models.{Database, UMapping}
import org.thp.scalligraph.query._
Expand All @@ -14,12 +11,13 @@ import org.thp.thehive.dto.v0.InputTask
import org.thp.thehive.models._
import org.thp.thehive.services.CaseOps._
import org.thp.thehive.services.OrganisationOps._
import org.thp.thehive.services.ShareOps._
import org.thp.thehive.services.TaskOps._
import org.thp.thehive.services._
import play.api.libs.json.Json
import play.api.mvc.{Action, AnyContent, Results}

import javax.inject.{Inject, Named, Singleton}

@Singleton
class TaskCtrl @Inject() (
override val entrypoint: Entrypoint,
Expand Down Expand Up @@ -106,7 +104,6 @@ class PublicTask @Inject() (taskSrv: TaskSrv, organisationSrv: OrganisationSrv,
//organisationSrv.get(authContext.organisation)(graph).shares.tasks)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Task], IteratorOutput](
"page",
FieldsParser[OutputParam],
{
case (OutputParam(from, to, _, 0), taskSteps, _) =>
taskSteps.richPage(from, to, withTotal = true)(_.richTask.domainMap(_ -> (None: Option[RichCase])))
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v0/UserCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -237,7 +237,6 @@ class PublicUser @Inject() (userSrv: UserSrv, organisationSrv: OrganisationSrv)
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[User], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, userSteps, authContext) => userSteps.richUser(authContext).page(range.from, range.to, withTotal = true)
)
override val outputQuery: Query =
Expand Down
4 changes: 1 addition & 3 deletions thehive/app/org/thp/thehive/controllers/v1/AlertCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,6 @@ class AlertCtrl @Inject() (
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Alert], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, alertSteps, authContext) =>
alertSteps
.richPage(range.from, range.to, range.extraData.contains("total"))(
Expand All @@ -55,7 +54,7 @@ class AlertCtrl @Inject() (
)
override val outputQuery: Query = Query.output[RichAlert, Traversal.V[Alert]](_.richAlert)
val caseProperties: PublicProperties = properties.`case` ++ properties.metaProperties
val caseFilterParser: FieldsParser[Option[InputQuery[Traversal.Unk, Traversal.Unk]]] =
implicit val caseFilterParser: FieldsParser[Option[InputQuery[Traversal.Unk, Traversal.Unk]]] =
FilterQuery.default(caseProperties).paramParser(ru.typeOf[Traversal.V[Case]]).optional.on("caseFilter")
override val extraQueries: Seq[ParamQuery[_]] = Seq(
Query[Traversal.V[Alert], Traversal.V[Observable]]("observables", (alertSteps, _) => alertSteps.observables),
Expand All @@ -66,7 +65,6 @@ class AlertCtrl @Inject() (
Converter[JsValue, JMap[String, Any]]
]](
"similarCases",
caseFilterParser,
{ (maybeCaseFilterQuery, alertSteps, authContext) =>
val caseFilter: Option[Traversal.V[Case] => Traversal.V[Case]] =
maybeCaseFilterQuery.map(f => cases => f(caseProperties, ru.typeOf[Traversal.V[Case]], cases.cast, authContext).cast)
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v1/AuditCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ class AuditCtrl @Inject() (
val pageQuery: ParamQuery[OutputParam] =
Query.withParam[OutputParam, Traversal.V[Audit], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, auditSteps, _) => auditSteps.richPage(range.from, range.to, range.extraData.contains("total"))(_.richAudit)
)
override val outputQuery: Query = Query.output[RichAudit, Traversal.V[Audit]](_.richAudit)
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v1/CaseCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@ class CaseCtrl @Inject() (
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Case], IteratorOutput](
"page",
FieldsParser[OutputParam],
{
case (OutputParam(from, to, extraData), caseSteps, authContext) =>
caseSteps.richPage(from, to, extraData.contains("total")) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ class CaseTemplateCtrl @Inject() (
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[CaseTemplate], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, caseTemplateSteps, _) => caseTemplateSteps.richPage(range.from, range.to, range.extraData.contains("total"))(_.richCaseTemplate)
)
override val outputQuery: Query = Query.output[RichCaseTemplate, Traversal.V[CaseTemplate]](_.richCaseTemplate)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ class CustomFieldCtrl @Inject() (entrypoint: Entrypoint, db: Database, customFie
override val initialQuery: Query = Query.init[Traversal.V[CustomField]]("listCustomField", (graph, _) => customFieldSrv.startTraversal(graph))
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[CustomField], IteratorOutput](
"page",
FieldsParser[OutputParam],
{
case (OutputParam(from, to, _), customFieldSteps, _) =>
customFieldSteps.page(from, to, withTotal = true)
Expand Down
3 changes: 0 additions & 3 deletions thehive/app/org/thp/thehive/controllers/v1/LogCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,6 @@ import org.thp.thehive.controllers.v1.Conversion._
import org.thp.thehive.dto.v1.InputLog
import org.thp.thehive.models.{Log, Permissions, RichLog}
import org.thp.thehive.services.LogOps._
import org.thp.thehive.services.OrganisationOps._
import org.thp.thehive.services.ShareOps._
import org.thp.thehive.services.TaskOps._
import org.thp.thehive.services.{LogSrv, OrganisationSrv, TaskSrv}
import play.api.Logger
Expand Down Expand Up @@ -41,7 +39,6 @@ class LogCtrl @Inject() (
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Log], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, logSteps, authContext) =>
logSteps.richPage(range.from, range.to, range.extraData.contains("total"))(
_.richLogWithCustomRenderer(logStatsRenderer(range.extraData - "total")(authContext))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,6 @@ class ObservableCtrl @Inject() (
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Observable], IteratorOutput](
"page",
FieldsParser[OutputParam],
{
case (OutputParam(from, to, extraData), observableSteps, authContext) =>
observableSteps.richPage(from, to, extraData.contains("total")) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ class ObservableTypeCtrl @Inject() (
override val pageQuery: ParamQuery[OutputParam] =
Query.withParam[OutputParam, Traversal.V[ObservableType], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, observableTypeSteps, _) => observableTypeSteps.richPage(range.from, range.to, withTotal = true)(identity)
)
override val outputQuery: Query = Query.output[ObservableType with Entity]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ class OrganisationCtrl @Inject() (
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Organisation], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, organisationSteps, _) => organisationSteps.richPage(range.from, range.to, range.extraData.contains("total"))(_.richOrganisation)
)
override val outputQuery: Query = Query.output[RichOrganisation, Traversal.V[Organisation]](_.richOrganisation)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ class PatternCtrl @Inject() (
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Pattern], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, patternSteps, _) => patternSteps.richPage(range.from, range.to, range.extraData.contains("total"))(_.richPattern)
)
override val outputQuery: Query = Query.output[RichPattern, Traversal.V[Pattern]](_.richPattern)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ class ProcedureCtrl @Inject() (
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Procedure], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, procedureSteps, _) => procedureSteps.richPage(range.from, range.to, range.extraData.contains("total"))(_.richProcedure)
)
override val outputQuery: Query = Query.output[RichProcedure, Traversal.V[Procedure]](_.richProcedure)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ class ProfileCtrl @Inject() (

val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Profile], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, profileSteps, _) => profileSteps.page(range.from, range.to, range.extraData.contains("total"))
)
override val outputQuery: Query = Query.output[Profile with Entity]
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v1/ShareCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ class ShareCtrl @Inject() (
Query.init[Traversal.V[Share]]("listShare", (graph, authContext) => organisationSrv.startTraversal(graph).visible(authContext).shares)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Share], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, shareSteps, _) => shareSteps.richPage(range.from, range.to, range.extraData.contains("total"))(_.richShare)
)
override val outputQuery: Query = Query.outputWithContext[RichShare, Traversal.V[Share]]((shareSteps, _) => shareSteps.richShare)
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v1/TaskCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@ class TaskCtrl @Inject() (
)
override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[Task], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, taskSteps, authContext) =>
taskSteps.richPage(range.from, range.to, range.extraData.contains("total"))(
_.richTaskWithCustomRenderer(taskStatsRenderer(range.extraData)(authContext))
Expand Down
1 change: 0 additions & 1 deletion thehive/app/org/thp/thehive/controllers/v1/UserCtrl.scala
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,6 @@ class UserCtrl @Inject() (

override val pageQuery: ParamQuery[OutputParam] = Query.withParam[OutputParam, Traversal.V[User], IteratorOutput](
"page",
FieldsParser[OutputParam],
(range, userSteps, authContext) => userSteps.richUser(authContext).page(range.from, range.to, range.extraData.contains("total"))
)
override val outputQuery: Query =
Expand Down

0 comments on commit d58d3e7

Please sign in to comment.