Skip to content

Commit 6fd6ef7

Browse files
committed
gis-8502 fix MetaInfoContainer
1 parent 4a31a3d commit 6fd6ef7

File tree

3 files changed

+11
-12
lines changed

3 files changed

+11
-12
lines changed

uncoder-core/app/translator/core/models/query_container.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -39,24 +39,26 @@ def __init__(
3939
trigger_threshold: Optional[str] = None,
4040
query_frequency: Optional[str] = None,
4141
query_period: Optional[str] = None,
42+
from_: Optional[str] = None,
43+
interval: Optional[str] = None,
4244
) -> None:
4345
self.trigger_operator = trigger_operator
4446
self.trigger_threshold = trigger_threshold
4547
self.query_frequency = query_frequency
4648
self.query_period = query_period
49+
self.from_ = from_
50+
self.interval = interval
4751

4852

4953
class MetaInfoContainer:
5054
def __init__(
5155
self,
5256
*,
5357
id_: Optional[str] = None,
54-
from_: Optional[str] = None,
55-
index: Optional[str] = None,
58+
index: Optional[list[str]] = None,
5659
language: Optional[str] = None,
57-
risk_score: Optional[str] = None,
60+
risk_score: Optional[int] = None,
5861
type_: Optional[str] = None,
59-
interval: Optional[str] = None,
6062
title: Optional[str] = None,
6163
description: Optional[str] = None,
6264
author: Optional[list[str]] = None,
@@ -79,12 +81,10 @@ def __init__(
7981
) -> None:
8082
self.id = id_ or str(uuid.uuid4())
8183
self.title = title or ""
82-
self.from_ = from_ or ""
83-
self.index = index or ""
84+
self.index = index or []
8485
self.language = language or ""
85-
self.risk_score = risk_score or ""
86+
self.risk_score = risk_score or None
8687
self.type_ = type_ or ""
87-
self.interval = interval or ""
8888
self.description = description or ""
8989
self.author = [v.strip() for v in author] if author else []
9090
self.date = date or datetime.now().date().strftime("%Y-%m-%d")

uncoder-core/app/translator/platforms/elasticsearch/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from app.translator.platforms.elasticsearch.parsers.detection_rule import (
2-
ElasticSearchRuleParser,
2+
ElasticSearchRuleParser, # noqa: F401
33
ElasticSearchRuleTOMLParser, # noqa: F401
44
)
55
from app.translator.platforms.elasticsearch.parsers.elasticsearch import ElasticSearchQueryParser # noqa: F401

uncoder-core/app/translator/platforms/elasticsearch/parsers/detection_rule.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
from app.translator.core.mixins.rule import JsonRuleMixin, TOMLRuleMixin
2121
from app.translator.core.models.platform_details import PlatformDetails
22-
from app.translator.core.models.query_container import MetaInfoContainer, RawQueryContainer
22+
from app.translator.core.models.query_container import MetaInfoContainer, RawMetaInfoContainer, RawQueryContainer
2323
from app.translator.managers import parser_manager
2424
from app.translator.platforms.elasticsearch.const import elasticsearch_rule_details, elasticsearch_rule_toml_details
2525
from app.translator.platforms.elasticsearch.parsers.elasticsearch import ElasticSearchQueryParser
@@ -89,11 +89,10 @@ def parse_raw_query(self, text: str, language: str) -> RawQueryContainer:
8989
references=rule.get("references"),
9090
tags=rule.get("tags"),
9191
mitre_attack=mitre_attack,
92-
from_=rule.get("from"),
9392
index=rule.get("index"),
9493
language=rule.get("language"),
9594
risk_score=rule.get("risk_score"),
9695
type_=rule.get("type"),
97-
interval=rule.get("interval"),
96+
raw_metainfo_container=RawMetaInfoContainer(from_=rule.get("from"), interval=rule.get("interval")),
9897
),
9998
)

0 commit comments

Comments
 (0)