another-ayx-python-sdk 2.4.2__py3-none-any.whl → 2.4.22__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- another_ayx_python_sdk/version.py +3 -3
- {another_ayx_python_sdk-2.4.2.dist-info → another_ayx_python_sdk-2.4.22.dist-info}/METADATA +1 -1
- another_ayx_python_sdk-2.4.22.dist-info/RECORD +813 -0
- {another_ayx_python_sdk-2.4.2.dist-info → another_ayx_python_sdk-2.4.22.dist-info}/top_level.txt +2 -0
- build/lib/another_ayx_python_sdk/__init__.py +14 -0
- build/lib/another_ayx_python_sdk/__main__.py +470 -0
- build/lib/another_ayx_python_sdk/assets/workspace_files/__init__.py +14 -0
- build/lib/another_ayx_python_sdk/assets/workspace_files/setup.py +38 -0
- build/lib/another_ayx_python_sdk/cli/__init__.py +14 -0
- build/lib/another_ayx_python_sdk/cli/utilities.py +103 -0
- build/lib/another_ayx_python_sdk/cli/workspace.py +266 -0
- build/lib/another_ayx_python_sdk/cli/yxi_builder.py +125 -0
- build/lib/another_ayx_python_sdk/cli/yxi_installer.py +45 -0
- build/lib/another_ayx_python_sdk/core/__init__.py +51 -0
- build/lib/another_ayx_python_sdk/core/constants.py +25 -0
- build/lib/another_ayx_python_sdk/core/dcm_base.py +115 -0
- build/lib/another_ayx_python_sdk/core/doc_utilities.py +40 -0
- build/lib/another_ayx_python_sdk/core/environment_base.py +213 -0
- build/lib/another_ayx_python_sdk/core/exceptions.py +59 -0
- build/lib/another_ayx_python_sdk/core/field.py +183 -0
- build/lib/another_ayx_python_sdk/core/input_anchor_base.py +86 -0
- build/lib/another_ayx_python_sdk/core/input_connection_base.py +206 -0
- build/lib/another_ayx_python_sdk/core/io_base.py +139 -0
- build/lib/another_ayx_python_sdk/core/metadata.py +173 -0
- build/lib/another_ayx_python_sdk/core/observable_mixin.py +90 -0
- build/lib/another_ayx_python_sdk/core/output_anchor_base.py +151 -0
- build/lib/another_ayx_python_sdk/core/plugin.py +108 -0
- build/lib/another_ayx_python_sdk/core/plugin_v2.py +97 -0
- build/lib/another_ayx_python_sdk/core/provider_base.py +125 -0
- build/lib/another_ayx_python_sdk/core/proxy_requests.py +51 -0
- build/lib/another_ayx_python_sdk/core/record_packet.py +88 -0
- build/lib/another_ayx_python_sdk/core/record_packet_base.py +123 -0
- build/lib/another_ayx_python_sdk/core/register_plugin.py +127 -0
- build/lib/another_ayx_python_sdk/core/testing.py +191 -0
- build/lib/another_ayx_python_sdk/core/utils.py +146 -0
- build/lib/another_ayx_python_sdk/examples/AyxSdkInput/main.py +89 -0
- build/lib/another_ayx_python_sdk/examples/AyxSdkMultiConnectionsMultiOutputAnchor/main.py +102 -0
- build/lib/another_ayx_python_sdk/examples/AyxSdkMultipleInputAnchors/main.py +84 -0
- build/lib/another_ayx_python_sdk/examples/AyxSdkMultipleOutputAnchors/main.py +96 -0
- build/lib/another_ayx_python_sdk/examples/AyxSdkOptionalInputAnchor/main.py +94 -0
- build/lib/another_ayx_python_sdk/examples/AyxSdkOutput/main.py +78 -0
- build/lib/another_ayx_python_sdk/examples/AyxSdkPassThrough/main.py +82 -0
- build/lib/another_ayx_python_sdk/providers/__init__.py +14 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/__init__.py +41 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/__main__.py +85 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_dcm.py +58 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_driver.py +358 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_environment.py +73 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_environment_v2.py +278 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_input_anchor.py +73 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_input_connection.py +132 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_io.py +64 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_io_components.py +407 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_output_anchor.py +107 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_provider.py +68 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_provider_v2.py +128 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/amp_record_packet.py +21 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/builders/__init__.py +32 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/builders/input_anchor_builder.py +123 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/builders/input_connection_builder.py +95 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/builders/metadata_builder.py +118 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/builders/output_anchor_builder.py +110 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/builders/packers.py +458 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/builders/record_builder.py +204 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/builders/record_packet_builder.py +133 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/builders/tool_config_builder.py +59 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/cng_certs.py +197 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/__init__.py +18 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/amp_transport.py +127 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/transport_base.py +35 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/__init__.py +14 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/control_msgs.py +189 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/dcme_msgs.py +119 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/record_transfer_msgs.py +32 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_util.py +161 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/logger_config.py +63 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/plugin_class_loader.py +77 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/__init__.py +67 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/dcm_repository.py +252 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/environment_repository.py +212 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/grpc_repository.py +119 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_anchor_repository.py +110 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_connection_repository.py +276 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_metadata_repository.py +144 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_record_packet_repository.py +252 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/io_repository.py +188 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_anchor_repository.py +117 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_metadata_repository.py +129 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_record_packet_repository.py +170 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/plugin_class_repository.py +55 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/singleton.py +32 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/test_harness_state_repository.py +172 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/tool_config_repository.py +89 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/__init__.py +14 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/__init__.py +0 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/close_outgoing_anchor_pb2.py +25 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/close_outgoing_anchor_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/dcm_e_pb2.py +38 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/dcm_e_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_anchor_pb2.py +26 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_anchor_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_complete_pb2.py +25 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_complete_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_pb2.py +26 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_data_push_pb2.py +26 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_data_push_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_record_packet_push_pb2.py +26 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_record_packet_push_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/metadata_pb2.py +31 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/metadata_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_anchor_pb2.py +28 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_anchor_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_data_push_pb2.py +26 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_data_push_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_metadata_push_pb2.py +26 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_metadata_push_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_record_packet_push_pb2.py +26 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_record_packet_push_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/output_message_data_pb2.py +29 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/output_message_data_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/password_data_pb2.py +25 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/password_data_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/plugin_initialization_data_pb2.py +33 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/plugin_initialization_data_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_batch_pb2.py +25 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_batch_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_packet_pb2.py +29 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_packet_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_engine_service_pb2.py +34 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_engine_service_pb2_grpc.py +305 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_pb2.py +30 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_pb2_grpc.py +235 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_startup_info_pb2.py +25 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_startup_info_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_v2_pb2.py +54 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_v2_pb2_grpc.py +99 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/translate_message_data_pb2.py +27 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/translate_message_data_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/transport_pb2.py +31 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/transport_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/update_progress_pb2.py +25 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/update_progress_pb2_grpc.py +4 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_runner.py +115 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_service.py +207 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_service_v2.py +306 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/__init__.py +14 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/constants.py +22 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/conversions.py +55 -0
- build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/utilities.py +63 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/__init__.py +36 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/anchor_builder.py +95 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/cache_e1_sdk_import.py +31 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/connection_callback_strategy.py +155 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/connection_interface.py +125 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_dcm.py +53 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_environment.py +127 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_anchor.py +51 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_anchor_proxy.py +33 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_connection.py +87 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_io.py +71 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_output_anchor.py +157 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_output_anchor_proxy.py +97 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_plugin_driver.py +63 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_plugin_proxy.py +363 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_provider.py +71 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/e1_record_packet.py +21 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/events.py +36 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/__init__.py +37 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/alteryx_engine.py +105 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/constants.py +50 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/field.py +122 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/output_anchor.py +55 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/output_anchor_manager.py +31 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_copier.py +65 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_creator.py +41 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_info.py +134 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_ref.py +42 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/tool.py +29 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/tool_execution_info.py +43 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/__init__.py +14 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/__init__.py +18 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/field_proxy.py +109 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/record_copier_proxy.py +49 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/records/__init__.py +23 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/records/base_record_container.py +47 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/records/parsed_record_container.py +67 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/records/raw_record_container.py +111 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/tool_config_loader.py +132 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/utilities/__init__.py +35 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/utilities/utilities.py +54 -0
- build/lib/another_ayx_python_sdk/providers/e1_provider/workflow_config.py +31 -0
- build/lib/another_ayx_python_sdk/providers/file_provider/__init__.py +32 -0
- build/lib/another_ayx_python_sdk/providers/file_provider/environment.py +131 -0
- build/lib/another_ayx_python_sdk/providers/file_provider/file_adapter.py +286 -0
- build/lib/another_ayx_python_sdk/providers/file_provider/file_provider.py +185 -0
- build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_dcm.py +53 -0
- build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_input_anchor.py +70 -0
- build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_input_connection.py +112 -0
- build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_output_anchor.py +114 -0
- build/lib/another_ayx_python_sdk/providers/file_provider/file_record_packet.py +21 -0
- build/lib/another_ayx_python_sdk/providers/file_provider/iox.py +56 -0
- build/lib/another_ayx_python_sdk/providers/file_provider/tool_input.py +104 -0
- build/lib/another_ayx_python_sdk/test_harness/__init__.py +14 -0
- build/lib/another_ayx_python_sdk/test_harness/__main__.py +120 -0
- build/lib/another_ayx_python_sdk/test_harness/plugin_runner.py +416 -0
- build/lib/another_ayx_python_sdk/test_harness/process_lifecycle_manager.py +80 -0
- build/lib/another_ayx_python_sdk/test_harness/sdk_engine_service.py +106 -0
- build/lib/another_ayx_python_sdk/version.py +8 -0
- build/lib/build/lib/another_ayx_python_sdk/__init__.py +14 -0
- build/lib/build/lib/another_ayx_python_sdk/__main__.py +470 -0
- build/lib/build/lib/another_ayx_python_sdk/assets/workspace_files/__init__.py +14 -0
- build/lib/build/lib/another_ayx_python_sdk/assets/workspace_files/setup.py +38 -0
- build/lib/build/lib/another_ayx_python_sdk/cli/__init__.py +14 -0
- build/lib/build/lib/another_ayx_python_sdk/cli/utilities.py +103 -0
- build/lib/build/lib/another_ayx_python_sdk/cli/workspace.py +266 -0
- build/lib/build/lib/another_ayx_python_sdk/cli/yxi_builder.py +125 -0
- build/lib/build/lib/another_ayx_python_sdk/cli/yxi_installer.py +45 -0
- build/lib/build/lib/another_ayx_python_sdk/core/__init__.py +51 -0
- build/lib/build/lib/another_ayx_python_sdk/core/constants.py +25 -0
- build/lib/build/lib/another_ayx_python_sdk/core/dcm_base.py +115 -0
- build/lib/build/lib/another_ayx_python_sdk/core/doc_utilities.py +40 -0
- build/lib/build/lib/another_ayx_python_sdk/core/environment_base.py +213 -0
- build/lib/build/lib/another_ayx_python_sdk/core/exceptions.py +59 -0
- build/lib/build/lib/another_ayx_python_sdk/core/field.py +183 -0
- build/lib/build/lib/another_ayx_python_sdk/core/input_anchor_base.py +86 -0
- build/lib/build/lib/another_ayx_python_sdk/core/input_connection_base.py +206 -0
- build/lib/build/lib/another_ayx_python_sdk/core/io_base.py +139 -0
- build/lib/build/lib/another_ayx_python_sdk/core/metadata.py +173 -0
- build/lib/build/lib/another_ayx_python_sdk/core/observable_mixin.py +90 -0
- build/lib/build/lib/another_ayx_python_sdk/core/output_anchor_base.py +151 -0
- build/lib/build/lib/another_ayx_python_sdk/core/plugin.py +108 -0
- build/lib/build/lib/another_ayx_python_sdk/core/plugin_v2.py +97 -0
- build/lib/build/lib/another_ayx_python_sdk/core/provider_base.py +125 -0
- build/lib/build/lib/another_ayx_python_sdk/core/proxy_requests.py +51 -0
- build/lib/build/lib/another_ayx_python_sdk/core/record_packet.py +88 -0
- build/lib/build/lib/another_ayx_python_sdk/core/record_packet_base.py +123 -0
- build/lib/build/lib/another_ayx_python_sdk/core/register_plugin.py +127 -0
- build/lib/build/lib/another_ayx_python_sdk/core/testing.py +191 -0
- build/lib/build/lib/another_ayx_python_sdk/core/utils.py +146 -0
- build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkInput/main.py +89 -0
- build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkMultiConnectionsMultiOutputAnchor/main.py +102 -0
- build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkMultipleInputAnchors/main.py +84 -0
- build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkMultipleOutputAnchors/main.py +96 -0
- build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkOptionalInputAnchor/main.py +94 -0
- build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkOutput/main.py +78 -0
- build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkPassThrough/main.py +82 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/__init__.py +14 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/__init__.py +41 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/__main__.py +85 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_dcm.py +58 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_driver.py +358 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_environment.py +73 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_environment_v2.py +278 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_input_anchor.py +73 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_input_connection.py +132 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_io.py +64 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_io_components.py +407 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_output_anchor.py +107 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_provider.py +68 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_provider_v2.py +128 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_record_packet.py +21 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/__init__.py +32 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/input_anchor_builder.py +123 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/input_connection_builder.py +95 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/metadata_builder.py +118 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/output_anchor_builder.py +110 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/packers.py +458 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/record_builder.py +204 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/record_packet_builder.py +133 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/tool_config_builder.py +59 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/cng_certs.py +197 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/__init__.py +18 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/amp_transport.py +127 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/transport_base.py +35 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/__init__.py +14 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/control_msgs.py +189 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/dcme_msgs.py +119 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/record_transfer_msgs.py +32 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_util.py +161 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/logger_config.py +63 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/plugin_class_loader.py +77 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/__init__.py +67 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/dcm_repository.py +252 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/environment_repository.py +212 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/grpc_repository.py +119 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_anchor_repository.py +110 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_connection_repository.py +276 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_metadata_repository.py +144 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_record_packet_repository.py +252 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/io_repository.py +188 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_anchor_repository.py +117 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_metadata_repository.py +129 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_record_packet_repository.py +170 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/plugin_class_repository.py +55 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/singleton.py +32 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/test_harness_state_repository.py +172 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/tool_config_repository.py +89 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/__init__.py +14 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/__init__.py +0 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/close_outgoing_anchor_pb2.py +25 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/close_outgoing_anchor_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/dcm_e_pb2.py +38 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/dcm_e_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_anchor_pb2.py +26 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_anchor_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_complete_pb2.py +25 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_complete_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_pb2.py +26 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_data_push_pb2.py +26 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_data_push_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_record_packet_push_pb2.py +26 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_record_packet_push_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/metadata_pb2.py +31 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/metadata_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_anchor_pb2.py +28 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_anchor_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_data_push_pb2.py +26 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_data_push_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_metadata_push_pb2.py +26 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_metadata_push_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_record_packet_push_pb2.py +26 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_record_packet_push_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/output_message_data_pb2.py +29 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/output_message_data_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/password_data_pb2.py +25 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/password_data_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/plugin_initialization_data_pb2.py +33 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/plugin_initialization_data_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_batch_pb2.py +25 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_batch_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_packet_pb2.py +29 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_packet_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_engine_service_pb2.py +34 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_engine_service_pb2_grpc.py +305 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_pb2.py +30 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_pb2_grpc.py +235 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_startup_info_pb2.py +25 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_startup_info_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_v2_pb2.py +54 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_v2_pb2_grpc.py +99 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/translate_message_data_pb2.py +27 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/translate_message_data_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/transport_pb2.py +31 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/transport_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/update_progress_pb2.py +25 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/update_progress_pb2_grpc.py +4 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_runner.py +115 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_service.py +207 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_service_v2.py +306 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/__init__.py +14 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/constants.py +22 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/conversions.py +55 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/utilities.py +63 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/__init__.py +36 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/anchor_builder.py +95 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/cache_e1_sdk_import.py +31 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/connection_callback_strategy.py +155 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/connection_interface.py +125 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_dcm.py +53 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_environment.py +127 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_anchor.py +51 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_anchor_proxy.py +33 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_connection.py +87 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_io.py +71 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_output_anchor.py +157 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_output_anchor_proxy.py +97 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_plugin_driver.py +63 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_plugin_proxy.py +363 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_provider.py +71 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_record_packet.py +21 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/events.py +36 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/__init__.py +37 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/alteryx_engine.py +105 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/constants.py +50 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/field.py +122 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/output_anchor.py +55 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/output_anchor_manager.py +31 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_copier.py +65 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_creator.py +41 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_info.py +134 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_ref.py +42 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/tool.py +29 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/tool_execution_info.py +43 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/__init__.py +14 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/__init__.py +18 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/field_proxy.py +109 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/record_copier_proxy.py +49 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/records/__init__.py +23 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/records/base_record_container.py +47 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/records/parsed_record_container.py +67 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/records/raw_record_container.py +111 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/tool_config_loader.py +132 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/utilities/__init__.py +35 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/utilities/utilities.py +54 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/workflow_config.py +31 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/__init__.py +32 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/environment.py +131 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_adapter.py +286 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_provider.py +185 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_dcm.py +53 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_input_anchor.py +70 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_input_connection.py +112 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_output_anchor.py +114 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_record_packet.py +21 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/iox.py +56 -0
- build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/tool_input.py +104 -0
- build/lib/build/lib/another_ayx_python_sdk/test_harness/__init__.py +14 -0
- build/lib/build/lib/another_ayx_python_sdk/test_harness/__main__.py +120 -0
- build/lib/build/lib/another_ayx_python_sdk/test_harness/plugin_runner.py +416 -0
- build/lib/build/lib/another_ayx_python_sdk/test_harness/process_lifecycle_manager.py +80 -0
- build/lib/build/lib/another_ayx_python_sdk/test_harness/sdk_engine_service.py +106 -0
- build/lib/build/lib/another_ayx_python_sdk/version.py +8 -0
- another_ayx_python_sdk-2.4.2.dist-info/RECORD +0 -403
- {another_ayx_python_sdk-2.4.2.dist-info → another_ayx_python_sdk-2.4.22.dist-info}/WHEEL +0 -0
- {another_ayx_python_sdk-2.4.2.dist-info → another_ayx_python_sdk-2.4.22.dist-info}/entry_points.txt +0 -0
- {another_ayx_python_sdk-2.4.2.dist-info → another_ayx_python_sdk-2.4.22.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,99 @@
|
|
1
|
+
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
2
|
+
"""Client and server classes corresponding to protobuf-defined services."""
|
3
|
+
import grpc
|
4
|
+
|
5
|
+
from . import sdk_tool_service_v2_pb2 as sdk__tool__service__v2__pb2
|
6
|
+
|
7
|
+
|
8
|
+
class SdkToolV2Stub(object):
|
9
|
+
"""Missing associated documentation comment in .proto file."""
|
10
|
+
|
11
|
+
def __init__(self, channel):
|
12
|
+
"""Constructor.
|
13
|
+
|
14
|
+
Args:
|
15
|
+
channel: A grpc.Channel.
|
16
|
+
"""
|
17
|
+
self.Control = channel.stream_stream(
|
18
|
+
'/sdk.SdkToolV2/Control',
|
19
|
+
request_serializer=sdk__tool__service__v2__pb2.ControlIn.SerializeToString,
|
20
|
+
response_deserializer=sdk__tool__service__v2__pb2.ControlOut.FromString,
|
21
|
+
)
|
22
|
+
self.RecordTransfer = channel.stream_stream(
|
23
|
+
'/sdk.SdkToolV2/RecordTransfer',
|
24
|
+
request_serializer=sdk__tool__service__v2__pb2.RecordTransferIn.SerializeToString,
|
25
|
+
response_deserializer=sdk__tool__service__v2__pb2.RecordTransferOut.FromString,
|
26
|
+
)
|
27
|
+
|
28
|
+
|
29
|
+
class SdkToolV2Servicer(object):
|
30
|
+
"""Missing associated documentation comment in .proto file."""
|
31
|
+
|
32
|
+
def Control(self, request_iterator, context):
|
33
|
+
"""Missing associated documentation comment in .proto file."""
|
34
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
35
|
+
context.set_details('Method not implemented!')
|
36
|
+
raise NotImplementedError('Method not implemented!')
|
37
|
+
|
38
|
+
def RecordTransfer(self, request_iterator, context):
|
39
|
+
"""Missing associated documentation comment in .proto file."""
|
40
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
41
|
+
context.set_details('Method not implemented!')
|
42
|
+
raise NotImplementedError('Method not implemented!')
|
43
|
+
|
44
|
+
|
45
|
+
def add_SdkToolV2Servicer_to_server(servicer, server):
|
46
|
+
rpc_method_handlers = {
|
47
|
+
'Control': grpc.stream_stream_rpc_method_handler(
|
48
|
+
servicer.Control,
|
49
|
+
request_deserializer=sdk__tool__service__v2__pb2.ControlIn.FromString,
|
50
|
+
response_serializer=sdk__tool__service__v2__pb2.ControlOut.SerializeToString,
|
51
|
+
),
|
52
|
+
'RecordTransfer': grpc.stream_stream_rpc_method_handler(
|
53
|
+
servicer.RecordTransfer,
|
54
|
+
request_deserializer=sdk__tool__service__v2__pb2.RecordTransferIn.FromString,
|
55
|
+
response_serializer=sdk__tool__service__v2__pb2.RecordTransferOut.SerializeToString,
|
56
|
+
),
|
57
|
+
}
|
58
|
+
generic_handler = grpc.method_handlers_generic_handler(
|
59
|
+
'sdk.SdkToolV2', rpc_method_handlers)
|
60
|
+
server.add_generic_rpc_handlers((generic_handler,))
|
61
|
+
|
62
|
+
|
63
|
+
# This class is part of an EXPERIMENTAL API.
|
64
|
+
class SdkToolV2(object):
|
65
|
+
"""Missing associated documentation comment in .proto file."""
|
66
|
+
|
67
|
+
@staticmethod
|
68
|
+
def Control(request_iterator,
|
69
|
+
target,
|
70
|
+
options=(),
|
71
|
+
channel_credentials=None,
|
72
|
+
call_credentials=None,
|
73
|
+
insecure=False,
|
74
|
+
compression=None,
|
75
|
+
wait_for_ready=None,
|
76
|
+
timeout=None,
|
77
|
+
metadata=None):
|
78
|
+
return grpc.experimental.stream_stream(request_iterator, target, '/sdk.SdkToolV2/Control',
|
79
|
+
sdk__tool__service__v2__pb2.ControlIn.SerializeToString,
|
80
|
+
sdk__tool__service__v2__pb2.ControlOut.FromString,
|
81
|
+
options, channel_credentials,
|
82
|
+
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
83
|
+
|
84
|
+
@staticmethod
|
85
|
+
def RecordTransfer(request_iterator,
|
86
|
+
target,
|
87
|
+
options=(),
|
88
|
+
channel_credentials=None,
|
89
|
+
call_credentials=None,
|
90
|
+
insecure=False,
|
91
|
+
compression=None,
|
92
|
+
wait_for_ready=None,
|
93
|
+
timeout=None,
|
94
|
+
metadata=None):
|
95
|
+
return grpc.experimental.stream_stream(request_iterator, target, '/sdk.SdkToolV2/RecordTransfer',
|
96
|
+
sdk__tool__service__v2__pb2.RecordTransferIn.SerializeToString,
|
97
|
+
sdk__tool__service__v2__pb2.RecordTransferOut.FromString,
|
98
|
+
options, channel_credentials,
|
99
|
+
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
+
# source: translate_message_data.proto
|
4
|
+
"""Generated protocol buffer code."""
|
5
|
+
from google.protobuf.internal import builder as _builder
|
6
|
+
from google.protobuf import descriptor as _descriptor
|
7
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
8
|
+
from google.protobuf import symbol_database as _symbol_database
|
9
|
+
# @@protoc_insertion_point(imports)
|
10
|
+
|
11
|
+
_sym_db = _symbol_database.Default()
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1ctranslate_message_data.proto\x12\x03sdk\"N\n\x14TranslateMessageData\x12\x1a\n\x12unlocalized_string\x18\x01 \x01(\t\x12\x1a\n\x12interpolation_data\x18\x02 \x03(\t\"/\n\x11TranslatedMessage\x12\x1a\n\x12translated_message\x18\x01 \x01(\tb\x06proto3')
|
17
|
+
|
18
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
19
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'translate_message_data_pb2', globals())
|
20
|
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
21
|
+
|
22
|
+
DESCRIPTOR._options = None
|
23
|
+
_TRANSLATEMESSAGEDATA._serialized_start=37
|
24
|
+
_TRANSLATEMESSAGEDATA._serialized_end=115
|
25
|
+
_TRANSLATEDMESSAGE._serialized_start=117
|
26
|
+
_TRANSLATEDMESSAGE._serialized_end=164
|
27
|
+
# @@protoc_insertion_point(module_scope)
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
+
# source: transport.proto
|
4
|
+
"""Generated protocol buffer code."""
|
5
|
+
from google.protobuf.internal import builder as _builder
|
6
|
+
from google.protobuf import descriptor as _descriptor
|
7
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
8
|
+
from google.protobuf import symbol_database as _symbol_database
|
9
|
+
# @@protoc_insertion_point(imports)
|
10
|
+
|
11
|
+
_sym_db = _symbol_database.Default()
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0ftransport.proto\x12\x03sdk\"0\n\x0cReturnStatus\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"\xfe\x03\n\rPluginMessage\x12\x0f\n\x07message\x18\x01 \x01(\t\x12,\n\x04type\x18\x02 \x01(\x0e\x32\x1e.sdk.PluginMessage.MessageType\"\xad\x03\n\x0bMessageType\x12\x0b\n\x07INVALID\x10\x00\x12\x08\n\x04INFO\x10\x01\x12\x0b\n\x07WARNING\x10\x02\x12\x0f\n\x0bPLUGINERROR\x10\x03\x12\x0c\n\x08\x43OMPLETE\x10\x04\x12\x14\n\x10\x46IELD_CONV_ERROR\x10\x05\x12\x0c\n\x08\x44ISABLED\x10\x07\x12\x0e\n\nFILE_INPUT\x10\x08\x12\x0f\n\x0b\x46ILE_OUTPUT\x10\t\x12\x1f\n\x1bUPDATE_OUTPUT_META_INFO_XML\x10\n\x12\x1c\n\x18UPDATE_OUTPUT_CONFIG_XML\x10\x0b\x12\x11\n\rDOC_TEMP_FILE\x10\r\x12\x13\n\x0f\x43\x41\x43HE_TEMP_FILE\x10\x10\x12\x11\n\rLOW_DISK_WARN\x10\x14\x12\x13\n\x0fSAFE_MODE_ERROR\x10\x15\x12\x16\n\x12OUTPUT_FIELD_NAMES\x10(\x12\x11\n\rOUTPUT_RECORD\x10)\x12\x17\n\x13RECORD_COUNT_STRING\x10\x32\x12\x1f\n\x1b\x42ROWSE_EVERYWHERE_FILE_NAME\x10\x46\x12\"\n\x1e\x42ROWSE_EVERYWHERE_FILE_NAME_EX\x10G\"\x07\n\x05\x45mptyb\x06proto3')
|
17
|
+
|
18
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
19
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'transport_pb2', globals())
|
20
|
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
21
|
+
|
22
|
+
DESCRIPTOR._options = None
|
23
|
+
_RETURNSTATUS._serialized_start=24
|
24
|
+
_RETURNSTATUS._serialized_end=72
|
25
|
+
_PLUGINMESSAGE._serialized_start=75
|
26
|
+
_PLUGINMESSAGE._serialized_end=585
|
27
|
+
_PLUGINMESSAGE_MESSAGETYPE._serialized_start=156
|
28
|
+
_PLUGINMESSAGE_MESSAGETYPE._serialized_end=585
|
29
|
+
_EMPTY._serialized_start=587
|
30
|
+
_EMPTY._serialized_end=594
|
31
|
+
# @@protoc_insertion_point(module_scope)
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
+
# source: update_progress.proto
|
4
|
+
"""Generated protocol buffer code."""
|
5
|
+
from google.protobuf.internal import builder as _builder
|
6
|
+
from google.protobuf import descriptor as _descriptor
|
7
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
8
|
+
from google.protobuf import symbol_database as _symbol_database
|
9
|
+
# @@protoc_insertion_point(imports)
|
10
|
+
|
11
|
+
_sym_db = _symbol_database.Default()
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15update_progress.proto\x12\x03sdk\"\x1f\n\x0eUpdateProgress\x12\r\n\x05value\x18\x01 \x01(\x02\x62\x06proto3')
|
17
|
+
|
18
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
19
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'update_progress_pb2', globals())
|
20
|
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
21
|
+
|
22
|
+
DESCRIPTOR._options = None
|
23
|
+
_UPDATEPROGRESS._serialized_start=30
|
24
|
+
_UPDATEPROGRESS._serialized_end=61
|
25
|
+
# @@protoc_insertion_point(module_scope)
|
@@ -0,0 +1,115 @@
|
|
1
|
+
# Copyright (C) 2022 Alteryx, Inc. All rights reserved.
|
2
|
+
#
|
3
|
+
# Licensed under the ALTERYX SDK AND API LICENSE AGREEMENT;
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# https://www.alteryx.com/alteryx-sdk-and-api-license-agreement
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
"""Runner for the SDK gRPC lifecycle."""
|
15
|
+
import os
|
16
|
+
from typing import TYPE_CHECKING
|
17
|
+
|
18
|
+
from another_ayx_python_sdk.providers.amp_provider.grpc_util import build_sdk_tool_server
|
19
|
+
from another_ayx_python_sdk.providers.amp_provider.repositories.grpc_repository import (
|
20
|
+
GrpcRepository,
|
21
|
+
)
|
22
|
+
from another_ayx_python_sdk.providers.amp_provider.resources.generated.sdk_tool_service_startup_info_pb2 import (
|
23
|
+
SdkToolServiceStartupInfo,
|
24
|
+
)
|
25
|
+
from another_ayx_python_sdk.providers.amp_provider.resources.generated.transport_pb2 import (
|
26
|
+
ReturnStatus,
|
27
|
+
)
|
28
|
+
from another_ayx_python_sdk.providers.amp_provider.utilities.constants import ToolEnvType
|
29
|
+
from another_ayx_python_sdk.providers.amp_provider.utilities.utilities import tool_type
|
30
|
+
|
31
|
+
if TYPE_CHECKING:
|
32
|
+
from grpc.aio import Server
|
33
|
+
|
34
|
+
|
35
|
+
class HandshakeFailedException(RuntimeError):
|
36
|
+
"""Exception for when the handshake fails."""
|
37
|
+
|
38
|
+
pass
|
39
|
+
|
40
|
+
|
41
|
+
# A well known token used to communicate the LISTENing port back
|
42
|
+
# to the owner process (OOP) on Desktop/Designer builds
|
43
|
+
# DO NOT CHANGE THIS STRING
|
44
|
+
# See also ToolProcess.cpp
|
45
|
+
LISTEN_PORT_TOKEN = "ListenPort: "
|
46
|
+
|
47
|
+
|
48
|
+
class SdkToolRunner:
|
49
|
+
"""Manage gRPC lifecycle for the SDK Plugin."""
|
50
|
+
|
51
|
+
def __init__(self, sdk_engine_address: str):
|
52
|
+
"""Construct an SDK Tool Runner."""
|
53
|
+
self._sdk_engine_address = sdk_engine_address
|
54
|
+
self.sdk_tool_server: "Server" = None
|
55
|
+
self.sdk_tool_server_address = sdk_engine_address
|
56
|
+
|
57
|
+
async def start_service(self) -> None:
|
58
|
+
"""Start the SDK Tool Service."""
|
59
|
+
socket_address = (
|
60
|
+
os.getenv("TOOL_SERVICE_ADDRESS")
|
61
|
+
if tool_type() == ToolEnvType.Service
|
62
|
+
else "localhost:0"
|
63
|
+
)
|
64
|
+
|
65
|
+
[self.sdk_tool_server, port] = build_sdk_tool_server(socket_address)
|
66
|
+
|
67
|
+
# See notes around LISTEN_PORT_TOKEN above. Explicit flush
|
68
|
+
# ensures we do not buffer, but instead write directly to stdout.
|
69
|
+
print(f"{LISTEN_PORT_TOKEN}{port}", flush=True)
|
70
|
+
|
71
|
+
await self.sdk_tool_server.start()
|
72
|
+
await self.sdk_tool_server.wait_for_termination()
|
73
|
+
|
74
|
+
@staticmethod
|
75
|
+
def handshake_with_sdk_engine_service() -> "ReturnStatus":
|
76
|
+
"""
|
77
|
+
Run the handshake with the SDK Engine Server.
|
78
|
+
|
79
|
+
Returns
|
80
|
+
-------
|
81
|
+
return_status: ReturnStatus
|
82
|
+
Whether or not the handshake is successful
|
83
|
+
|
84
|
+
Raises
|
85
|
+
------
|
86
|
+
HandshakeFailedException
|
87
|
+
If method cannot connect to the engine service
|
88
|
+
"""
|
89
|
+
return_status = None
|
90
|
+
if tool_type() == ToolEnvType.Desktop:
|
91
|
+
try:
|
92
|
+
return_status = (
|
93
|
+
GrpcRepository()
|
94
|
+
.get_sdk_engine_client()
|
95
|
+
.ConfirmSdkEngineServiceConnection(
|
96
|
+
SdkToolServiceStartupInfo(
|
97
|
+
success=True,
|
98
|
+
message=f"Startup of plugin successful!",
|
99
|
+
sdk_tool_server_address=GrpcRepository()
|
100
|
+
.get_sdk_tool_server_address()
|
101
|
+
.address,
|
102
|
+
),
|
103
|
+
)
|
104
|
+
)
|
105
|
+
except Exception:
|
106
|
+
raise HandshakeFailedException("Couldn't connect to server.")
|
107
|
+
else:
|
108
|
+
return_status = ReturnStatus(
|
109
|
+
message=f"Connection successful!", success=True
|
110
|
+
)
|
111
|
+
return return_status
|
112
|
+
|
113
|
+
async def wait_for_termination(self) -> None:
|
114
|
+
"""Block and wait for the process to terminate."""
|
115
|
+
await self.sdk_tool_server.wait_for_termination()
|
@@ -0,0 +1,207 @@
|
|
1
|
+
# Copyright (C) 2022 Alteryx, Inc. All rights reserved.
|
2
|
+
#
|
3
|
+
# Licensed under the ALTERYX SDK AND API LICENSE AGREEMENT;
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# https://www.alteryx.com/alteryx-sdk-and-api-license-agreement
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
"""SDK Engine Service grpc class."""
|
15
|
+
import logging
|
16
|
+
import traceback
|
17
|
+
from typing import Any, Callable
|
18
|
+
|
19
|
+
from another_ayx_python_sdk.providers.amp_provider import AMPDriver, AMPProvider
|
20
|
+
from another_ayx_python_sdk.providers.amp_provider.repositories import (
|
21
|
+
EnvironmentRepository,
|
22
|
+
GrpcRepository,
|
23
|
+
InputAnchorRepository,
|
24
|
+
InputMetadataRepository,
|
25
|
+
InputRecordPacketRepository,
|
26
|
+
OutputAnchorRepository,
|
27
|
+
PluginClassRepository,
|
28
|
+
ToolConfigRepository,
|
29
|
+
clear_repositories,
|
30
|
+
)
|
31
|
+
from another_ayx_python_sdk.providers.amp_provider.resources.generated.sdk_tool_service_pb2_grpc import (
|
32
|
+
SdkToolServicer,
|
33
|
+
)
|
34
|
+
from another_ayx_python_sdk.providers.amp_provider.resources.generated.transport_pb2 import (
|
35
|
+
ReturnStatus,
|
36
|
+
)
|
37
|
+
|
38
|
+
import grpc
|
39
|
+
|
40
|
+
|
41
|
+
logger = logging.getLogger()
|
42
|
+
|
43
|
+
|
44
|
+
def _handle_service_exception(method: Callable) -> Callable:
|
45
|
+
def _handle_exception(obj, request, context) -> Any: # type: ignore
|
46
|
+
try:
|
47
|
+
return method(obj, request, context)
|
48
|
+
except Exception:
|
49
|
+
traceback_str = traceback.format_exc()
|
50
|
+
logger.exception(traceback_str)
|
51
|
+
context.set_details(traceback_str)
|
52
|
+
context.set_code(grpc.StatusCode.INTERNAL)
|
53
|
+
context.abort(code=grpc.StatusCode.INTERNAL, details=traceback_str)
|
54
|
+
|
55
|
+
return _handle_exception
|
56
|
+
|
57
|
+
|
58
|
+
class SdkToolService(SdkToolServicer):
|
59
|
+
"""SDK Tool Service GRPC overrides."""
|
60
|
+
|
61
|
+
@_handle_service_exception
|
62
|
+
def ConfirmSdkToolServiceConnection(self, request, context): # type: ignore # noqa: N802
|
63
|
+
"""Confirm healthy connection.
|
64
|
+
|
65
|
+
Parameters
|
66
|
+
----------
|
67
|
+
request: Empty
|
68
|
+
The incoming gRPC request - should be empty for this method
|
69
|
+
|
70
|
+
context: grpc.ServicerContext
|
71
|
+
Service-level context for this gRPC service
|
72
|
+
"""
|
73
|
+
logger.debug("ConfirmSdkToolServiceConnection called.")
|
74
|
+
status = ReturnStatus(message=f"Connection successful!", success=True)
|
75
|
+
return status
|
76
|
+
|
77
|
+
@_handle_service_exception
|
78
|
+
def InitializeSdkPlugin(self, request, context): # type: ignore # noqa: N802
|
79
|
+
"""
|
80
|
+
Initialize SDK Plugin with config, anchors, and connections.
|
81
|
+
|
82
|
+
Parameters
|
83
|
+
----------
|
84
|
+
request: PluginInitializationData
|
85
|
+
The incoming gRPC request - should contain tool config, engine constants, list of incoming and outgoing anchors, and a boolean updataMode.
|
86
|
+
|
87
|
+
context: grpc.ServicerContext
|
88
|
+
Service-level context for this gRPC service
|
89
|
+
|
90
|
+
"""
|
91
|
+
logger.debug("InitializeSdkPlugin called.")
|
92
|
+
AMPDriver().clear_state()
|
93
|
+
clear_repositories(exclude={GrpcRepository(), PluginClassRepository()})
|
94
|
+
|
95
|
+
ToolConfigRepository().save_xml_tool_config(request.configXml)
|
96
|
+
EnvironmentRepository().save_engine_constants(dict(request.engineConstants))
|
97
|
+
EnvironmentRepository().save_update_mode(request.updateMode)
|
98
|
+
|
99
|
+
for input_anchor in request.incomingAnchors:
|
100
|
+
logger.debug("Saving input anchor: \n%s\n", input_anchor)
|
101
|
+
InputAnchorRepository().save_grpc_anchor(input_anchor)
|
102
|
+
|
103
|
+
for output_anchor in request.outgoingAnchors:
|
104
|
+
logger.debug("Saving output anchor: \n%s\n", output_anchor)
|
105
|
+
OutputAnchorRepository().save_grpc_anchor(output_anchor)
|
106
|
+
|
107
|
+
amp_provider = AMPProvider()
|
108
|
+
sdk_plugin = PluginClassRepository().get_plugin_class()(amp_provider)
|
109
|
+
AMPDriver().plugin = sdk_plugin
|
110
|
+
|
111
|
+
for anchor in request.incomingAnchors:
|
112
|
+
for connection in anchor.connections:
|
113
|
+
logger.debug(
|
114
|
+
"Driving metadata for input anchor %s and connection %s.",
|
115
|
+
anchor.name,
|
116
|
+
connection.name,
|
117
|
+
)
|
118
|
+
AMPDriver().metadata_received(anchor.name, connection.name)
|
119
|
+
|
120
|
+
status = ReturnStatus(message=f"Initialization successful!", success=True)
|
121
|
+
return status
|
122
|
+
|
123
|
+
@_handle_service_exception
|
124
|
+
def PushIncomingRecordPacket(self, request, context): # type: ignore # noqa: N802
|
125
|
+
"""
|
126
|
+
Push a record packet to the plugin.
|
127
|
+
|
128
|
+
Parameters
|
129
|
+
----------
|
130
|
+
request: IncomingRecordPacketPush
|
131
|
+
The incoming gRPC request - should contain an anchor name, connection name, and the record packet to send.
|
132
|
+
|
133
|
+
context: grpc.ServicerContext
|
134
|
+
Service-level context for this gRPC service.
|
135
|
+
"""
|
136
|
+
logger.debug("PushIncomingRecordPacket called.")
|
137
|
+
logger.debug(
|
138
|
+
"Packet received on anchor %s and connection %s.",
|
139
|
+
request.anchor_name,
|
140
|
+
request.connection_name,
|
141
|
+
)
|
142
|
+
record_packet_metadata = InputMetadataRepository().get_metadata(
|
143
|
+
request.anchor_name, request.connection_name
|
144
|
+
)
|
145
|
+
InputRecordPacketRepository().save_grpc_record_packet(
|
146
|
+
anchor_name=request.anchor_name,
|
147
|
+
connection_name=request.connection_name,
|
148
|
+
grpc_record_packet=request.record_packet,
|
149
|
+
metadata=record_packet_metadata,
|
150
|
+
)
|
151
|
+
logger.debug(
|
152
|
+
"Driving record packet to plugin on anchor %s and connection %s.",
|
153
|
+
request.anchor_name,
|
154
|
+
request.connection_name,
|
155
|
+
)
|
156
|
+
AMPDriver().record_packet_received(
|
157
|
+
anchor_name=request.anchor_name,
|
158
|
+
connection_name=request.connection_name,
|
159
|
+
)
|
160
|
+
status = ReturnStatus(message="Record packet recieved!", success=True)
|
161
|
+
return status
|
162
|
+
|
163
|
+
@_handle_service_exception
|
164
|
+
def NotifyIncomingConnectionComplete(self, request, context): # type: ignore # noqa: N802
|
165
|
+
"""
|
166
|
+
Notify the plugin that a connection has closed.
|
167
|
+
|
168
|
+
Parameters
|
169
|
+
----------
|
170
|
+
request: IncomingConnectionComplete
|
171
|
+
The incoming gRPC request - should contain an anchor name and connection name.
|
172
|
+
|
173
|
+
context: grpc.ServicerContext
|
174
|
+
Service-level context for this gRPC service
|
175
|
+
"""
|
176
|
+
logger.debug("NotifyIncomingConnectionComplete called.")
|
177
|
+
|
178
|
+
AMPDriver().connection_closed_callback(
|
179
|
+
request.anchor_name, request.connection_name
|
180
|
+
)
|
181
|
+
logger.debug(
|
182
|
+
"Connection closed for anchor %s, connection %s",
|
183
|
+
request.anchor_name,
|
184
|
+
request.connection_name,
|
185
|
+
)
|
186
|
+
status = ReturnStatus(
|
187
|
+
message=f"Connection {request.connection_name} closed!", success=True
|
188
|
+
)
|
189
|
+
return status
|
190
|
+
|
191
|
+
@_handle_service_exception
|
192
|
+
def NotifyPluginComplete(self, request, context): # type: ignore # noqa: N802
|
193
|
+
"""
|
194
|
+
Notify the plugin that the on_complete method should be called.
|
195
|
+
|
196
|
+
Parameters
|
197
|
+
----------
|
198
|
+
request: Empty
|
199
|
+
The incoming gRPC request - should be empty for this method
|
200
|
+
|
201
|
+
context: grpc.ServicerContext
|
202
|
+
Service-level context for this gRPC service
|
203
|
+
"""
|
204
|
+
logger.debug("NotifyPluginComplete Called")
|
205
|
+
AMPDriver().complete_callback()
|
206
|
+
status = ReturnStatus(message=f"Plugin process complete!", success=True)
|
207
|
+
return status
|