benchling-sdk 1.14.0a0__py3-none-any.whl → 1.15.0a0__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.
- benchling_sdk/benchling.py +30 -6
- benchling_sdk/models/__init__.py +112 -0
- benchling_sdk/services/v2/base_service.py +7 -0
- benchling_sdk/services/v2/stable/workflow_flowchart_config_version_service.py +32 -0
- benchling_sdk/services/v2/stable/workflow_flowchart_service.py +85 -0
- benchling_sdk/services/v2/v2_alpha_service.py +9 -9
- benchling_sdk/services/v2/v2_beta_service.py +28 -54
- benchling_sdk/services/v2/v2_stable_service.py +165 -335
- benchling_sdk/services/v2_service.py +17 -11
- {benchling_sdk-1.14.0a0.dist-info → benchling_sdk-1.15.0a0.dist-info}/METADATA +2 -2
- {benchling_sdk-1.14.0a0.dist-info → benchling_sdk-1.15.0a0.dist-info}/RECORD +13 -11
- {benchling_sdk-1.14.0a0.dist-info → benchling_sdk-1.15.0a0.dist-info}/LICENSE +0 -0
- {benchling_sdk-1.14.0a0.dist-info → benchling_sdk-1.15.0a0.dist-info}/WHEEL +0 -0
@@ -1,6 +1,7 @@
|
|
1
1
|
from __future__ import annotations
|
2
2
|
|
3
|
-
from
|
3
|
+
from functools import cached_property
|
4
|
+
from typing import TYPE_CHECKING
|
4
5
|
|
5
6
|
from benchling_api_client.v2.stable.client import Client
|
6
7
|
|
@@ -27,13 +28,6 @@ class V2BetaService(BaseService):
|
|
27
28
|
See https://benchling.com/api/v2-beta/reference
|
28
29
|
"""
|
29
30
|
|
30
|
-
_app_service: Optional[V2BetaAppService]
|
31
|
-
_collaboration_service: Optional[V2BetaCollaborationService]
|
32
|
-
_data_frame_service: Optional[V2BetaDataFrameService]
|
33
|
-
_entry_service: Optional[V2BetaEntryService]
|
34
|
-
_folder_service: Optional[V2BetaFolderService]
|
35
|
-
_project_service: Optional[V2BetaProjectService]
|
36
|
-
_worklist_service: Optional[V2BetaWorklistService]
|
37
31
|
_beta_client: Client
|
38
32
|
|
39
33
|
def __init__(self, client: Client, retry_strategy: RetryStrategy = RetryStrategy()):
|
@@ -45,16 +39,8 @@ class V2BetaService(BaseService):
|
|
45
39
|
"""
|
46
40
|
super().__init__(client, retry_strategy)
|
47
41
|
self._beta_client = v2_beta_client(self.client)
|
48
|
-
|
49
|
-
|
50
|
-
self._collaboration_service = None
|
51
|
-
self._data_frame_service = None
|
52
|
-
self._entry_service = None
|
53
|
-
self._folder_service = None
|
54
|
-
self._project_service = None
|
55
|
-
self._worklist_service = None
|
56
|
-
|
57
|
-
@property
|
42
|
+
|
43
|
+
@cached_property
|
58
44
|
def apps(self) -> V2BetaAppService:
|
59
45
|
"""
|
60
46
|
V2-Beta Apps.
|
@@ -63,13 +49,11 @@ class V2BetaService(BaseService):
|
|
63
49
|
|
64
50
|
https://benchling.com/api/v2-beta/reference?stability=not-available#/Apps
|
65
51
|
"""
|
66
|
-
|
67
|
-
from benchling_sdk.services.v2.beta.v2_beta_app_service import V2BetaAppService
|
52
|
+
from .beta.v2_beta_app_service import V2BetaAppService
|
68
53
|
|
69
|
-
|
70
|
-
return self._app_service
|
54
|
+
return self._create_service(V2BetaAppService)
|
71
55
|
|
72
|
-
@
|
56
|
+
@cached_property
|
73
57
|
def collaborations(self) -> V2BetaCollaborationService:
|
74
58
|
"""
|
75
59
|
V2-Beta Collaborations.
|
@@ -78,15 +62,11 @@ class V2BetaService(BaseService):
|
|
78
62
|
|
79
63
|
See https://benchling.com/api/v2-beta/reference?showLA=true#/Collaborations
|
80
64
|
"""
|
81
|
-
|
82
|
-
from benchling_sdk.services.v2.beta.v2_beta_collaboration_service import (
|
83
|
-
V2BetaCollaborationService,
|
84
|
-
)
|
65
|
+
from .beta.v2_beta_collaboration_service import V2BetaCollaborationService
|
85
66
|
|
86
|
-
|
87
|
-
return self._collaboration_service
|
67
|
+
return self._create_service(V2BetaCollaborationService)
|
88
68
|
|
89
|
-
@
|
69
|
+
@cached_property
|
90
70
|
def data_frames(self) -> V2BetaDataFrameService:
|
91
71
|
"""
|
92
72
|
V2-Beta DataFrames.
|
@@ -95,13 +75,11 @@ class V2BetaService(BaseService):
|
|
95
75
|
|
96
76
|
See https://benchling.com/api/v2-beta/reference#/Data%20Frames
|
97
77
|
"""
|
98
|
-
|
99
|
-
from benchling_sdk.services.v2.beta.v2_beta_data_frame_service import V2BetaDataFrameService
|
78
|
+
from .beta.v2_beta_data_frame_service import V2BetaDataFrameService
|
100
79
|
|
101
|
-
|
102
|
-
return self._data_frame_service
|
80
|
+
return self._create_service(V2BetaDataFrameService)
|
103
81
|
|
104
|
-
@
|
82
|
+
@cached_property
|
105
83
|
def entries(self) -> V2BetaEntryService:
|
106
84
|
"""
|
107
85
|
V2-Beta Entries.
|
@@ -110,13 +88,11 @@ class V2BetaService(BaseService):
|
|
110
88
|
|
111
89
|
https://benchling.com/api/v2-beta/reference#/Entries
|
112
90
|
"""
|
113
|
-
|
114
|
-
from benchling_sdk.services.v2.beta.v2_beta_entry_service import V2BetaEntryService
|
91
|
+
from .beta.v2_beta_entry_service import V2BetaEntryService
|
115
92
|
|
116
|
-
|
117
|
-
return self._entry_service
|
93
|
+
return self._create_service(V2BetaEntryService)
|
118
94
|
|
119
|
-
@
|
95
|
+
@cached_property
|
120
96
|
def folders(self) -> V2BetaFolderService:
|
121
97
|
"""
|
122
98
|
V2-Beta Folders.
|
@@ -125,13 +101,11 @@ class V2BetaService(BaseService):
|
|
125
101
|
|
126
102
|
https://benchling.com/api/v2-beta/reference?showLA=true#/Folders
|
127
103
|
"""
|
128
|
-
|
129
|
-
from benchling_sdk.services.v2.beta.v2_beta_folder_service import V2BetaFolderService
|
104
|
+
from .beta.v2_beta_folder_service import V2BetaFolderService
|
130
105
|
|
131
|
-
|
132
|
-
return self._folder_service
|
106
|
+
return self._create_service(V2BetaFolderService)
|
133
107
|
|
134
|
-
@
|
108
|
+
@cached_property
|
135
109
|
def projects(self) -> V2BetaProjectService:
|
136
110
|
"""
|
137
111
|
V2-Beta Projects.
|
@@ -140,13 +114,11 @@ class V2BetaService(BaseService):
|
|
140
114
|
|
141
115
|
See https://benchling.com/api/v2-beta/reference?#/Projects
|
142
116
|
"""
|
143
|
-
|
144
|
-
from benchling_sdk.services.v2.beta.v2_beta_project_service import V2BetaProjectService
|
117
|
+
from .beta.v2_beta_project_service import V2BetaProjectService
|
145
118
|
|
146
|
-
|
147
|
-
return self._project_service
|
119
|
+
return self._create_service(V2BetaProjectService)
|
148
120
|
|
149
|
-
@
|
121
|
+
@cached_property
|
150
122
|
def worklists(self) -> V2BetaWorklistService:
|
151
123
|
"""
|
152
124
|
V2-Beta Worklists.
|
@@ -156,8 +128,10 @@ class V2BetaService(BaseService):
|
|
156
128
|
|
157
129
|
See https://benchling.com/api/v2-beta/reference#/Worklists
|
158
130
|
"""
|
159
|
-
|
160
|
-
|
131
|
+
from .beta.v2_beta_worklist_service import V2BetaWorklistService
|
132
|
+
|
133
|
+
return self._create_service(V2BetaWorklistService)
|
161
134
|
|
162
|
-
|
163
|
-
|
135
|
+
def _create_service(self, cls):
|
136
|
+
"""Instantiate a service using the beta client."""
|
137
|
+
return cls(self._beta_client, self._retry_strategy)
|