Skip to content

Commit 780bc15

Browse files
authored
Merge pull request #150 from UncoderIO/gis-7222
Gis 7222
2 parents e251924 + e60bbfd commit 780bc15

File tree

4 files changed

+16
-2
lines changed

4 files changed

+16
-2
lines changed

uncoder-core/app/routers/translate.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
from fastapi import APIRouter, Body
22

33
from app.models.translation import InfoMessage, OneTranslationData, Platform, TranslatorPlatforms
4+
from app.translator.core.context_vars import return_only_first_query_ctx_var
45
from app.translator.cti_translator import CTITranslator
56
from app.translator.translator import Translator
67

@@ -15,7 +16,9 @@ def translate_one(
1516
source_platform_id: str = Body(..., embed=True),
1617
target_platform_id: str = Body(..., embed=True),
1718
text: str = Body(..., embed=True),
19+
return_only_first_query: bool = False,
1820
) -> OneTranslationData:
21+
return_only_first_query_ctx_var.set(return_only_first_query)
1922
status, data = translator.translate_one(text=text, source=source_platform_id, target=target_platform_id)
2023
if status:
2124
return OneTranslationData(status=status, translation=data, target_platform_id=target_platform_id)
@@ -27,8 +30,11 @@ def translate_one(
2730
@st_router.post("/translate/all", tags=["translator"], description="Generate all translations")
2831
@st_router.post("/translate/all/", include_in_schema=False)
2932
def translate_all(
30-
source_platform_id: str = Body(..., embed=True), text: str = Body(..., embed=True)
33+
source_platform_id: str = Body(..., embed=True),
34+
text: str = Body(..., embed=True),
35+
return_only_first_query: bool = False,
3136
) -> list[OneTranslationData]:
37+
return_only_first_query_ctx_var.set(return_only_first_query)
3238
result = translator.translate_all(text=text, source=source_platform_id)
3339
translations = []
3440
for platform_result in result:
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
UTF8_PAYLOAD_PATTERN = r"UTF8\(payload\)"
22
NUM_VALUE_PATTERN = r"(?P<num_value>\d+(?:\.\d+)*)"
3-
SINGLE_QUOTES_VALUE_PATTERN = r"""'(?P<s_q_value>(?:[:a-zA-Z\*0-9=+%#\-\/\\|,;_<>`~".$&^@!?\(\)\{\}\[\]\s]|'')*)'"""
3+
SINGLE_QUOTES_VALUE_PATTERN = (
4+
r"""'(?P<s_q_value>(?:[:a-zA-Zа-яА-Я\*0-9=+%#\-\/\\|,;_<>`~".$&^@!?\(\)\{\}\[\]\s]|'')*)'"""
5+
)
46
TABLE_PATTERN = r"\s+FROM\s+[a-zA-Z.\-*]+"
57
TABLE_GROUP_PATTERN = r"\s+FROM\s+(?P<table>[a-zA-Z.\-*]+)"

uncoder-core/app/translator/platforms/forti_siem/renders/forti_siem_rule.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
from typing import Optional, Union
1919

2020
from app.translator.const import DEFAULT_VALUE_TYPE
21+
from app.translator.core.context_vars import return_only_first_query_ctx_var
2122
from app.translator.core.custom_types.meta_info import SeverityType
2223
from app.translator.core.custom_types.tokens import GroupType, LogicalOperatorType, OperatorType
2324
from app.translator.core.custom_types.values import ValueType
@@ -273,6 +274,8 @@ def _generate_from_tokenized_query_container(self, query_container: TokenizedQue
273274
source_mapping=source_mapping,
274275
fields=mapped_fields_set,
275276
)
277+
if return_only_first_query_ctx_var.get() is True:
278+
return finalized_query
276279
queries_map[source_mapping.source_id] = finalized_query
277280

278281
return self.finalize(queries_map)

uncoder-core/app/translator/platforms/logrhythm_axon/renders/logrhythm_axon_query.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
from typing import Union
2020

2121
from app.translator.const import DEFAULT_VALUE_TYPE
22+
from app.translator.core.context_vars import return_only_first_query_ctx_var
2223
from app.translator.core.custom_types.tokens import LogicalOperatorType
2324
from app.translator.core.custom_types.values import ValueType
2425
from app.translator.core.exceptions.core import StrictPlatformException
@@ -262,6 +263,8 @@ def _generate_from_tokenized_query_container(self, query_container: TokenizedQue
262263
meta_info=query_container.meta_info,
263264
source_mapping=source_mapping,
264265
)
266+
if return_only_first_query_ctx_var.get() is True:
267+
return finalized_query
265268
queries_map[source_mapping.source_id] = finalized_query
266269

267270
return self.finalize(queries_map)

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy