Skip to content

Commit 3f5421f

Browse files
fix findings API enhancemnts (opensearch-project#611)
* fix findings API enhancemnts Signed-off-by: Riya Saxena <[email protected]> * fix klint errors Signed-off-by: Riya Saxena <[email protected]> * fix klint errors Signed-off-by: Riya Saxena <[email protected]> * fix klint errors Signed-off-by: Riya Saxena <[email protected]> --------- Signed-off-by: Riya Saxena <[email protected]>
1 parent e467a8e commit 3f5421f

File tree

2 files changed

+11
-35
lines changed

2 files changed

+11
-35
lines changed

src/main/kotlin/org/opensearch/commons/alerting/action/GetFindingsRequest.kt

+6-27
Original file line numberDiff line numberDiff line change
@@ -5,43 +5,30 @@ import org.opensearch.action.ActionRequestValidationException
55
import org.opensearch.commons.alerting.model.Table
66
import org.opensearch.core.common.io.stream.StreamInput
77
import org.opensearch.core.common.io.stream.StreamOutput
8+
import org.opensearch.index.query.BoolQueryBuilder
89
import java.io.IOException
9-
import java.time.Instant
1010

1111
class GetFindingsRequest : ActionRequest {
1212
val findingId: String?
1313
val table: Table
1414
val monitorId: String?
1515
val monitorIds: List<String>?
1616
val findingIndex: String?
17-
val severity: String?
18-
val detectionType: String?
19-
val findingIds: List<String>?
20-
val startTime: Instant?
21-
val endTime: Instant?
22-
17+
val boolQueryBuilder: BoolQueryBuilder?
2318
constructor(
2419
findingId: String?,
2520
table: Table,
2621
monitorId: String? = null,
2722
findingIndexName: String? = null,
2823
monitorIds: List<String>? = null,
29-
severity: String? = null,
30-
detectionType: String? = null,
31-
findingIds: List<String>? = null,
32-
startTime: Instant? = null,
33-
endTime: Instant? = null
24+
boolQueryBuilder: BoolQueryBuilder? = null
3425
) : super() {
3526
this.findingId = findingId
3627
this.table = table
3728
this.monitorId = monitorId
3829
this.findingIndex = findingIndexName
3930
this.monitorIds = monitorIds
40-
this.severity = severity
41-
this.detectionType = detectionType
42-
this.findingIds = findingIds
43-
this.startTime = startTime
44-
this.endTime = endTime
31+
this.boolQueryBuilder = boolQueryBuilder
4532
}
4633

4734
@Throws(IOException::class)
@@ -51,11 +38,7 @@ class GetFindingsRequest : ActionRequest {
5138
monitorId = sin.readOptionalString(),
5239
findingIndexName = sin.readOptionalString(),
5340
monitorIds = sin.readOptionalStringList(),
54-
severity = sin.readOptionalString(),
55-
detectionType = sin.readOptionalString(),
56-
findingIds = sin.readOptionalStringList(),
57-
startTime = sin.readOptionalInstant(),
58-
endTime = sin.readOptionalInstant()
41+
boolQueryBuilder = BoolQueryBuilder(sin)
5942
)
6043

6144
override fun validate(): ActionRequestValidationException? {
@@ -69,10 +52,6 @@ class GetFindingsRequest : ActionRequest {
6952
out.writeOptionalString(monitorId)
7053
out.writeOptionalString(findingIndex)
7154
out.writeOptionalStringCollection(monitorIds)
72-
out.writeOptionalString(severity)
73-
out.writeOptionalString(detectionType)
74-
out.writeOptionalStringCollection(findingIds)
75-
out.writeOptionalInstant(startTime)
76-
out.writeOptionalInstant(endTime)
55+
boolQueryBuilder?.writeTo(out)
7756
}
7857
}

src/test/kotlin/org/opensearch/commons/alerting/action/GetFindingsRequestTests.kt

+5-8
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,15 @@ import org.junit.jupiter.api.Test
88
import org.opensearch.common.io.stream.BytesStreamOutput
99
import org.opensearch.commons.alerting.model.Table
1010
import org.opensearch.core.common.io.stream.StreamInput
11-
import java.time.Instant
11+
import org.opensearch.index.query.QueryBuilders
1212

1313
internal class GetFindingsRequestTests {
1414

1515
@Test
1616
fun `test get findings request`() {
1717
val table = Table("asc", "sortString", null, 1, 0, "")
18-
val req = GetFindingsRequest("2121", table, "1", "finding_index_name", listOf("1", "2"), "severity", "detectionType", listOf("id1", "id2"), Instant.now(), Instant.now().plusSeconds(30000))
18+
val boolQueryBuilder = QueryBuilders.boolQuery()
19+
val req = GetFindingsRequest("2121", table, "1", "finding_index_name", listOf("1", "2"), boolQueryBuilder)
1920
assertNotNull(req)
2021

2122
val out = BytesStreamOutput()
@@ -26,20 +27,16 @@ internal class GetFindingsRequestTests {
2627
assertEquals("1", newReq.monitorId)
2728
assertEquals("2121", newReq.findingId)
2829
assertEquals("finding_index_name", newReq.findingIndex)
29-
assertEquals("severity", newReq.severity)
30-
assertEquals("detectionType", newReq.detectionType)
3130
assertEquals(table, newReq.table)
3231
assertTrue(newReq.monitorIds!!.contains("1"))
3332
assertTrue(newReq.monitorIds!!.contains("2"))
34-
assertTrue(newReq.findingIds!!.contains("id1"))
35-
assertTrue(newReq.findingIds!!.contains("id2"))
36-
assertTrue(newReq.startTime!! < newReq.endTime, "startTime less than endTime")
3733
}
3834

3935
@Test
4036
fun `test validate returns null`() {
4137
val table = Table("asc", "sortString", null, 1, 0, "")
42-
val req = GetFindingsRequest("2121", table, "1", "active", listOf("1", "2"), "severity", "detectionType", listOf("id1", "id2"), Instant.now(), Instant.now().plusSeconds(30000))
38+
val boolQueryBuilder = QueryBuilders.boolQuery()
39+
val req = GetFindingsRequest("2121", table, "1", "active", listOf("1", "2"), boolQueryBuilder)
4340
assertNotNull(req)
4441
assertNull(req.validate())
4542
}

0 commit comments

Comments
 (0)