feat: all models
This commit is contained in:
@@ -1,18 +1,73 @@
|
||||
from typing import Dict, Any
|
||||
import requests
|
||||
import json
|
||||
from core import VorkNode
|
||||
from core.form_descriptors import get_form_descriptor
|
||||
from model_nodes.node_callback_models import (
|
||||
CallbackNodeData,
|
||||
CallbackNodeLinks,
|
||||
CallbackNodeCoreSchema,
|
||||
CallbackNodeCoreSchemaData
|
||||
)
|
||||
|
||||
|
||||
class VorkNodeCallback(VorkNode):
|
||||
|
||||
def __init__(self, data: Dict[str, Any], links: Dict[str, Any] = None):
|
||||
"""
|
||||
Инициализация узла callback
|
||||
"""
|
||||
super().__init__(data, links or {})
|
||||
|
||||
@property
|
||||
def id(self) -> str:
|
||||
return "node_callback"
|
||||
return "CALLBACK"
|
||||
|
||||
@classmethod
|
||||
def form(cls):
|
||||
pass
|
||||
def form(cls) -> Dict[str, Any]:
|
||||
"""
|
||||
Возвращает статический дескриптор формы для узла Callback
|
||||
"""
|
||||
return get_form_descriptor("CALLBACK")
|
||||
|
||||
def validate(self) -> bool:
|
||||
return True
|
||||
def validate(self) -> CallbackNodeCoreSchema:
|
||||
"""
|
||||
Валидирует данные узла callback и возвращает схему
|
||||
"""
|
||||
try:
|
||||
# Валидируем данные узла
|
||||
validated_data = self.validate_data()
|
||||
|
||||
# Валидируем связи узла
|
||||
validated_links = self.validate_links()
|
||||
|
||||
node_data = CallbackNodeCoreSchemaData(
|
||||
then_port_number=0
|
||||
)
|
||||
|
||||
# Создаем схему с валидированными данными
|
||||
return CallbackNodeCoreSchema(
|
||||
ps_id=validated_data.ps_id,
|
||||
node_type=validated_data.node_type,
|
||||
parent_id=validated_links.parent_id,
|
||||
parent_port_number=validated_links.parent_port_number,
|
||||
data=node_data
|
||||
)
|
||||
except Exception as e:
|
||||
print(f"Callback node validation error: {e}")
|
||||
raise
|
||||
|
||||
def validate_data(self) -> CallbackNodeData:
|
||||
"""
|
||||
Валидирует данные узла callback
|
||||
"""
|
||||
return CallbackNodeData(**self.data)
|
||||
|
||||
def validate_links(self) -> CallbackNodeLinks:
|
||||
"""
|
||||
Валидирует связи узла callback
|
||||
"""
|
||||
return CallbackNodeLinks(**self.links)
|
||||
|
||||
def process(self, context):
|
||||
pass
|
||||
|
@@ -1,18 +1,73 @@
|
||||
from typing import Dict, Any
|
||||
from core import VorkNode
|
||||
from core.form_descriptors import get_form_descriptor
|
||||
from model_nodes.node_each_models import (
|
||||
EachNodeData,
|
||||
EachNodeLinks,
|
||||
EachNodeCoreSchema,
|
||||
EachNodeCoreSchemaData
|
||||
)
|
||||
|
||||
|
||||
class VorkNodeEach(VorkNode):
|
||||
|
||||
def __init__(self, data: Dict[str, Any], links: Dict[str, Any] = None):
|
||||
"""
|
||||
Инициализация узла each
|
||||
"""
|
||||
super().__init__(data, links or {})
|
||||
|
||||
@property
|
||||
def id(self) -> str:
|
||||
return "node_each"
|
||||
return "EACH"
|
||||
|
||||
@classmethod
|
||||
def form(cls):
|
||||
pass
|
||||
def form(cls) -> Dict[str, Any]:
|
||||
"""
|
||||
Возвращает статический дескриптор формы для узла Each
|
||||
"""
|
||||
return get_form_descriptor("EACH")
|
||||
|
||||
def validate(self) -> bool:
|
||||
return True
|
||||
def validate(self) -> EachNodeCoreSchema:
|
||||
"""
|
||||
Валидирует данные узла each и возвращает схему
|
||||
"""
|
||||
try:
|
||||
# Валидируем данные узла
|
||||
validated_data = self.validate_data()
|
||||
|
||||
# Валидируем связи узла
|
||||
validated_links = self.validate_links()
|
||||
|
||||
# Создаем данные портов (аналогично if)
|
||||
node_data = EachNodeCoreSchemaData(
|
||||
then_port_number=0,
|
||||
else_port_number=1,
|
||||
)
|
||||
|
||||
# Создаем схему с валидированными данными
|
||||
return EachNodeCoreSchema(
|
||||
ps_id=validated_data.ps_id,
|
||||
node_type=validated_data.node_type,
|
||||
parent_id=validated_links.parent_id,
|
||||
parent_port_number=validated_links.parent_port_number,
|
||||
data=node_data
|
||||
)
|
||||
except Exception as e:
|
||||
print(f"Each node validation error: {e}")
|
||||
raise
|
||||
|
||||
def validate_data(self) -> EachNodeData:
|
||||
"""
|
||||
Валидирует данные узла each
|
||||
"""
|
||||
return EachNodeData(**self.data)
|
||||
|
||||
def validate_links(self) -> EachNodeLinks:
|
||||
"""
|
||||
Валидирует связи узла each
|
||||
"""
|
||||
return EachNodeLinks(**self.links)
|
||||
|
||||
def process(self, context):
|
||||
pass
|
||||
|
@@ -1,11 +1,11 @@
|
||||
from typing import Dict, Any
|
||||
from typing import Any, Dict
|
||||
from core import VorkNode
|
||||
from core.form_descriptors import get_form_descriptor
|
||||
from model_nodes.node_if_models import (
|
||||
IfNodeData,
|
||||
IfNodeLinks,
|
||||
IfNodeCoreSchema,
|
||||
IfNodeCoreSchemaData,
|
||||
IfNodeDescriptor
|
||||
IfNodeCoreSchemaData
|
||||
)
|
||||
|
||||
|
||||
@@ -16,8 +16,11 @@ class VorkNodeIf(VorkNode):
|
||||
return "IF"
|
||||
|
||||
@classmethod
|
||||
def form(cls) -> IfNodeDescriptor:
|
||||
return IfNodeDescriptor()
|
||||
def form(cls) -> Dict[str, Any]:
|
||||
"""
|
||||
Возвращает статический дескриптор формы для узла IF
|
||||
"""
|
||||
return get_form_descriptor("IF")
|
||||
|
||||
def validate(self) -> IfNodeCoreSchema:
|
||||
"""
|
||||
@@ -58,5 +61,5 @@ class VorkNodeIf(VorkNode):
|
||||
|
||||
return IfNodeLinks(**self.links)
|
||||
|
||||
def process(self, context: Any) -> bool:
|
||||
return True
|
||||
def process(self, context):
|
||||
pass
|
||||
|
@@ -1,25 +1,72 @@
|
||||
from typing import Dict, Any
|
||||
from core import VorkNode
|
||||
# from model_nodes.node_listen_models import (
|
||||
# ListenNodeData,
|
||||
# ListenNodeLinks,
|
||||
# ListenNodePSNodeCore,
|
||||
# ListenNodeSettingsDataCore
|
||||
# )
|
||||
from core.form_descriptors import get_form_descriptor
|
||||
from model_nodes.node_listen_models import (
|
||||
ListenNodeData,
|
||||
ListenNodeLinks,
|
||||
ListenNodeCoreSchema,
|
||||
ListenNodeCoreSchemaData
|
||||
)
|
||||
|
||||
|
||||
class VorkNodeListen(VorkNode):
|
||||
|
||||
def __init__(self, data: Dict[str, Any], links: Dict[str, Any] = None):
|
||||
"""
|
||||
Инициализация узла listen
|
||||
"""
|
||||
super().__init__(data, links or {})
|
||||
|
||||
@property
|
||||
def id(self) -> str:
|
||||
return "LISTEN"
|
||||
|
||||
@classmethod
|
||||
def form(cls) -> Dict[str, Any]:
|
||||
return cls.get_schema()
|
||||
"""
|
||||
Возвращает статический дескриптор формы для узла Listen
|
||||
"""
|
||||
return get_form_descriptor("LISTEN")
|
||||
|
||||
def validate(self) -> bool:
|
||||
return True
|
||||
def validate(self) -> ListenNodeCoreSchema:
|
||||
"""
|
||||
Валидирует данные узла listen и возвращает схему
|
||||
"""
|
||||
try:
|
||||
# Валидируем данные узла
|
||||
validated_data = self.validate_data()
|
||||
|
||||
# Валидируем связи узла
|
||||
validated_links = self.validate_links()
|
||||
|
||||
node_data = ListenNodeCoreSchemaData(
|
||||
then_port_number=0,
|
||||
is_start=validated_data.is_start
|
||||
)
|
||||
|
||||
# Создаем схему с валидированными данными
|
||||
return ListenNodeCoreSchema(
|
||||
ps_id=validated_data.ps_id,
|
||||
node_type=validated_data.node_type,
|
||||
parent_id=validated_links.parent_id,
|
||||
parent_port_number=validated_links.parent_port_number,
|
||||
data=node_data
|
||||
)
|
||||
except Exception as e:
|
||||
print(f"Listen node validation error: {e}")
|
||||
raise
|
||||
|
||||
def validate_data(self) -> ListenNodeData:
|
||||
"""
|
||||
Валидирует данные узла listen
|
||||
"""
|
||||
return ListenNodeData(**self.data)
|
||||
|
||||
def validate_links(self) -> ListenNodeLinks:
|
||||
"""
|
||||
Валидирует связи узла listen
|
||||
"""
|
||||
return ListenNodeLinks(**self.links)
|
||||
|
||||
def process(self, context):
|
||||
pass
|
||||
|
@@ -1,18 +1,75 @@
|
||||
from typing import Dict, Any
|
||||
import json
|
||||
from core import VorkNode
|
||||
from core.form_descriptors import get_form_descriptor
|
||||
from model_nodes.node_run_models import (
|
||||
RunNodeData,
|
||||
RunNodeLinks,
|
||||
RunNodeCoreSchema,
|
||||
RunNodeCoreSchemaData
|
||||
)
|
||||
|
||||
|
||||
class VorkNodeRun(VorkNode):
|
||||
|
||||
def __init__(self, data: Dict[str, Any], links: Dict[str, Any] = None):
|
||||
"""
|
||||
Инициализация узла run
|
||||
"""
|
||||
super().__init__(data, links or {})
|
||||
|
||||
@property
|
||||
def id(self) -> str:
|
||||
return "node_run"
|
||||
return "RUN"
|
||||
|
||||
@classmethod
|
||||
def form(cls):
|
||||
pass
|
||||
def form(cls) -> Dict[str, Any]:
|
||||
"""
|
||||
Возвращает статический дескриптор формы для узла Run
|
||||
"""
|
||||
return get_form_descriptor("RUN")
|
||||
|
||||
def validate(self) -> bool:
|
||||
return True
|
||||
def validate(self) -> RunNodeCoreSchema:
|
||||
"""
|
||||
Валидирует данные узла run и возвращает схему
|
||||
"""
|
||||
try:
|
||||
# Валидируем данные узла
|
||||
validated_data = self.validate_data()
|
||||
|
||||
# Валидируем связи узла
|
||||
validated_links = self.validate_links()
|
||||
|
||||
node_data = RunNodeCoreSchemaData(
|
||||
then_port_number=0
|
||||
)
|
||||
|
||||
# Создаем схему с валидированными данными
|
||||
return RunNodeCoreSchema(
|
||||
ps_id=validated_data.ps_id,
|
||||
node_type=validated_data.node_type,
|
||||
parent_id=validated_links.parent_id,
|
||||
parent_port_number=validated_links.parent_port_number,
|
||||
data=node_data
|
||||
)
|
||||
except Exception as e:
|
||||
print(f"Run node validation error: {e}")
|
||||
raise
|
||||
|
||||
def validate_data(self) -> RunNodeData:
|
||||
"""
|
||||
Валидирует данные узла run
|
||||
"""
|
||||
return RunNodeData(**self.data)
|
||||
|
||||
def validate_links(self) -> RunNodeLinks:
|
||||
"""
|
||||
Валидирует связи узла run
|
||||
"""
|
||||
return RunNodeLinks(**self.links)
|
||||
|
||||
def process(self, context):
|
||||
"""
|
||||
Обрабатывает логику узла run - выполнение встроенной задачи
|
||||
"""
|
||||
pass
|
||||
|
@@ -1,18 +1,72 @@
|
||||
from typing import Dict, Any
|
||||
from core import VorkNode
|
||||
from core.form_descriptors import get_form_descriptor
|
||||
from model_nodes.node_set_models import (
|
||||
SetNodeData,
|
||||
SetNodeLinks,
|
||||
SetNodeCoreSchema,
|
||||
SetNodeCoreSchemaData
|
||||
)
|
||||
|
||||
|
||||
class VorkNodeSet(VorkNode):
|
||||
|
||||
def __init__(self, data: Dict[str, Any], links: Dict[str, Any] = None):
|
||||
"""
|
||||
Инициализация узла set
|
||||
"""
|
||||
super().__init__(data, links or {})
|
||||
|
||||
@property
|
||||
def id(self) -> str:
|
||||
return "node_set"
|
||||
return "SET"
|
||||
|
||||
@classmethod
|
||||
def form(cls):
|
||||
pass
|
||||
def form(cls) -> Dict[str, Any]:
|
||||
"""
|
||||
Возвращает статический дескриптор формы для узла Set
|
||||
"""
|
||||
return get_form_descriptor("SET")
|
||||
|
||||
def validate(self) -> bool:
|
||||
return True
|
||||
def validate(self) -> SetNodeCoreSchema:
|
||||
"""
|
||||
Валидирует данные узла set и возвращает схему
|
||||
"""
|
||||
try:
|
||||
# Валидируем данные узла
|
||||
validated_data = self.validate_data()
|
||||
|
||||
# Валидируем связи узла
|
||||
validated_links = self.validate_links()
|
||||
|
||||
# Создаем данные портов
|
||||
node_data = SetNodeCoreSchemaData(
|
||||
then_port_number=0,
|
||||
)
|
||||
|
||||
# Создаем схему с валидированными данными
|
||||
return SetNodeCoreSchema(
|
||||
ps_id=validated_data.ps_id,
|
||||
node_type=validated_data.node_type,
|
||||
parent_id=validated_links.parent_id,
|
||||
parent_port_number=validated_links.parent_port_number,
|
||||
data=node_data
|
||||
)
|
||||
except Exception as e:
|
||||
print(f"Set node validation error: {e}")
|
||||
raise
|
||||
|
||||
def validate_data(self) -> SetNodeData:
|
||||
"""
|
||||
Валидирует данные узла set
|
||||
"""
|
||||
return SetNodeData(**self.data)
|
||||
|
||||
def validate_links(self) -> SetNodeLinks:
|
||||
"""
|
||||
Валидирует связи узла set
|
||||
"""
|
||||
return SetNodeLinks(**self.links)
|
||||
|
||||
def process(self, context):
|
||||
pass
|
||||
|
@@ -1,18 +1,73 @@
|
||||
from typing import Dict, Any
|
||||
from core import VorkNode
|
||||
from core.form_descriptors import get_form_descriptor
|
||||
from model_nodes.node_switch_models import (
|
||||
SwitchNodeData,
|
||||
SwitchNodeLinks,
|
||||
SwitchNodeCoreSchema,
|
||||
SwitchNodeCoreSchemaData
|
||||
)
|
||||
|
||||
|
||||
class VorkNodeSwitch(VorkNode):
|
||||
|
||||
def __init__(self, data: Dict[str, Any], links: Dict[str, Any] = None):
|
||||
"""
|
||||
Инициализация узла switch
|
||||
"""
|
||||
super().__init__(data, links or {})
|
||||
|
||||
@property
|
||||
def id(self) -> str:
|
||||
return "node_switch"
|
||||
return "SWITCH"
|
||||
|
||||
@classmethod
|
||||
def form(cls):
|
||||
pass
|
||||
def form(cls) -> Dict[str, Any]:
|
||||
"""
|
||||
Возвращает статический дескриптор формы для узла Switch
|
||||
"""
|
||||
return get_form_descriptor("SWITCH")
|
||||
|
||||
def validate(self) -> bool:
|
||||
return True
|
||||
def validate(self) -> SwitchNodeCoreSchema:
|
||||
"""
|
||||
Валидирует данные узла switch и возвращает схему
|
||||
"""
|
||||
try:
|
||||
# Валидируем данные узла
|
||||
validated_data = self.validate_data()
|
||||
|
||||
# Валидируем связи узла
|
||||
validated_links = self.validate_links()
|
||||
|
||||
# Создаем данные портов (default=0, case_1=1)
|
||||
node_data = SwitchNodeCoreSchemaData(
|
||||
default_port_number=0,
|
||||
case_1_port_number=1,
|
||||
)
|
||||
|
||||
# Создаем схему с валидированными данными
|
||||
return SwitchNodeCoreSchema(
|
||||
ps_id=validated_data.ps_id,
|
||||
node_type=validated_data.node_type,
|
||||
parent_id=validated_links.parent_id,
|
||||
parent_port_number=validated_links.parent_port_number,
|
||||
data=node_data
|
||||
)
|
||||
except Exception as e:
|
||||
print(f"Switch node validation error: {e}")
|
||||
raise
|
||||
|
||||
def validate_data(self) -> SwitchNodeData:
|
||||
"""
|
||||
Валидирует данные узла switch
|
||||
"""
|
||||
return SwitchNodeData(**self.data)
|
||||
|
||||
def validate_links(self) -> SwitchNodeLinks:
|
||||
"""
|
||||
Валидирует связи узла switch
|
||||
"""
|
||||
return SwitchNodeLinks(**self.links)
|
||||
|
||||
def process(self, context):
|
||||
pass
|
||||
|
@@ -1,18 +1,71 @@
|
||||
from typing import Dict, Any
|
||||
from core import VorkNode
|
||||
from core.form_descriptors import get_form_descriptor
|
||||
from model_nodes.node_trigger_models import (
|
||||
TriggerNodeData,
|
||||
TriggerNodeLinks,
|
||||
TriggerNodeCoreSchema,
|
||||
TriggerNodeCoreSchemaData
|
||||
)
|
||||
|
||||
|
||||
class VorkNodeTrigger(VorkNode):
|
||||
|
||||
def __init__(self, data: Dict[str, Any], links: Dict[str, Any] = None):
|
||||
"""
|
||||
Инициализация узла trigger
|
||||
"""
|
||||
super().__init__(data, links or {})
|
||||
|
||||
@property
|
||||
def id(self) -> str:
|
||||
return "node_trigger"
|
||||
return "TRIGGER"
|
||||
|
||||
@classmethod
|
||||
def form(cls):
|
||||
pass
|
||||
def form(cls) -> Dict[str, Any]:
|
||||
"""
|
||||
Возвращает статический дескриптор формы для узла Trigger
|
||||
"""
|
||||
return get_form_descriptor("TRIGGER")
|
||||
|
||||
def validate(self) -> bool:
|
||||
return True
|
||||
def validate(self) -> TriggerNodeCoreSchema:
|
||||
"""
|
||||
Валидирует данные узла trigger и возвращает схему
|
||||
"""
|
||||
try:
|
||||
# Валидируем данные узла
|
||||
validated_data = self.validate_data()
|
||||
|
||||
# Валидируем связи узла
|
||||
validated_links = self.validate_links()
|
||||
|
||||
node_data = TriggerNodeCoreSchemaData(
|
||||
then_port_number=0
|
||||
)
|
||||
|
||||
# Создаем схему с валидированными данными
|
||||
return TriggerNodeCoreSchema(
|
||||
ps_id=validated_data.ps_id,
|
||||
node_type=validated_data.node_type,
|
||||
parent_id=validated_links.parent_id,
|
||||
parent_port_number=validated_links.parent_port_number,
|
||||
data=node_data
|
||||
)
|
||||
except Exception as e:
|
||||
print(f"Trigger node validation error: {e}")
|
||||
raise
|
||||
|
||||
def validate_data(self) -> TriggerNodeData:
|
||||
"""
|
||||
Валидирует данные узла trigger
|
||||
"""
|
||||
return TriggerNodeData(**self.data)
|
||||
|
||||
def validate_links(self) -> TriggerNodeLinks:
|
||||
"""
|
||||
Валидирует связи узла trigger
|
||||
"""
|
||||
return TriggerNodeLinks(**self.links)
|
||||
|
||||
def process(self, context):
|
||||
pass
|
||||
|
@@ -1,18 +1,72 @@
|
||||
from typing import Dict, Any
|
||||
from core import VorkNode
|
||||
from core.form_descriptors import get_form_descriptor
|
||||
from model_nodes.node_wait_models import (
|
||||
WaitNodeData,
|
||||
WaitNodeLinks,
|
||||
WaitNodeCoreSchema,
|
||||
WaitNodeCoreSchemaData
|
||||
)
|
||||
|
||||
|
||||
class VorkNodeWait(VorkNode):
|
||||
|
||||
def __init__(self, data: Dict[str, Any], links: Dict[str, Any] = None):
|
||||
"""
|
||||
Инициализация узла wait
|
||||
"""
|
||||
super().__init__(data, links or {})
|
||||
|
||||
@property
|
||||
def id(self) -> str:
|
||||
return "node_wait"
|
||||
return "WAIT"
|
||||
|
||||
@classmethod
|
||||
def form(cls):
|
||||
pass
|
||||
def form(cls) -> Dict[str, Any]:
|
||||
"""
|
||||
Возвращает статический дескриптор формы для узла Wait
|
||||
"""
|
||||
return get_form_descriptor("WAIT")
|
||||
|
||||
def validate(self) -> bool:
|
||||
return True
|
||||
def validate(self) -> WaitNodeCoreSchema:
|
||||
"""
|
||||
Валидирует данные узла wait и возвращает схему
|
||||
"""
|
||||
try:
|
||||
# Валидируем данные узла
|
||||
validated_data = self.validate_data()
|
||||
|
||||
# Валидируем связи узла
|
||||
validated_links = self.validate_links()
|
||||
|
||||
# Создаем данные портов
|
||||
node_data = WaitNodeCoreSchemaData(
|
||||
then_port_number=0,
|
||||
)
|
||||
|
||||
# Создаем схему с валидированными данными
|
||||
return WaitNodeCoreSchema(
|
||||
ps_id=validated_data.ps_id,
|
||||
node_type=validated_data.node_type,
|
||||
parent_id=validated_links.parent_id,
|
||||
parent_port_number=validated_links.parent_port_number,
|
||||
data=node_data
|
||||
)
|
||||
except Exception as e:
|
||||
print(f"Wait node validation error: {e}")
|
||||
raise
|
||||
|
||||
def validate_data(self) -> WaitNodeData:
|
||||
"""
|
||||
Валидирует данные узла wait
|
||||
"""
|
||||
return WaitNodeData(**self.data)
|
||||
|
||||
def validate_links(self) -> WaitNodeLinks:
|
||||
"""
|
||||
Валидирует связи узла wait
|
||||
"""
|
||||
return WaitNodeLinks(**self.links)
|
||||
|
||||
def process(self, context):
|
||||
pass
|
||||
|
@@ -1,18 +1,73 @@
|
||||
from typing import Dict, Any
|
||||
from core import VorkNode
|
||||
from core.form_descriptors import get_form_descriptor
|
||||
from model_nodes.node_while_models import (
|
||||
WhileNodeData,
|
||||
WhileNodeLinks,
|
||||
WhileNodeCoreSchema,
|
||||
WhileNodeCoreSchemaData
|
||||
)
|
||||
|
||||
|
||||
class VorkNodeWhile(VorkNode):
|
||||
|
||||
def __init__(self, data: Dict[str, Any], links: Dict[str, Any] = None):
|
||||
"""
|
||||
Инициализация узла while
|
||||
"""
|
||||
super().__init__(data, links or {})
|
||||
|
||||
@property
|
||||
def id(self) -> str:
|
||||
return "node_while"
|
||||
return "WHILE"
|
||||
|
||||
@classmethod
|
||||
def form(cls):
|
||||
pass
|
||||
def form(cls) -> Dict[str, Any]:
|
||||
"""
|
||||
Возвращает статический дескриптор формы для узла While
|
||||
"""
|
||||
return get_form_descriptor("WHILE")
|
||||
|
||||
def validate(self) -> bool:
|
||||
return True
|
||||
def validate(self) -> WhileNodeCoreSchema:
|
||||
"""
|
||||
Валидирует данные узла while и возвращает схему
|
||||
"""
|
||||
try:
|
||||
# Валидируем данные узла
|
||||
validated_data = self.validate_data()
|
||||
|
||||
# Валидируем связи узла
|
||||
validated_links = self.validate_links()
|
||||
|
||||
# Создаем данные портов (аналогично if)
|
||||
node_data = WhileNodeCoreSchemaData(
|
||||
then_port_number=0,
|
||||
else_port_number=1,
|
||||
)
|
||||
|
||||
# Создаем схему с валидированными данными
|
||||
return WhileNodeCoreSchema(
|
||||
ps_id=validated_data.ps_id,
|
||||
node_type=validated_data.node_type,
|
||||
parent_id=validated_links.parent_id,
|
||||
parent_port_number=validated_links.parent_port_number,
|
||||
data=node_data
|
||||
)
|
||||
except Exception as e:
|
||||
print(f"While node validation error: {e}")
|
||||
raise
|
||||
|
||||
def validate_data(self) -> WhileNodeData:
|
||||
"""
|
||||
Валидирует данные узла while
|
||||
"""
|
||||
return WhileNodeData(**self.data)
|
||||
|
||||
def validate_links(self) -> WhileNodeLinks:
|
||||
"""
|
||||
Валидирует связи узла while
|
||||
"""
|
||||
return WhileNodeLinks(**self.links)
|
||||
|
||||
def process(self, context):
|
||||
pass
|
||||
|
Reference in New Issue
Block a user