benchling-sdk 1.13.0a2__py3-none-any.whl → 1.14.0a1__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 +4 -6
- benchling_sdk/models/__init__.py +52 -44
- benchling_sdk/models/webhooks/v0/__init__.py +4 -0
- benchling_sdk/services/v2/base_service.py +7 -0
- benchling_sdk/services/v2/stable/aa_sequence_service.py +14 -0
- benchling_sdk/services/v2/stable/dna_sequence_service.py +14 -0
- benchling_sdk/services/v2/stable/entry_service.py +23 -0
- benchling_sdk/services/v2/v2_alpha_service.py +8 -28
- benchling_sdk/services/v2/v2_beta_service.py +27 -72
- benchling_sdk/services/v2/v2_stable_service.py +135 -335
- benchling_sdk/services/v2_service.py +17 -11
- {benchling_sdk-1.13.0a2.dist-info → benchling_sdk-1.14.0a1.dist-info}/METADATA +2 -2
- {benchling_sdk-1.13.0a2.dist-info → benchling_sdk-1.14.0a1.dist-info}/RECORD +15 -17
- benchling_sdk/services/v2/alpha/v2_alpha_dna_sequence_service.py +0 -32
- benchling_sdk/services/v2/beta/v2_beta_aa_sequence_service.py +0 -33
- {benchling_sdk-1.13.0a2.dist-info → benchling_sdk-1.14.0a1.dist-info}/LICENSE +0 -0
- {benchling_sdk-1.13.0a2.dist-info → benchling_sdk-1.14.0a1.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
|
|
@@ -10,7 +11,6 @@ from benchling_sdk.services.v2.base_service import BaseService
|
|
10
11
|
from benchling_sdk.services.v2.beta.v2_beta_data_frame_service import V2BetaDataFrameService
|
11
12
|
|
12
13
|
if TYPE_CHECKING:
|
13
|
-
from benchling_sdk.services.v2.beta.v2_beta_aa_sequence_service import V2BetaAaSequenceService
|
14
14
|
from benchling_sdk.services.v2.beta.v2_beta_app_service import V2BetaAppService
|
15
15
|
from benchling_sdk.services.v2.beta.v2_beta_collaboration_service import V2BetaCollaborationService
|
16
16
|
from benchling_sdk.services.v2.beta.v2_beta_entry_service import V2BetaEntryService
|
@@ -28,14 +28,6 @@ class V2BetaService(BaseService):
|
|
28
28
|
See https://benchling.com/api/v2-beta/reference
|
29
29
|
"""
|
30
30
|
|
31
|
-
_aa_sequence_service: Optional[V2BetaAaSequenceService]
|
32
|
-
_app_service: Optional[V2BetaAppService]
|
33
|
-
_collaboration_service: Optional[V2BetaCollaborationService]
|
34
|
-
_data_frame_service: Optional[V2BetaDataFrameService]
|
35
|
-
_entry_service: Optional[V2BetaEntryService]
|
36
|
-
_folder_service: Optional[V2BetaFolderService]
|
37
|
-
_project_service: Optional[V2BetaProjectService]
|
38
|
-
_worklist_service: Optional[V2BetaWorklistService]
|
39
31
|
_beta_client: Client
|
40
32
|
|
41
33
|
def __init__(self, client: Client, retry_strategy: RetryStrategy = RetryStrategy()):
|
@@ -47,33 +39,8 @@ class V2BetaService(BaseService):
|
|
47
39
|
"""
|
48
40
|
super().__init__(client, retry_strategy)
|
49
41
|
self._beta_client = v2_beta_client(self.client)
|
50
|
-
self._aa_sequence_service = None
|
51
|
-
self._app_service = None
|
52
|
-
self._collaboration_service = None
|
53
|
-
self._data_frame_service = None
|
54
|
-
self._entry_service = None
|
55
|
-
self._folder_service = None
|
56
|
-
self._project_service = None
|
57
|
-
self._worklist_service = None
|
58
42
|
|
59
|
-
@
|
60
|
-
def aa_sequences(self) -> V2BetaAaSequenceService:
|
61
|
-
"""
|
62
|
-
V2-Beta AA Sequences.
|
63
|
-
|
64
|
-
AA Sequences are the working units of cells that make everything run (they help make structures, catalyze
|
65
|
-
reactions and allow for signaling - a kind of internal cell communication). On Benchling, these are comprised
|
66
|
-
of a string of amino acids and collections of other attributes, such as annotations.
|
67
|
-
|
68
|
-
See https://benchling.com/api/v2-beta/reference#/AA%20Sequences
|
69
|
-
"""
|
70
|
-
if self._aa_sequence_service is None:
|
71
|
-
from benchling_sdk.services.v2.beta.v2_beta_aa_sequence_service import V2BetaAaSequenceService
|
72
|
-
|
73
|
-
self._aa_sequence_service = V2BetaAaSequenceService(self._beta_client, self.retry_strategy)
|
74
|
-
return self._aa_sequence_service
|
75
|
-
|
76
|
-
@property
|
43
|
+
@cached_property
|
77
44
|
def apps(self) -> V2BetaAppService:
|
78
45
|
"""
|
79
46
|
V2-Beta Apps.
|
@@ -82,13 +49,11 @@ class V2BetaService(BaseService):
|
|
82
49
|
|
83
50
|
https://benchling.com/api/v2-beta/reference?stability=not-available#/Apps
|
84
51
|
"""
|
85
|
-
|
86
|
-
from benchling_sdk.services.v2.beta.v2_beta_app_service import V2BetaAppService
|
52
|
+
from .beta.v2_beta_app_service import V2BetaAppService
|
87
53
|
|
88
|
-
|
89
|
-
return self._app_service
|
54
|
+
return self._create_service(V2BetaAppService)
|
90
55
|
|
91
|
-
@
|
56
|
+
@cached_property
|
92
57
|
def collaborations(self) -> V2BetaCollaborationService:
|
93
58
|
"""
|
94
59
|
V2-Beta Collaborations.
|
@@ -97,15 +62,11 @@ class V2BetaService(BaseService):
|
|
97
62
|
|
98
63
|
See https://benchling.com/api/v2-beta/reference?showLA=true#/Collaborations
|
99
64
|
"""
|
100
|
-
|
101
|
-
from benchling_sdk.services.v2.beta.v2_beta_collaboration_service import (
|
102
|
-
V2BetaCollaborationService,
|
103
|
-
)
|
65
|
+
from .beta.v2_beta_collaboration_service import V2BetaCollaborationService
|
104
66
|
|
105
|
-
|
106
|
-
return self._collaboration_service
|
67
|
+
return self._create_service(V2BetaCollaborationService)
|
107
68
|
|
108
|
-
@
|
69
|
+
@cached_property
|
109
70
|
def data_frames(self) -> V2BetaDataFrameService:
|
110
71
|
"""
|
111
72
|
V2-Beta DataFrames.
|
@@ -114,13 +75,11 @@ class V2BetaService(BaseService):
|
|
114
75
|
|
115
76
|
See https://benchling.com/api/v2-beta/reference#/Data%20Frames
|
116
77
|
"""
|
117
|
-
|
118
|
-
from benchling_sdk.services.v2.beta.v2_beta_data_frame_service import V2BetaDataFrameService
|
78
|
+
from .beta.v2_beta_data_frame_service import V2BetaDataFrameService
|
119
79
|
|
120
|
-
|
121
|
-
return self._data_frame_service
|
80
|
+
return self._create_service(V2BetaDataFrameService)
|
122
81
|
|
123
|
-
@
|
82
|
+
@cached_property
|
124
83
|
def entries(self) -> V2BetaEntryService:
|
125
84
|
"""
|
126
85
|
V2-Beta Entries.
|
@@ -129,13 +88,11 @@ class V2BetaService(BaseService):
|
|
129
88
|
|
130
89
|
https://benchling.com/api/v2-beta/reference#/Entries
|
131
90
|
"""
|
132
|
-
|
133
|
-
from benchling_sdk.services.v2.beta.v2_beta_entry_service import V2BetaEntryService
|
91
|
+
from .beta.v2_beta_entry_service import V2BetaEntryService
|
134
92
|
|
135
|
-
|
136
|
-
return self._entry_service
|
93
|
+
return self._create_service(V2BetaEntryService)
|
137
94
|
|
138
|
-
@
|
95
|
+
@cached_property
|
139
96
|
def folders(self) -> V2BetaFolderService:
|
140
97
|
"""
|
141
98
|
V2-Beta Folders.
|
@@ -144,13 +101,11 @@ class V2BetaService(BaseService):
|
|
144
101
|
|
145
102
|
https://benchling.com/api/v2-beta/reference?showLA=true#/Folders
|
146
103
|
"""
|
147
|
-
|
148
|
-
from benchling_sdk.services.v2.beta.v2_beta_folder_service import V2BetaFolderService
|
104
|
+
from .beta.v2_beta_folder_service import V2BetaFolderService
|
149
105
|
|
150
|
-
|
151
|
-
return self._folder_service
|
106
|
+
return self._create_service(V2BetaFolderService)
|
152
107
|
|
153
|
-
@
|
108
|
+
@cached_property
|
154
109
|
def projects(self) -> V2BetaProjectService:
|
155
110
|
"""
|
156
111
|
V2-Beta Projects.
|
@@ -159,13 +114,11 @@ class V2BetaService(BaseService):
|
|
159
114
|
|
160
115
|
See https://benchling.com/api/v2-beta/reference?#/Projects
|
161
116
|
"""
|
162
|
-
|
163
|
-
from benchling_sdk.services.v2.beta.v2_beta_project_service import V2BetaProjectService
|
117
|
+
from .beta.v2_beta_project_service import V2BetaProjectService
|
164
118
|
|
165
|
-
|
166
|
-
return self._project_service
|
119
|
+
return self._create_service(V2BetaProjectService)
|
167
120
|
|
168
|
-
@
|
121
|
+
@cached_property
|
169
122
|
def worklists(self) -> V2BetaWorklistService:
|
170
123
|
"""
|
171
124
|
V2-Beta Worklists.
|
@@ -175,8 +128,10 @@ class V2BetaService(BaseService):
|
|
175
128
|
|
176
129
|
See https://benchling.com/api/v2-beta/reference#/Worklists
|
177
130
|
"""
|
178
|
-
|
179
|
-
|
131
|
+
from .beta.v2_beta_worklist_service import V2BetaWorklistService
|
132
|
+
|
133
|
+
return self._create_service(V2BetaWorklistService)
|
180
134
|
|
181
|
-
|
182
|
-
|
135
|
+
def _create_service(self, cls):
|
136
|
+
"""Instantiate a service using the beta client."""
|
137
|
+
return cls(self._beta_client, self._retry_strategy)
|