Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Gis 7222#150

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
alexvolha merged 3 commits intomainfromgis-7222
Jun 18, 2024
Merged
Show file tree
Hide file tree
Changes fromall commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletionuncoder-core/app/routers/translate.py
View file
Open in desktop
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
from fastapi import APIRouter, Body

from app.models.translation import InfoMessage, OneTranslationData, Platform, TranslatorPlatforms
from app.translator.core.context_vars import return_only_first_query_ctx_var
from app.translator.cti_translator import CTITranslator
from app.translator.translator import Translator

Expand All@@ -15,7 +16,9 @@ def translate_one(
source_platform_id: str = Body(..., embed=True),
target_platform_id: str = Body(..., embed=True),
text: str = Body(..., embed=True),
return_only_first_query: bool = False,
) -> OneTranslationData:
return_only_first_query_ctx_var.set(return_only_first_query)
status, data = translator.translate_one(text=text, source=source_platform_id, target=target_platform_id)
if status:
return OneTranslationData(status=status, translation=data, target_platform_id=target_platform_id)
Expand All@@ -27,8 +30,11 @@ def translate_one(
@st_router.post("/translate/all", tags=["translator"], description="Generate all translations")
@st_router.post("/translate/all/", include_in_schema=False)
def translate_all(
source_platform_id: str = Body(..., embed=True), text: str = Body(..., embed=True)
source_platform_id: str = Body(..., embed=True),
text: str = Body(..., embed=True),
return_only_first_query: bool = False,
) -> list[OneTranslationData]:
return_only_first_query_ctx_var.set(return_only_first_query)
result = translator.translate_all(text=text, source=source_platform_id)
translations = []
for platform_result in result:
Expand Down
4 changes: 4 additions & 0 deletionsuncoder-core/app/translator/core/context_vars.py
View file
Open in desktop
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
from contextvars import ContextVar

return_only_first_query_ctx_var: ContextVar[bool] = ContextVar("return_only_first_query_ctx_var", default=False)
"""Set to True to return ony first query if rendered multiple options"""
4 changes: 4 additions & 0 deletionsuncoder-core/app/translator/core/render.py
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -21,6 +21,7 @@
from typing import Optional, Union

from app.translator.const import DEFAULT_VALUE_TYPE
from app.translator.core.context_vars import return_only_first_query_ctx_var
from app.translator.core.custom_types.tokens import LogicalOperatorType, OperatorType
from app.translator.core.custom_types.values import ValueType
from app.translator.core.escape_manager import EscapeManager
Expand DownExpand Up@@ -283,6 +284,7 @@ def finalize_query(
**kwargs, # noqa: ARG002
) -> str:
query = self.query_pattern.format(prefix=prefix, query=query, functions=functions).strip()

query = self.wrap_query_with_meta_info(meta_info=meta_info, query=query)
if not_supported_functions:
rendered_not_supported = self.render_not_supported_functions(not_supported_functions)
Expand DownExpand Up@@ -368,6 +370,8 @@ def _generate_from_tokenized_query_container(self, query_container: TokenizedQue
meta_info=query_container.meta_info,
source_mapping=source_mapping,
)
if return_only_first_query_ctx_var.get() is True:
return finalized_query
queries_map[source_mapping.source_id] = finalized_query
if not queries_map and errors:
raise errors[0]
Expand Down
4 changes: 3 additions & 1 deletionuncoder-core/app/translator/platforms/base/aql/const.py
View file
Open in desktop
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
UTF8_PAYLOAD_PATTERN = r"UTF8\(payload\)"
NUM_VALUE_PATTERN = r"(?P<num_value>\d+(?:\.\d+)*)"
SINGLE_QUOTES_VALUE_PATTERN = r"""'(?P<s_q_value>(?:[:a-zA-Z\*0-9=+%#\-\/\\|,;_<>`~".$&^@!?\(\)\{\}\[\]\s]|'')*)'"""
SINGLE_QUOTES_VALUE_PATTERN = (
r"""'(?P<s_q_value>(?:[:a-zA-Zа-яА-Я\*0-9=+%#\-\/\\|,;_<>`~".$&^@!?\(\)\{\}\[\]\s]|'')*)'"""
)
TABLE_PATTERN = r"\s+FROM\s+[a-zA-Z.\-*]+"
TABLE_GROUP_PATTERN = r"\s+FROM\s+(?P<table>[a-zA-Z.\-*]+)"
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -18,6 +18,7 @@
from typing import Optional, Union

from app.translator.const import DEFAULT_VALUE_TYPE
from app.translator.core.context_vars import return_only_first_query_ctx_var
from app.translator.core.custom_types.meta_info import SeverityType
from app.translator.core.custom_types.tokens import GroupType, LogicalOperatorType, OperatorType
from app.translator.core.custom_types.values import ValueType
Expand DownExpand Up@@ -273,6 +274,8 @@ def _generate_from_tokenized_query_container(self, query_container: TokenizedQue
source_mapping=source_mapping,
fields=mapped_fields_set,
)
if return_only_first_query_ctx_var.get() is True:
return finalized_query
queries_map[source_mapping.source_id] = finalized_query

return self.finalize(queries_map)
Expand Down
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -19,6 +19,7 @@
from typing import Union

from app.translator.const import DEFAULT_VALUE_TYPE
from app.translator.core.context_vars import return_only_first_query_ctx_var
from app.translator.core.custom_types.tokens import LogicalOperatorType
from app.translator.core.custom_types.values import ValueType
from app.translator.core.exceptions.core import StrictPlatformException
Expand DownExpand Up@@ -262,6 +263,8 @@ def _generate_from_tokenized_query_container(self, query_container: TokenizedQue
meta_info=query_container.meta_info,
source_mapping=source_mapping,
)
if return_only_first_query_ctx_var.get() is True:
return finalized_query
queries_map[source_mapping.source_id] = finalized_query

return self.finalize(queries_map)

[8]ページ先頭

©2009-2025 Movatter.jp