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.
Files changed (418) hide show
  1. another_ayx_python_sdk/version.py +3 -3
  2. {another_ayx_python_sdk-2.4.2.dist-info → another_ayx_python_sdk-2.4.22.dist-info}/METADATA +1 -1
  3. another_ayx_python_sdk-2.4.22.dist-info/RECORD +813 -0
  4. {another_ayx_python_sdk-2.4.2.dist-info → another_ayx_python_sdk-2.4.22.dist-info}/top_level.txt +2 -0
  5. build/lib/another_ayx_python_sdk/__init__.py +14 -0
  6. build/lib/another_ayx_python_sdk/__main__.py +470 -0
  7. build/lib/another_ayx_python_sdk/assets/workspace_files/__init__.py +14 -0
  8. build/lib/another_ayx_python_sdk/assets/workspace_files/setup.py +38 -0
  9. build/lib/another_ayx_python_sdk/cli/__init__.py +14 -0
  10. build/lib/another_ayx_python_sdk/cli/utilities.py +103 -0
  11. build/lib/another_ayx_python_sdk/cli/workspace.py +266 -0
  12. build/lib/another_ayx_python_sdk/cli/yxi_builder.py +125 -0
  13. build/lib/another_ayx_python_sdk/cli/yxi_installer.py +45 -0
  14. build/lib/another_ayx_python_sdk/core/__init__.py +51 -0
  15. build/lib/another_ayx_python_sdk/core/constants.py +25 -0
  16. build/lib/another_ayx_python_sdk/core/dcm_base.py +115 -0
  17. build/lib/another_ayx_python_sdk/core/doc_utilities.py +40 -0
  18. build/lib/another_ayx_python_sdk/core/environment_base.py +213 -0
  19. build/lib/another_ayx_python_sdk/core/exceptions.py +59 -0
  20. build/lib/another_ayx_python_sdk/core/field.py +183 -0
  21. build/lib/another_ayx_python_sdk/core/input_anchor_base.py +86 -0
  22. build/lib/another_ayx_python_sdk/core/input_connection_base.py +206 -0
  23. build/lib/another_ayx_python_sdk/core/io_base.py +139 -0
  24. build/lib/another_ayx_python_sdk/core/metadata.py +173 -0
  25. build/lib/another_ayx_python_sdk/core/observable_mixin.py +90 -0
  26. build/lib/another_ayx_python_sdk/core/output_anchor_base.py +151 -0
  27. build/lib/another_ayx_python_sdk/core/plugin.py +108 -0
  28. build/lib/another_ayx_python_sdk/core/plugin_v2.py +97 -0
  29. build/lib/another_ayx_python_sdk/core/provider_base.py +125 -0
  30. build/lib/another_ayx_python_sdk/core/proxy_requests.py +51 -0
  31. build/lib/another_ayx_python_sdk/core/record_packet.py +88 -0
  32. build/lib/another_ayx_python_sdk/core/record_packet_base.py +123 -0
  33. build/lib/another_ayx_python_sdk/core/register_plugin.py +127 -0
  34. build/lib/another_ayx_python_sdk/core/testing.py +191 -0
  35. build/lib/another_ayx_python_sdk/core/utils.py +146 -0
  36. build/lib/another_ayx_python_sdk/examples/AyxSdkInput/main.py +89 -0
  37. build/lib/another_ayx_python_sdk/examples/AyxSdkMultiConnectionsMultiOutputAnchor/main.py +102 -0
  38. build/lib/another_ayx_python_sdk/examples/AyxSdkMultipleInputAnchors/main.py +84 -0
  39. build/lib/another_ayx_python_sdk/examples/AyxSdkMultipleOutputAnchors/main.py +96 -0
  40. build/lib/another_ayx_python_sdk/examples/AyxSdkOptionalInputAnchor/main.py +94 -0
  41. build/lib/another_ayx_python_sdk/examples/AyxSdkOutput/main.py +78 -0
  42. build/lib/another_ayx_python_sdk/examples/AyxSdkPassThrough/main.py +82 -0
  43. build/lib/another_ayx_python_sdk/providers/__init__.py +14 -0
  44. build/lib/another_ayx_python_sdk/providers/amp_provider/__init__.py +41 -0
  45. build/lib/another_ayx_python_sdk/providers/amp_provider/__main__.py +85 -0
  46. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_dcm.py +58 -0
  47. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_driver.py +358 -0
  48. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_environment.py +73 -0
  49. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_environment_v2.py +278 -0
  50. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_input_anchor.py +73 -0
  51. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_input_connection.py +132 -0
  52. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_io.py +64 -0
  53. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_io_components.py +407 -0
  54. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_output_anchor.py +107 -0
  55. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_provider.py +68 -0
  56. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_provider_v2.py +128 -0
  57. build/lib/another_ayx_python_sdk/providers/amp_provider/amp_record_packet.py +21 -0
  58. build/lib/another_ayx_python_sdk/providers/amp_provider/builders/__init__.py +32 -0
  59. build/lib/another_ayx_python_sdk/providers/amp_provider/builders/input_anchor_builder.py +123 -0
  60. build/lib/another_ayx_python_sdk/providers/amp_provider/builders/input_connection_builder.py +95 -0
  61. build/lib/another_ayx_python_sdk/providers/amp_provider/builders/metadata_builder.py +118 -0
  62. build/lib/another_ayx_python_sdk/providers/amp_provider/builders/output_anchor_builder.py +110 -0
  63. build/lib/another_ayx_python_sdk/providers/amp_provider/builders/packers.py +458 -0
  64. build/lib/another_ayx_python_sdk/providers/amp_provider/builders/record_builder.py +204 -0
  65. build/lib/another_ayx_python_sdk/providers/amp_provider/builders/record_packet_builder.py +133 -0
  66. build/lib/another_ayx_python_sdk/providers/amp_provider/builders/tool_config_builder.py +59 -0
  67. build/lib/another_ayx_python_sdk/providers/amp_provider/cng_certs.py +197 -0
  68. build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/__init__.py +18 -0
  69. build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/amp_transport.py +127 -0
  70. build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/transport_base.py +35 -0
  71. build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/__init__.py +14 -0
  72. build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/control_msgs.py +189 -0
  73. build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/dcme_msgs.py +119 -0
  74. build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/record_transfer_msgs.py +32 -0
  75. build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_util.py +161 -0
  76. build/lib/another_ayx_python_sdk/providers/amp_provider/logger_config.py +63 -0
  77. build/lib/another_ayx_python_sdk/providers/amp_provider/plugin_class_loader.py +77 -0
  78. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/__init__.py +67 -0
  79. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/dcm_repository.py +252 -0
  80. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/environment_repository.py +212 -0
  81. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/grpc_repository.py +119 -0
  82. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_anchor_repository.py +110 -0
  83. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_connection_repository.py +276 -0
  84. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_metadata_repository.py +144 -0
  85. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_record_packet_repository.py +252 -0
  86. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/io_repository.py +188 -0
  87. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_anchor_repository.py +117 -0
  88. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_metadata_repository.py +129 -0
  89. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_record_packet_repository.py +170 -0
  90. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/plugin_class_repository.py +55 -0
  91. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/singleton.py +32 -0
  92. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/test_harness_state_repository.py +172 -0
  93. build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/tool_config_repository.py +89 -0
  94. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/__init__.py +14 -0
  95. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/__init__.py +0 -0
  96. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/close_outgoing_anchor_pb2.py +25 -0
  97. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/close_outgoing_anchor_pb2_grpc.py +4 -0
  98. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/dcm_e_pb2.py +38 -0
  99. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/dcm_e_pb2_grpc.py +4 -0
  100. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_anchor_pb2.py +26 -0
  101. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_anchor_pb2_grpc.py +4 -0
  102. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_complete_pb2.py +25 -0
  103. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_complete_pb2_grpc.py +4 -0
  104. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_pb2.py +26 -0
  105. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_pb2_grpc.py +4 -0
  106. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_data_push_pb2.py +26 -0
  107. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_data_push_pb2_grpc.py +4 -0
  108. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_record_packet_push_pb2.py +26 -0
  109. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_record_packet_push_pb2_grpc.py +4 -0
  110. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/metadata_pb2.py +31 -0
  111. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/metadata_pb2_grpc.py +4 -0
  112. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_anchor_pb2.py +28 -0
  113. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_anchor_pb2_grpc.py +4 -0
  114. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_data_push_pb2.py +26 -0
  115. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_data_push_pb2_grpc.py +4 -0
  116. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_metadata_push_pb2.py +26 -0
  117. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_metadata_push_pb2_grpc.py +4 -0
  118. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_record_packet_push_pb2.py +26 -0
  119. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_record_packet_push_pb2_grpc.py +4 -0
  120. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/output_message_data_pb2.py +29 -0
  121. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/output_message_data_pb2_grpc.py +4 -0
  122. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/password_data_pb2.py +25 -0
  123. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/password_data_pb2_grpc.py +4 -0
  124. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/plugin_initialization_data_pb2.py +33 -0
  125. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/plugin_initialization_data_pb2_grpc.py +4 -0
  126. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_batch_pb2.py +25 -0
  127. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_batch_pb2_grpc.py +4 -0
  128. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_packet_pb2.py +29 -0
  129. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_packet_pb2_grpc.py +4 -0
  130. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_engine_service_pb2.py +34 -0
  131. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_engine_service_pb2_grpc.py +305 -0
  132. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_pb2.py +30 -0
  133. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_pb2_grpc.py +235 -0
  134. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_startup_info_pb2.py +25 -0
  135. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_startup_info_pb2_grpc.py +4 -0
  136. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_v2_pb2.py +54 -0
  137. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_v2_pb2_grpc.py +99 -0
  138. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/translate_message_data_pb2.py +27 -0
  139. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/translate_message_data_pb2_grpc.py +4 -0
  140. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/transport_pb2.py +31 -0
  141. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/transport_pb2_grpc.py +4 -0
  142. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/update_progress_pb2.py +25 -0
  143. build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/update_progress_pb2_grpc.py +4 -0
  144. build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_runner.py +115 -0
  145. build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_service.py +207 -0
  146. build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_service_v2.py +306 -0
  147. build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/__init__.py +14 -0
  148. build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/constants.py +22 -0
  149. build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/conversions.py +55 -0
  150. build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/utilities.py +63 -0
  151. build/lib/another_ayx_python_sdk/providers/e1_provider/__init__.py +36 -0
  152. build/lib/another_ayx_python_sdk/providers/e1_provider/anchor_builder.py +95 -0
  153. build/lib/another_ayx_python_sdk/providers/e1_provider/cache_e1_sdk_import.py +31 -0
  154. build/lib/another_ayx_python_sdk/providers/e1_provider/connection_callback_strategy.py +155 -0
  155. build/lib/another_ayx_python_sdk/providers/e1_provider/connection_interface.py +125 -0
  156. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_dcm.py +53 -0
  157. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_environment.py +127 -0
  158. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_anchor.py +51 -0
  159. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_anchor_proxy.py +33 -0
  160. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_connection.py +87 -0
  161. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_io.py +71 -0
  162. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_output_anchor.py +157 -0
  163. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_output_anchor_proxy.py +97 -0
  164. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_plugin_driver.py +63 -0
  165. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_plugin_proxy.py +363 -0
  166. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_provider.py +71 -0
  167. build/lib/another_ayx_python_sdk/providers/e1_provider/e1_record_packet.py +21 -0
  168. build/lib/another_ayx_python_sdk/providers/e1_provider/events.py +36 -0
  169. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/__init__.py +37 -0
  170. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/alteryx_engine.py +105 -0
  171. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/constants.py +50 -0
  172. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/field.py +122 -0
  173. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/output_anchor.py +55 -0
  174. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/output_anchor_manager.py +31 -0
  175. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_copier.py +65 -0
  176. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_creator.py +41 -0
  177. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_info.py +134 -0
  178. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_ref.py +42 -0
  179. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/tool.py +29 -0
  180. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/tool_execution_info.py +43 -0
  181. build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/__init__.py +14 -0
  182. build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/__init__.py +18 -0
  183. build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/field_proxy.py +109 -0
  184. build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/record_copier_proxy.py +49 -0
  185. build/lib/another_ayx_python_sdk/providers/e1_provider/records/__init__.py +23 -0
  186. build/lib/another_ayx_python_sdk/providers/e1_provider/records/base_record_container.py +47 -0
  187. build/lib/another_ayx_python_sdk/providers/e1_provider/records/parsed_record_container.py +67 -0
  188. build/lib/another_ayx_python_sdk/providers/e1_provider/records/raw_record_container.py +111 -0
  189. build/lib/another_ayx_python_sdk/providers/e1_provider/tool_config_loader.py +132 -0
  190. build/lib/another_ayx_python_sdk/providers/e1_provider/utilities/__init__.py +35 -0
  191. build/lib/another_ayx_python_sdk/providers/e1_provider/utilities/utilities.py +54 -0
  192. build/lib/another_ayx_python_sdk/providers/e1_provider/workflow_config.py +31 -0
  193. build/lib/another_ayx_python_sdk/providers/file_provider/__init__.py +32 -0
  194. build/lib/another_ayx_python_sdk/providers/file_provider/environment.py +131 -0
  195. build/lib/another_ayx_python_sdk/providers/file_provider/file_adapter.py +286 -0
  196. build/lib/another_ayx_python_sdk/providers/file_provider/file_provider.py +185 -0
  197. build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_dcm.py +53 -0
  198. build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_input_anchor.py +70 -0
  199. build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_input_connection.py +112 -0
  200. build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_output_anchor.py +114 -0
  201. build/lib/another_ayx_python_sdk/providers/file_provider/file_record_packet.py +21 -0
  202. build/lib/another_ayx_python_sdk/providers/file_provider/iox.py +56 -0
  203. build/lib/another_ayx_python_sdk/providers/file_provider/tool_input.py +104 -0
  204. build/lib/another_ayx_python_sdk/test_harness/__init__.py +14 -0
  205. build/lib/another_ayx_python_sdk/test_harness/__main__.py +120 -0
  206. build/lib/another_ayx_python_sdk/test_harness/plugin_runner.py +416 -0
  207. build/lib/another_ayx_python_sdk/test_harness/process_lifecycle_manager.py +80 -0
  208. build/lib/another_ayx_python_sdk/test_harness/sdk_engine_service.py +106 -0
  209. build/lib/another_ayx_python_sdk/version.py +8 -0
  210. build/lib/build/lib/another_ayx_python_sdk/__init__.py +14 -0
  211. build/lib/build/lib/another_ayx_python_sdk/__main__.py +470 -0
  212. build/lib/build/lib/another_ayx_python_sdk/assets/workspace_files/__init__.py +14 -0
  213. build/lib/build/lib/another_ayx_python_sdk/assets/workspace_files/setup.py +38 -0
  214. build/lib/build/lib/another_ayx_python_sdk/cli/__init__.py +14 -0
  215. build/lib/build/lib/another_ayx_python_sdk/cli/utilities.py +103 -0
  216. build/lib/build/lib/another_ayx_python_sdk/cli/workspace.py +266 -0
  217. build/lib/build/lib/another_ayx_python_sdk/cli/yxi_builder.py +125 -0
  218. build/lib/build/lib/another_ayx_python_sdk/cli/yxi_installer.py +45 -0
  219. build/lib/build/lib/another_ayx_python_sdk/core/__init__.py +51 -0
  220. build/lib/build/lib/another_ayx_python_sdk/core/constants.py +25 -0
  221. build/lib/build/lib/another_ayx_python_sdk/core/dcm_base.py +115 -0
  222. build/lib/build/lib/another_ayx_python_sdk/core/doc_utilities.py +40 -0
  223. build/lib/build/lib/another_ayx_python_sdk/core/environment_base.py +213 -0
  224. build/lib/build/lib/another_ayx_python_sdk/core/exceptions.py +59 -0
  225. build/lib/build/lib/another_ayx_python_sdk/core/field.py +183 -0
  226. build/lib/build/lib/another_ayx_python_sdk/core/input_anchor_base.py +86 -0
  227. build/lib/build/lib/another_ayx_python_sdk/core/input_connection_base.py +206 -0
  228. build/lib/build/lib/another_ayx_python_sdk/core/io_base.py +139 -0
  229. build/lib/build/lib/another_ayx_python_sdk/core/metadata.py +173 -0
  230. build/lib/build/lib/another_ayx_python_sdk/core/observable_mixin.py +90 -0
  231. build/lib/build/lib/another_ayx_python_sdk/core/output_anchor_base.py +151 -0
  232. build/lib/build/lib/another_ayx_python_sdk/core/plugin.py +108 -0
  233. build/lib/build/lib/another_ayx_python_sdk/core/plugin_v2.py +97 -0
  234. build/lib/build/lib/another_ayx_python_sdk/core/provider_base.py +125 -0
  235. build/lib/build/lib/another_ayx_python_sdk/core/proxy_requests.py +51 -0
  236. build/lib/build/lib/another_ayx_python_sdk/core/record_packet.py +88 -0
  237. build/lib/build/lib/another_ayx_python_sdk/core/record_packet_base.py +123 -0
  238. build/lib/build/lib/another_ayx_python_sdk/core/register_plugin.py +127 -0
  239. build/lib/build/lib/another_ayx_python_sdk/core/testing.py +191 -0
  240. build/lib/build/lib/another_ayx_python_sdk/core/utils.py +146 -0
  241. build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkInput/main.py +89 -0
  242. build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkMultiConnectionsMultiOutputAnchor/main.py +102 -0
  243. build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkMultipleInputAnchors/main.py +84 -0
  244. build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkMultipleOutputAnchors/main.py +96 -0
  245. build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkOptionalInputAnchor/main.py +94 -0
  246. build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkOutput/main.py +78 -0
  247. build/lib/build/lib/another_ayx_python_sdk/examples/AyxSdkPassThrough/main.py +82 -0
  248. build/lib/build/lib/another_ayx_python_sdk/providers/__init__.py +14 -0
  249. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/__init__.py +41 -0
  250. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/__main__.py +85 -0
  251. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_dcm.py +58 -0
  252. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_driver.py +358 -0
  253. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_environment.py +73 -0
  254. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_environment_v2.py +278 -0
  255. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_input_anchor.py +73 -0
  256. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_input_connection.py +132 -0
  257. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_io.py +64 -0
  258. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_io_components.py +407 -0
  259. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_output_anchor.py +107 -0
  260. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_provider.py +68 -0
  261. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_provider_v2.py +128 -0
  262. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/amp_record_packet.py +21 -0
  263. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/__init__.py +32 -0
  264. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/input_anchor_builder.py +123 -0
  265. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/input_connection_builder.py +95 -0
  266. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/metadata_builder.py +118 -0
  267. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/output_anchor_builder.py +110 -0
  268. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/packers.py +458 -0
  269. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/record_builder.py +204 -0
  270. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/record_packet_builder.py +133 -0
  271. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/builders/tool_config_builder.py +59 -0
  272. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/cng_certs.py +197 -0
  273. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/__init__.py +18 -0
  274. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/amp_transport.py +127 -0
  275. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/data_transport/transport_base.py +35 -0
  276. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/__init__.py +14 -0
  277. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/control_msgs.py +189 -0
  278. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/dcme_msgs.py +119 -0
  279. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_helpers/record_transfer_msgs.py +32 -0
  280. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/grpc_util.py +161 -0
  281. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/logger_config.py +63 -0
  282. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/plugin_class_loader.py +77 -0
  283. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/__init__.py +67 -0
  284. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/dcm_repository.py +252 -0
  285. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/environment_repository.py +212 -0
  286. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/grpc_repository.py +119 -0
  287. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_anchor_repository.py +110 -0
  288. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_connection_repository.py +276 -0
  289. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_metadata_repository.py +144 -0
  290. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/input_record_packet_repository.py +252 -0
  291. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/io_repository.py +188 -0
  292. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_anchor_repository.py +117 -0
  293. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_metadata_repository.py +129 -0
  294. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/output_record_packet_repository.py +170 -0
  295. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/plugin_class_repository.py +55 -0
  296. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/singleton.py +32 -0
  297. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/test_harness_state_repository.py +172 -0
  298. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/repositories/tool_config_repository.py +89 -0
  299. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/__init__.py +14 -0
  300. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/__init__.py +0 -0
  301. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/close_outgoing_anchor_pb2.py +25 -0
  302. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/close_outgoing_anchor_pb2_grpc.py +4 -0
  303. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/dcm_e_pb2.py +38 -0
  304. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/dcm_e_pb2_grpc.py +4 -0
  305. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_anchor_pb2.py +26 -0
  306. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_anchor_pb2_grpc.py +4 -0
  307. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_complete_pb2.py +25 -0
  308. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_complete_pb2_grpc.py +4 -0
  309. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_pb2.py +26 -0
  310. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_connection_pb2_grpc.py +4 -0
  311. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_data_push_pb2.py +26 -0
  312. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_data_push_pb2_grpc.py +4 -0
  313. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_record_packet_push_pb2.py +26 -0
  314. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/incoming_record_packet_push_pb2_grpc.py +4 -0
  315. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/metadata_pb2.py +31 -0
  316. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/metadata_pb2_grpc.py +4 -0
  317. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_anchor_pb2.py +28 -0
  318. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_anchor_pb2_grpc.py +4 -0
  319. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_data_push_pb2.py +26 -0
  320. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_data_push_pb2_grpc.py +4 -0
  321. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_metadata_push_pb2.py +26 -0
  322. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_metadata_push_pb2_grpc.py +4 -0
  323. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_record_packet_push_pb2.py +26 -0
  324. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/outgoing_record_packet_push_pb2_grpc.py +4 -0
  325. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/output_message_data_pb2.py +29 -0
  326. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/output_message_data_pb2_grpc.py +4 -0
  327. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/password_data_pb2.py +25 -0
  328. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/password_data_pb2_grpc.py +4 -0
  329. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/plugin_initialization_data_pb2.py +33 -0
  330. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/plugin_initialization_data_pb2_grpc.py +4 -0
  331. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_batch_pb2.py +25 -0
  332. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_batch_pb2_grpc.py +4 -0
  333. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_packet_pb2.py +29 -0
  334. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/record_packet_pb2_grpc.py +4 -0
  335. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_engine_service_pb2.py +34 -0
  336. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_engine_service_pb2_grpc.py +305 -0
  337. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_pb2.py +30 -0
  338. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_pb2_grpc.py +235 -0
  339. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_startup_info_pb2.py +25 -0
  340. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_startup_info_pb2_grpc.py +4 -0
  341. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_v2_pb2.py +54 -0
  342. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/sdk_tool_service_v2_pb2_grpc.py +99 -0
  343. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/translate_message_data_pb2.py +27 -0
  344. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/translate_message_data_pb2_grpc.py +4 -0
  345. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/transport_pb2.py +31 -0
  346. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/transport_pb2_grpc.py +4 -0
  347. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/update_progress_pb2.py +25 -0
  348. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/resources/generated/update_progress_pb2_grpc.py +4 -0
  349. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_runner.py +115 -0
  350. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_service.py +207 -0
  351. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/sdk_tool_service_v2.py +306 -0
  352. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/__init__.py +14 -0
  353. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/constants.py +22 -0
  354. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/conversions.py +55 -0
  355. build/lib/build/lib/another_ayx_python_sdk/providers/amp_provider/utilities/utilities.py +63 -0
  356. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/__init__.py +36 -0
  357. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/anchor_builder.py +95 -0
  358. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/cache_e1_sdk_import.py +31 -0
  359. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/connection_callback_strategy.py +155 -0
  360. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/connection_interface.py +125 -0
  361. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_dcm.py +53 -0
  362. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_environment.py +127 -0
  363. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_anchor.py +51 -0
  364. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_anchor_proxy.py +33 -0
  365. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_input_connection.py +87 -0
  366. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_io.py +71 -0
  367. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_output_anchor.py +157 -0
  368. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_output_anchor_proxy.py +97 -0
  369. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_plugin_driver.py +63 -0
  370. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_plugin_proxy.py +363 -0
  371. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_provider.py +71 -0
  372. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/e1_record_packet.py +21 -0
  373. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/events.py +36 -0
  374. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/__init__.py +37 -0
  375. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/alteryx_engine.py +105 -0
  376. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/constants.py +50 -0
  377. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/field.py +122 -0
  378. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/output_anchor.py +55 -0
  379. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/output_anchor_manager.py +31 -0
  380. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_copier.py +65 -0
  381. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_creator.py +41 -0
  382. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_info.py +134 -0
  383. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/record_ref.py +42 -0
  384. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/tool.py +29 -0
  385. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/AlteryxPythonSDK/tool_execution_info.py +43 -0
  386. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/mock_e1_sdk/__init__.py +14 -0
  387. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/__init__.py +18 -0
  388. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/field_proxy.py +109 -0
  389. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/proxies/record_copier_proxy.py +49 -0
  390. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/records/__init__.py +23 -0
  391. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/records/base_record_container.py +47 -0
  392. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/records/parsed_record_container.py +67 -0
  393. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/records/raw_record_container.py +111 -0
  394. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/tool_config_loader.py +132 -0
  395. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/utilities/__init__.py +35 -0
  396. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/utilities/utilities.py +54 -0
  397. build/lib/build/lib/another_ayx_python_sdk/providers/e1_provider/workflow_config.py +31 -0
  398. build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/__init__.py +32 -0
  399. build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/environment.py +131 -0
  400. build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_adapter.py +286 -0
  401. build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_provider.py +185 -0
  402. build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_dcm.py +53 -0
  403. build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_input_anchor.py +70 -0
  404. build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_input_connection.py +112 -0
  405. build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_provider_output_anchor.py +114 -0
  406. build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/file_record_packet.py +21 -0
  407. build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/iox.py +56 -0
  408. build/lib/build/lib/another_ayx_python_sdk/providers/file_provider/tool_input.py +104 -0
  409. build/lib/build/lib/another_ayx_python_sdk/test_harness/__init__.py +14 -0
  410. build/lib/build/lib/another_ayx_python_sdk/test_harness/__main__.py +120 -0
  411. build/lib/build/lib/another_ayx_python_sdk/test_harness/plugin_runner.py +416 -0
  412. build/lib/build/lib/another_ayx_python_sdk/test_harness/process_lifecycle_manager.py +80 -0
  413. build/lib/build/lib/another_ayx_python_sdk/test_harness/sdk_engine_service.py +106 -0
  414. build/lib/build/lib/another_ayx_python_sdk/version.py +8 -0
  415. another_ayx_python_sdk-2.4.2.dist-info/RECORD +0 -403
  416. {another_ayx_python_sdk-2.4.2.dist-info → another_ayx_python_sdk-2.4.22.dist-info}/WHEEL +0 -0
  417. {another_ayx_python_sdk-2.4.2.dist-info → another_ayx_python_sdk-2.4.22.dist-info}/entry_points.txt +0 -0
  418. {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,70 @@
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
+ """The file provider input anchor class definition."""
15
+ from typing import List, Optional, TYPE_CHECKING
16
+
17
+ from another_ayx_python_sdk.core.doc_utilities import inherit_docs
18
+ from another_ayx_python_sdk.core.input_anchor_base import InputAnchorBase
19
+
20
+ if TYPE_CHECKING: # noqa: F401
21
+ from another_ayx_python_sdk.core.input_connection_base import ( # noqa: F401
22
+ InputConnectionBase,
23
+ ) # noqa: F401
24
+
25
+
26
+ @inherit_docs
27
+ class FileProviderInputAnchor(InputAnchorBase):
28
+ """An input anchor that contains input connection information."""
29
+
30
+ def __init__(
31
+ self,
32
+ name: str,
33
+ allow_multiple: bool = False,
34
+ optional: bool = False,
35
+ connections: Optional[List["InputConnectionBase"]] = None,
36
+ ) -> None:
37
+ """
38
+ Instantiate a file provider input anchor.
39
+
40
+ Parameters
41
+ ----------
42
+ name
43
+ The name of the input anchor.
44
+ allow_multiple
45
+ Indicates whether the anchor can have multiple input connections associated with it.
46
+ optional
47
+ Indicates whether the anchor is optional or not.
48
+ connections
49
+ The list of input connections associated with this anchor.
50
+ """
51
+ self.__name = name
52
+ self.__allow_multiple = allow_multiple
53
+ self.__optional = optional
54
+ self.__connections: List["InputConnectionBase"] = connections or []
55
+
56
+ @property
57
+ def name(self) -> str: # noqa: D102
58
+ return self.__name
59
+
60
+ @property
61
+ def allow_multiple(self) -> bool: # noqa: D102
62
+ return self.__allow_multiple
63
+
64
+ @property
65
+ def optional(self) -> bool: # noqa: D102
66
+ return self.__optional
67
+
68
+ @property
69
+ def connections(self) -> List["InputConnectionBase"]: # noqa: D102
70
+ return self.__connections
@@ -0,0 +1,112 @@
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
+ """File Provider Input Connection class."""
15
+ from typing import Optional, TYPE_CHECKING
16
+
17
+ from another_ayx_python_sdk.core.doc_utilities import inherit_docs
18
+ from another_ayx_python_sdk.core.input_connection_base import InputConnectionBase
19
+ from another_ayx_python_sdk.core.metadata import Metadata
20
+ from another_ayx_python_sdk.core.record_packet import RecordPacket
21
+
22
+ import pandas as pd
23
+
24
+
25
+ if TYPE_CHECKING:
26
+ from another_ayx_python_sdk.providers.file_provider.file_provider_input_anchor import (
27
+ FileProviderInputAnchor,
28
+ )
29
+
30
+
31
+ @inherit_docs
32
+ class FileProviderInputConnection(InputConnectionBase):
33
+ """An input connection contains incoming record and metadata information."""
34
+
35
+ def __init__(
36
+ self,
37
+ name: str,
38
+ metadata: Metadata,
39
+ packet: Optional[RecordPacket] = None,
40
+ anchor: Optional["FileProviderInputAnchor"] = None,
41
+ ) -> None:
42
+ """
43
+ Instantiate a file provider input connection.
44
+
45
+ Parameters
46
+ ----------
47
+ name
48
+ Name of the input connection.
49
+ metadata
50
+ Metadata for the input connections.
51
+ packet
52
+ Record information for the input connection.
53
+ anchor
54
+ Input anchor associated with this connection.
55
+ """
56
+ if packet and packet.metadata != metadata:
57
+ raise ValueError(
58
+ "Record packet metadata must be the same as anchor metadata."
59
+ )
60
+
61
+ self.__packet = packet
62
+ self.__name = name
63
+ self.__metadata = metadata
64
+ self.__anchor = anchor
65
+ self.max_packet_size = None
66
+ self.progress = 0
67
+
68
+ @property
69
+ def name(self) -> str: # noqa: D102
70
+ return self.__name
71
+
72
+ @property
73
+ def metadata(self) -> Optional[Metadata]: # noqa: D102
74
+ return self.__metadata
75
+
76
+ @property
77
+ def anchor(self) -> "FileProviderInputAnchor": # noqa: D102
78
+ if self.__anchor:
79
+ return self.__anchor
80
+
81
+ raise RuntimeError("This input connection is not associated with an anchor.")
82
+
83
+ def read(self) -> RecordPacket: # noqa: D102
84
+ if self.metadata is None:
85
+ raise ValueError("Metadata must be set.")
86
+
87
+ return self.__packet or RecordPacket(
88
+ self.metadata, pd.DataFrame(columns=[field.name for field in self.metadata])
89
+ )
90
+
91
+ def _get_max_packet_size(self) -> Optional[int]:
92
+ return self.__max_packet_size
93
+
94
+ def _set_max_packet_size(self, value: Optional[int]) -> None:
95
+ """
96
+ File provider doesn't use max_packet size - automatically set to None.
97
+
98
+ Otherwise, a user could try and set max packet size for the file provider and would not know why it was not affecting their tool.
99
+ """
100
+ if value is not None:
101
+ return # TODO: warn user that the file provider does not currently support setting max_packet_size
102
+ self.__max_packet_size = value
103
+
104
+ @property
105
+ def progress(self) -> float: # noqa: D102
106
+ return self.__progress
107
+
108
+ @progress.setter
109
+ def progress(self, value: float) -> None: # noqa: D102
110
+ if value < 0:
111
+ raise ValueError("Progress percentage must be greater than 0.")
112
+ self.__progress = value
@@ -0,0 +1,114 @@
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
+ """File provider output anchor class."""
15
+ from pathlib import Path
16
+ from typing import Optional, TYPE_CHECKING
17
+
18
+ from another_ayx_python_sdk.core import OutputAnchorBase
19
+ from another_ayx_python_sdk.core.doc_utilities import inherit_docs
20
+
21
+ if TYPE_CHECKING:
22
+ from another_ayx_python_sdk.core.metadata import Metadata
23
+ from another_ayx_python_sdk.core.record_packet import RecordPacketBase
24
+ from another_ayx_python_sdk.providers.file_provider.file_adapter import ( # noqa: F401
25
+ FileAdapter,
26
+ ) # noqa: F401
27
+
28
+
29
+ @inherit_docs
30
+ class FileProviderOutputAnchor(OutputAnchorBase):
31
+ """The output anchor contains outgoing record and metadata information."""
32
+
33
+ def __init__(
34
+ self, name: str, allow_multiple: bool = False, optional: bool = False
35
+ ) -> None:
36
+ """
37
+ Instantiate a file provider output anchor.
38
+
39
+ Parameters
40
+ ----------
41
+ name
42
+ Name of the output anchor.
43
+ allow_multiple
44
+ Indicates whether to allow more than one connection.
45
+ optional
46
+ Indicates whether the anchor is optional or not.
47
+ """
48
+ self.__name = name
49
+ self.__allow_multiple = allow_multiple
50
+ self.__optional = optional
51
+ self.__metadata: Optional["Metadata"] = None
52
+ self.__is_closed: bool = True
53
+ self.__num_connections: int = 0
54
+ # TODO the file paths and FileAdapter should be populated by the constructor
55
+ self.metadata_file: Path = Path()
56
+ self.record_file: Path = Path()
57
+ self.file_adapter: Optional["FileAdapter"] = None
58
+
59
+ def update_progress(self, percentage: float) -> None:
60
+ """File provider does not need to update progress, so pass."""
61
+
62
+ @property
63
+ def name(self) -> str: # noqa: D102
64
+ return self.__name
65
+
66
+ @property
67
+ def allow_multiple(self) -> bool: # noqa: D102
68
+ return self.__allow_multiple
69
+
70
+ @property
71
+ def optional(self) -> bool: # noqa: D102
72
+ return self.__optional
73
+
74
+ @property
75
+ def num_connections(self) -> int: # noqa: D102
76
+ return self.__num_connections
77
+
78
+ @property
79
+ def is_open(self) -> bool: # noqa: D102
80
+ return not self.__is_closed
81
+
82
+ @property
83
+ def metadata(self) -> Optional["Metadata"]: # noqa: D102
84
+ return self.__metadata
85
+
86
+ def open(self, metadata: "Metadata") -> None: # noqa: D102
87
+ if not self.file_adapter:
88
+ raise RuntimeError("File adapter must be set to open the output anchor.")
89
+
90
+ self.__metadata = metadata
91
+ # TODO we should just have a helper function here
92
+ self.file_adapter.metadata_to_xml(self.metadata_file, self.__metadata)
93
+ self.__is_closed = False
94
+
95
+ def write(self, record_packet: "RecordPacketBase") -> None: # noqa: D102
96
+ if not self.__metadata or not self.file_adapter:
97
+ raise RuntimeError(
98
+ "Output anchor must be opened before it can be written to."
99
+ )
100
+
101
+ if self.__metadata != record_packet.metadata:
102
+ raise RuntimeError(
103
+ "Output anchor's metadata must match the incoming record packet's metadata."
104
+ )
105
+
106
+ dataframe = record_packet.to_dataframe()
107
+ # TODO This will overwrite the entire CSV file. It should have the option to append the records to one that already exists.
108
+ self.file_adapter.dataframe_to_csv(self.record_file, dataframe)
109
+
110
+ def flush(self) -> None:
111
+ """File provider does not need to flush records, so pass."""
112
+
113
+ def close(self) -> None: # noqa: D102
114
+ self.__is_closed = True
@@ -0,0 +1,21 @@
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
+ """Interface for working with multiple records."""
15
+ from another_ayx_python_sdk.core.doc_utilities import inherit_docs
16
+ from another_ayx_python_sdk.core.record_packet import RecordPacket
17
+
18
+
19
+ @inherit_docs
20
+ class FileRecordPacket(RecordPacket):
21
+ """File Record packet."""
@@ -0,0 +1,56 @@
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
+ """File Provider."""
15
+ from pathlib import Path
16
+ from typing import Any
17
+
18
+ from another_ayx_python_sdk.core.io_base import IoBase
19
+
20
+ import deprecation
21
+
22
+
23
+ class IO(IoBase):
24
+ """Simple tool interface that will be used with Designer."""
25
+
26
+ def __init__(self) -> None:
27
+ """Instantiate the interface."""
28
+
29
+ def error(self, error_msg: str) -> None:
30
+ """Display an error in the Results window."""
31
+
32
+ def warn(self, warn_msg: str) -> None:
33
+ """Display a warning in the Results window."""
34
+
35
+ def info(self, info_msg: str) -> None:
36
+ """Display information in the Results window."""
37
+
38
+ def translate_msg(self, msg: str, *args: Any) -> str:
39
+ """Translate a message."""
40
+ raise NotImplementedError()
41
+
42
+ def update_progress(self, percent: float) -> None:
43
+ """Update tool progress."""
44
+
45
+ def create_temp_file(self, extension: str = "tmp", options: int = 0) -> Path:
46
+ """Create a temporary file path."""
47
+ return Path(extension)
48
+
49
+ @deprecation.deprecated(
50
+ deprecated_in="1.0.3",
51
+ removed_in="2.0.0",
52
+ details="Use functions of provider's dcm property instead",
53
+ ) # type: ignore
54
+ def decrypt_password(self, password: str) -> str: # noqa: D102
55
+ """Decrypt a password; will append '_decrypted' to the supplied password."""
56
+ return password + "_decrypted"
@@ -0,0 +1,104 @@
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
+ """Alteryx Designer environment information."""
15
+ from pathlib import Path
16
+ from typing import List, Optional
17
+
18
+ from pydantic import BaseModel, validator
19
+
20
+
21
+ class ToolDefinition(BaseModel):
22
+ """
23
+ ToolDefinition validates the tool information for the tool input.
24
+
25
+ Parameters
26
+ ----------
27
+ plugin
28
+ The class name of the plugin being run.
29
+ path
30
+ The path to the plugin being run.
31
+ """
32
+
33
+ plugin: str
34
+ path: Path
35
+
36
+
37
+ class AnchorDefinition(BaseModel):
38
+ """
39
+ AnchorDefinition validates the anchor information for the tool input.
40
+
41
+ Parameters
42
+ ----------
43
+ anchor_name
44
+ The name of the anchor that the records and metadata are assoiciated with.
45
+ records
46
+ The anchor record data.
47
+ metadata
48
+ The anchor metadata information.
49
+ """
50
+
51
+ anchor_name: str
52
+ records: Path
53
+ metadata: Path
54
+
55
+
56
+ class ToolInput(BaseModel):
57
+ """
58
+ ToolInput validates the input JSON for the user input to the file provider.
59
+
60
+ Parameters
61
+ ----------
62
+ tool
63
+ A ToolDefinition object with 2 inputs, path and plugin, that contain the path
64
+ to the plugin and the plugin name respectively.
65
+ tool_config
66
+ The path to the tool configuration file.
67
+ workflow_config
68
+ The path to the workflow configuration file.
69
+ inputs
70
+ A list of AnchorDefinition objects with 3 inputs, anchor_name, records, and metadata,
71
+ that specify the anchor the input information corresponds to, the record information for that anchor,
72
+ and the metadata information for that anchor respectively.
73
+ outputs
74
+ A list of AnchorDefinition objects with 3 inputs, anchor_name, records, and metadata, that specify the anchor
75
+ the output information corresponds to, the file where the record information for that anchor will
76
+ be stored, and the file where the metadata information for that anchor will be stored respectively.
77
+ update_tool_config
78
+ An optional path that indicates whether to update the tool's config. If it is set,
79
+ the config will be updated at the specified path.
80
+ """
81
+
82
+ tool: ToolDefinition
83
+ tool_config: Path
84
+ workflow_config: Path
85
+ inputs: Optional[List[AnchorDefinition]]
86
+ outputs: Optional[List[AnchorDefinition]]
87
+ update_tool_config: Optional[Path]
88
+
89
+ @validator("inputs", "outputs", always=True, pre=True)
90
+ def anchor_is_none(cls, v): # type: ignore # noqa: N805
91
+ """
92
+ Set the inputs and outputs equal to an empty list if they aren't specified.
93
+
94
+ Parameters
95
+ ----------
96
+ v
97
+ The inputs or the outputs optional list of dictionaries.
98
+
99
+ Returns
100
+ -------
101
+ List[Dict[str, str]]
102
+ An empty list or the inputs or outputs.
103
+ """
104
+ return v or []
@@ -0,0 +1,14 @@
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
+ """Python SDK gRPC Plugin Test harness."""
@@ -0,0 +1,120 @@
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
+ """Entrypoint for the test harness."""
15
+ import asyncio
16
+ from enum import Enum
17
+ from pathlib import Path
18
+ from typing import List
19
+
20
+ from another_ayx_python_sdk.core import Field, FieldType, Metadata
21
+ from another_ayx_python_sdk.test_harness.plugin_runner import (
22
+ PluginRunner,
23
+ RunMode,
24
+ )
25
+
26
+ import pandas as pd
27
+
28
+ import typer
29
+
30
+ pd.set_option("display.max_columns", None)
31
+
32
+ app = typer.Typer()
33
+
34
+
35
+ class TransportType(Enum):
36
+ """Data serialization formats."""
37
+
38
+ ENGINE = "engine"
39
+ ARROW = "arrow"
40
+
41
+
42
+ @app.command()
43
+ def version() -> None:
44
+ """Get the version pf the test harness."""
45
+ typer.echo("Version: 1.0.0")
46
+
47
+
48
+ @app.command()
49
+ def run_plugin(
50
+ plugin_entrypoint: Path = typer.Argument(
51
+ ..., help="The path to the entrypoint to run."
52
+ ),
53
+ plugins_package: str = typer.Argument(
54
+ ..., help="The package that contains plugins to run."
55
+ ),
56
+ tool_name: str = typer.Argument(..., help="The name of the tool to run."),
57
+ config_xml: Path = typer.Argument(
58
+ ..., help="Config XML file containing input/output anchor config."
59
+ ),
60
+ input_csv: List[Path] = typer.Option(
61
+ "", help="List of CSV files to use as input data."
62
+ ),
63
+ transport_type: str = typer.Option(
64
+ TransportType.ARROW, help="[engine | arrow] which data type to use for the run"
65
+ ),
66
+ run_mode: RunMode = RunMode.full_run,
67
+ ) -> None:
68
+ """Run a plugin out of process and run data through it."""
69
+ typer.echo(
70
+ f"Running {tool_name} in {'update only' if run_mode == RunMode.update_only else 'full run'} mode.\n"
71
+ )
72
+ input_data = []
73
+ if input_csv:
74
+ for path in input_csv:
75
+ if not path.is_file() or not path.exists():
76
+ raise FileNotFoundError("Could not find input csv data")
77
+ dataframe = pd.read_csv(path)
78
+ input_data.append(dataframe)
79
+
80
+ input_metadata = [_get_metadata(df) for df in input_data]
81
+
82
+ runner = PluginRunner(
83
+ plugin_entrypoint,
84
+ plugins_package,
85
+ tool_name,
86
+ input_metadata,
87
+ input_data,
88
+ config_xml,
89
+ transport_type,
90
+ )
91
+ asyncio.run(runner.run_plugin_v2(run_mode))
92
+
93
+ # Keeping the below as a reminder in case we need to test metadata still.
94
+ # if transport_type == "engine":
95
+ # output_metadata = runner.get_output_metadata()
96
+ # typer.echo(f"Output metadata is:\n{output_metadata}\n")
97
+
98
+ # if run_mode == RunMode.full_run:
99
+ # output_data = runner.get_output_data()
100
+ # typer.echo(f"Output data is:\n{output_data}\n")
101
+
102
+
103
+ def _get_metadata(dataframe: pd.DataFrame) -> Metadata:
104
+ fields = []
105
+ for col in dataframe.columns:
106
+ name, field_type, size = col.split("-")
107
+ fields.append(
108
+ Field(name=name, field_type=FieldType(field_type), size=int(size))
109
+ )
110
+
111
+ return Metadata(fields)
112
+
113
+
114
+ def main() -> None:
115
+ """Run the main CLI for the test harness."""
116
+ app()
117
+
118
+
119
+ if __name__ == "__main__":
120
+ main()