101
101
from .thumbnail import Thumbnail
102
102
103
103
104
- # TODO remove extra masks after API v4
105
- class DownloadDataset (
106
- BaseModel , masked = ("history" , "proposalId" , "sampleId" , "instrumentId" )
107
- ):
104
+ class DownloadDataset (BaseModel ):
108
105
contactEmail : str | None = None
109
106
creationLocation : str | None = None
110
107
creationTime : datetime | None = None
111
108
inputDatasets : list [PID ] | None = None
109
+ investigator : str | None = None
112
110
numberOfFilesArchived : NonNegativeInt | None = None
113
111
owner : str | None = None
114
112
ownerGroup : str | None = None
@@ -127,7 +125,7 @@ class DownloadDataset(
127
125
description : str | None = None
128
126
endTime : datetime | None = None
129
127
instrumentGroup : str | None = None
130
- instrumentIds : list [ str ] | None = None
128
+ instrumentId : str | None = None
131
129
isPublished : bool | None = None
132
130
jobLogData : str | None = None
133
131
jobParameters : dict [str , Any ] | None = None
@@ -141,9 +139,10 @@ class DownloadDataset(
141
139
ownerEmail : str | None = None
142
140
packedSize : NonNegativeInt | None = None
143
141
pid : PID | None = None
144
- proposalIds : list [ str ] | None = None
142
+ proposalId : str | None = None
145
143
relationships : list [DownloadRelationship ] | None = None
146
- sampleIds : list [str ] | None = None
144
+ runNumber : str | None = None
145
+ sampleId : str | None = None
147
146
sharedWith : list [str ] | None = None
148
147
size : NonNegativeInt | None = None
149
148
sourceFolderHost : str | None = None
@@ -167,25 +166,6 @@ def _validate_emails(cls, value: Any) -> Any:
167
166
def _validate_orcids (cls , value : Any ) -> Any :
168
167
return validate_orcids (value )
169
168
170
- # TODO remove after API v4
171
- @pydantic .field_validator ("sampleIds" , mode = "before" )
172
- def _validate_sample_ids (cls , value : Any ) -> Any :
173
- if value == [None ]:
174
- return []
175
- return value
176
-
177
- @pydantic .field_validator ("proposalIds" , mode = "before" )
178
- def _validate_proposal_ids (cls , value : Any ) -> Any :
179
- if value == [None ]:
180
- return []
181
- return value
182
-
183
- @pydantic .field_validator ("instrumentIds" , mode = "before" )
184
- def _validate_instrument_ids (cls , value : Any ) -> Any :
185
- if value == [None ]:
186
- return []
187
- return value
188
-
189
169
190
170
class UploadDerivedDataset (BaseModel ):
191
171
contactEmail : str
@@ -198,7 +178,6 @@ class UploadDerivedDataset(BaseModel):
198
178
sourceFolder : RemotePath
199
179
type : DatasetType
200
180
usedSoftware : list [str ]
201
- datasetName : str
202
181
accessGroups : list [str ] | None = None
203
182
classification : str | None = None
204
183
comment : str | None = None
@@ -211,12 +190,14 @@ class UploadDerivedDataset(BaseModel):
211
190
keywords : list [str ] | None = None
212
191
license : str | None = None
213
192
scientificMetadata : dict [str , Any ] | None = None
193
+ datasetName : str | None = None
214
194
numberOfFiles : NonNegativeInt | None = None
215
195
orcidOfOwner : str | None = None
216
196
ownerEmail : str | None = None
217
197
packedSize : NonNegativeInt | None = None
218
198
proposalId : str | None = None
219
199
relationships : list [UploadRelationship ] | None = None
200
+ runNumber : str | None = None
220
201
sharedWith : list [str ] | None = None
221
202
size : NonNegativeInt | None = None
222
203
sourceFolderHost : str | None = None
@@ -241,15 +222,14 @@ class UploadRawDataset(BaseModel):
241
222
creationLocation : str
242
223
creationTime : datetime
243
224
inputDatasets : list [PID ]
225
+ investigator : str
244
226
numberOfFilesArchived : NonNegativeInt
245
227
owner : str
246
228
ownerGroup : str
247
229
principalInvestigator : str
248
230
sourceFolder : RemotePath
249
231
type : DatasetType
250
232
usedSoftware : list [str ]
251
- datasetName : str
252
- investigator : str | None = None
253
233
accessGroups : list [str ] | None = None
254
234
classification : str | None = None
255
235
comment : str | None = None
@@ -265,12 +245,14 @@ class UploadRawDataset(BaseModel):
265
245
keywords : list [str ] | None = None
266
246
license : str | None = None
267
247
scientificMetadata : dict [str , Any ] | None = None
248
+ datasetName : str | None = None
268
249
numberOfFiles : NonNegativeInt | None = None
269
250
orcidOfOwner : str | None = None
270
251
ownerEmail : str | None = None
271
252
packedSize : NonNegativeInt | None = None
272
253
proposalId : str | None = None
273
254
relationships : list [UploadRelationship ] | None = None
255
+ runNumber : str | None = None
274
256
sampleId : str | None = None
275
257
sharedWith : list [str ] | None = None
276
258
size : NonNegativeInt | None = None
0 commit comments