cloudquery-plugin-sdk 0.1.23__tar.gz → 0.1.24__tar.gz

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 (58) hide show
  1. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/PKG-INFO +1 -1
  2. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/memdb/memdb.py +14 -0
  3. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/servers/plugin_v3/plugin.py +7 -1
  4. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/PKG-INFO +1 -1
  5. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/setup.py +1 -1
  6. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/README.md +0 -0
  7. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/__init__.py +0 -0
  8. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/__init__.py +0 -0
  9. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/memdb/__init__.py +0 -0
  10. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/servers/__init__.py +0 -0
  11. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/servers/discovery_v1/__init__.py +0 -0
  12. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/servers/discovery_v1/discovery.py +0 -0
  13. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/servers/plugin_v3/__init__.py +0 -0
  14. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/message/__init__.py +0 -0
  15. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/message/sync.py +0 -0
  16. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/message/write.py +0 -0
  17. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/plugin/__init__.py +0 -0
  18. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/plugin/plugin.py +0 -0
  19. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/py.typed +0 -0
  20. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/__init__.py +0 -0
  21. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/binary.py +0 -0
  22. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/bool.py +0 -0
  23. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/date32.py +0 -0
  24. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/date64.py +0 -0
  25. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/float.py +0 -0
  26. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/int.py +0 -0
  27. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/json.py +0 -0
  28. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/list.py +0 -0
  29. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/scalar.py +0 -0
  30. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/scalar_factory.py +0 -0
  31. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/string.py +0 -0
  32. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/timestamp.py +0 -0
  33. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/uint.py +0 -0
  34. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/uuid.py +0 -0
  35. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/vector.py +0 -0
  36. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scheduler/__init__.py +0 -0
  37. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scheduler/scheduler.py +0 -0
  38. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scheduler/table_resolver.py +0 -0
  39. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/schema/__init__.py +0 -0
  40. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/schema/arrow.py +0 -0
  41. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/schema/column.py +0 -0
  42. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/schema/resource.py +0 -0
  43. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/schema/table.py +0 -0
  44. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/serve/__init__.py +0 -0
  45. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/serve/plugin.py +0 -0
  46. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/transformers/__init__.py +0 -0
  47. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/transformers/openapi.py +0 -0
  48. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/transformers/transformers.py +0 -0
  49. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/types/__init__.py +0 -0
  50. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/types/json.py +0 -0
  51. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/types/uuid.py +0 -0
  52. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/SOURCES.txt +0 -0
  53. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/dependency_links.txt +0 -0
  54. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/namespace_packages.txt +0 -0
  55. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/not-zip-safe +0 -0
  56. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/requires.txt +0 -0
  57. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/top_level.txt +0 -0
  58. {cloudquery_plugin_sdk-0.1.23 → cloudquery_plugin_sdk-0.1.24}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudquery-plugin-sdk
3
- Version: 0.1.23
3
+ Version: 0.1.24
4
4
  Summary: CloudQuery Plugin SDK for Python
5
5
  Home-page: https://github.com/cloudquery/plugin-sdk-python
6
6
  Author: CloudQuery LTD
@@ -1,14 +1,22 @@
1
+ import json
2
+
1
3
  from cloudquery.sdk import plugin
2
4
  from cloudquery.sdk import message
3
5
  from cloudquery.sdk import schema
4
6
  from typing import List, Generator, Dict
5
7
  import pyarrow as pa
6
8
  from cloudquery.sdk.types import JSONType
9
+ from dataclasses import dataclass, field
7
10
 
8
11
  NAME = "memdb"
9
12
  VERSION = "development"
10
13
 
11
14
 
15
+ @dataclass
16
+ class Spec:
17
+ abc: str = field(default="abc")
18
+
19
+
12
20
  class MemDB(plugin.Plugin):
13
21
  def __init__(self) -> None:
14
22
  super().__init__(
@@ -73,6 +81,12 @@ class MemDB(plugin.Plugin):
73
81
  ),
74
82
  }
75
83
 
84
+ def init(self, spec, no_connection: bool = False):
85
+ if no_connection:
86
+ return
87
+ self._spec_json = json.loads(spec)
88
+ self._spec = Spec(**self._spec_json)
89
+
76
90
  def get_tables(self, options: plugin.TableOptions = None) -> List[plugin.Table]:
77
91
  tables = list(self._tables.values())
78
92
  return schema.filter_dfs(tables, options.tables, options.skip_tables)
@@ -32,7 +32,9 @@ class PluginServicer(plugin_pb2_grpc.PluginServicer):
32
32
  return plugin_pb2.GetSpecSchema.Response(json_schema=self._plugin.json_schema())
33
33
 
34
34
  def Init(self, request: plugin_pb2.Init.Request, context):
35
- self._plugin.init(request.spec, no_connection=request.no_connection)
35
+ self._plugin.init(
36
+ sanitize_spec(request.spec), no_connection=request.no_connection
37
+ )
36
38
  return plugin_pb2.Init.Response()
37
39
 
38
40
  def GetTables(self, request: plugin_pb2.GetTables.Request, context):
@@ -113,3 +115,7 @@ class PluginServicer(plugin_pb2_grpc.PluginServicer):
113
115
  def Close(self, request, context):
114
116
  self._plugin.close()
115
117
  return plugin_pb2.Close.Response()
118
+
119
+
120
+ def sanitize_spec(spec=None):
121
+ return b"{}" if spec is None or spec == b"" or spec == b"null" else spec
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudquery-plugin-sdk
3
- Version: 0.1.23
3
+ Version: 0.1.24
4
4
  Summary: CloudQuery Plugin SDK for Python
5
5
  Home-page: https://github.com/cloudquery/plugin-sdk-python
6
6
  Author: CloudQuery LTD
@@ -51,7 +51,7 @@ packages = [
51
51
  ]
52
52
  setuptools.setup(
53
53
  name=name,
54
- version="0.1.23",
54
+ version="0.1.24",
55
55
  description=description,
56
56
  long_description=long_description,
57
57
  author="CloudQuery LTD",