logs-py 4.0.7__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.
- LOGS/Auxiliary/CheckClassName.py +1075 -0
- LOGS/Auxiliary/Constants.py +99 -0
- LOGS/Auxiliary/CustomEntityClassGenerator.py +254 -0
- LOGS/Auxiliary/CustomFieldClassGenerator.py +115 -0
- LOGS/Auxiliary/CustomFieldValueTypeChecker.py +168 -0
- LOGS/Auxiliary/CustomSectionClassGenerator.py +113 -0
- LOGS/Auxiliary/CustomTypeClassGenerator.py +147 -0
- LOGS/Auxiliary/DateTimeConverter.py +66 -0
- LOGS/Auxiliary/Decorators.py +109 -0
- LOGS/Auxiliary/Exceptions.py +341 -0
- LOGS/Auxiliary/LOGSErrorResponse.py +89 -0
- LOGS/Auxiliary/MinimalModelGenerator.py +236 -0
- LOGS/Auxiliary/ParameterHelper.py +56 -0
- LOGS/Auxiliary/ReplaceMessage.py +13 -0
- LOGS/Auxiliary/Tools.py +432 -0
- LOGS/Auxiliary/__init__.py +15 -0
- LOGS/Converter/Conversion.py +248 -0
- LOGS/Converter/Converter.py +96 -0
- LOGS/Converter/ConverterParameter.py +88 -0
- LOGS/Converter/DateTimeRange.py +58 -0
- LOGS/Converter/ExportParameters.py +89 -0
- LOGS/Converter/__init__.py +13 -0
- LOGS/Entities/Attachment.py +84 -0
- LOGS/Entities/AttachmentMinimal.py +8 -0
- LOGS/Entities/AttachmentRequestParameter.py +42 -0
- LOGS/Entities/Attachments.py +53 -0
- LOGS/Entities/AutoloadFileInfo.py +12 -0
- LOGS/Entities/AutoloadStatusError.py +7 -0
- LOGS/Entities/AxisNaming.py +33 -0
- LOGS/Entities/AxisZoom.py +33 -0
- LOGS/Entities/Bridge.py +165 -0
- LOGS/Entities/BridgeClientInfo.py +93 -0
- LOGS/Entities/BridgeMinimal.py +8 -0
- LOGS/Entities/BridgeRequestParameter.py +49 -0
- LOGS/Entities/BridgeType.py +7 -0
- LOGS/Entities/Bridges.py +12 -0
- LOGS/Entities/CustomField.py +243 -0
- LOGS/Entities/CustomFieldMinimal.py +8 -0
- LOGS/Entities/CustomFieldModels.py +111 -0
- LOGS/Entities/CustomFieldRequestParameter.py +69 -0
- LOGS/Entities/CustomFieldSearchQuery.py +40 -0
- LOGS/Entities/CustomFields.py +12 -0
- LOGS/Entities/CustomType.py +212 -0
- LOGS/Entities/CustomTypeMinimal.py +8 -0
- LOGS/Entities/CustomTypeRequestParameter.py +60 -0
- LOGS/Entities/CustomTypeSection.py +63 -0
- LOGS/Entities/CustomTypes.py +12 -0
- LOGS/Entities/DataFormat.py +97 -0
- LOGS/Entities/DataFormatInstrument.py +18 -0
- LOGS/Entities/DataFormatInstrumentMinimal.py +8 -0
- LOGS/Entities/DataFormatInstrumentRequestParameter.py +17 -0
- LOGS/Entities/DataFormatInstruments.py +16 -0
- LOGS/Entities/DataFormatMinimal.py +18 -0
- LOGS/Entities/DataFormatRequestParameter.py +21 -0
- LOGS/Entities/DataFormats.py +12 -0
- LOGS/Entities/DataSource.py +218 -0
- LOGS/Entities/DataSourceConnectionStatus.py +12 -0
- LOGS/Entities/DataSourceMinimal.py +8 -0
- LOGS/Entities/DataSourceRequestParameter.py +57 -0
- LOGS/Entities/DataSourceStatus.py +108 -0
- LOGS/Entities/DataSourceStatusIterator.py +16 -0
- LOGS/Entities/DataSourceStatusRequestParameter.py +31 -0
- LOGS/Entities/DataSources.py +12 -0
- LOGS/Entities/Dataset.py +439 -0
- LOGS/Entities/DatasetBase.py +196 -0
- LOGS/Entities/DatasetCreator.py +148 -0
- LOGS/Entities/DatasetInfo.py +147 -0
- LOGS/Entities/DatasetMatchTypes.py +157 -0
- LOGS/Entities/DatasetMatching.py +196 -0
- LOGS/Entities/DatasetMinimal.py +8 -0
- LOGS/Entities/DatasetModels.py +33 -0
- LOGS/Entities/DatasetRequestParameter.py +92 -0
- LOGS/Entities/DatasetTemplate.py +23 -0
- LOGS/Entities/DatasetUploadParameter.py +14 -0
- LOGS/Entities/Datasets.py +142 -0
- LOGS/Entities/Datatrack.py +179 -0
- LOGS/Entities/DatatrackFormattedTable.py +25 -0
- LOGS/Entities/DatatrackGeneric.py +34 -0
- LOGS/Entities/DatatrackImage.py +25 -0
- LOGS/Entities/DatatrackNumericArray.py +30 -0
- LOGS/Entities/DatatrackNumericMatrix.py +98 -0
- LOGS/Entities/Entities.py +71 -0
- LOGS/Entities/EntitiesRequestParameter.py +18 -0
- LOGS/Entities/EntityOriginWriteModelWithId.py +15 -0
- LOGS/Entities/FileEntry.py +138 -0
- LOGS/Entities/FileExcludePattern.py +8 -0
- LOGS/Entities/FormatMetaData.py +56 -0
- LOGS/Entities/FormattedTable/DatatypeFormattedTable.py +135 -0
- LOGS/Entities/FormattedTable/DatatypeFormattedTableCell.py +108 -0
- LOGS/Entities/FormattedTable/DatatypeFormattedTableSettings.py +11 -0
- LOGS/Entities/FormattedTable/__init__.py +9 -0
- LOGS/Entities/HierarchyLeaf.py +15 -0
- LOGS/Entities/HierarchyNode.py +40 -0
- LOGS/Entities/ILiteraryTypedEntity.py +19 -0
- LOGS/Entities/InventoryItem.py +102 -0
- LOGS/Entities/InventoryItemMinimal.py +25 -0
- LOGS/Entities/InventoryItemRequestParameter.py +58 -0
- LOGS/Entities/InventoryItems.py +12 -0
- LOGS/Entities/LabNotebook.py +33 -0
- LOGS/Entities/LabNotebookEntries.py +16 -0
- LOGS/Entities/LabNotebookEntry.py +106 -0
- LOGS/Entities/LabNotebookEntryContent/BasicAttribute.py +15 -0
- LOGS/Entities/LabNotebookEntryContent/EntityAttribute.py +85 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentBlockquote.py +13 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentBulletList.py +17 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentCallout.py +40 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentContentPlaceholderNode.py +31 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentConverter.py +207 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentDocument.py +8 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentEntity.py +13 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentEntityMention.py +31 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentHeading.py +33 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentHorizontalRule.py +12 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentItem.py +37 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentListItem.py +49 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentOrderedList.py +31 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentParagraph.py +13 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentTable.py +17 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentTableCell.py +40 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentTableRow.py +8 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentTaskList.py +17 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentTaskListItem.py +31 -0
- LOGS/Entities/LabNotebookEntryContent/EntryContentText.py +33 -0
- LOGS/Entities/LabNotebookEntryContent/IEntryContentWithAttribute.py +23 -0
- LOGS/Entities/LabNotebookEntryContent/IEntryContentWithContent.py +38 -0
- LOGS/Entities/LabNotebookEntryContent/IEntryContentWithTextAttribute.py +16 -0
- LOGS/Entities/LabNotebookEntryContent/TextAttribute.py +46 -0
- LOGS/Entities/LabNotebookEntryContent/TextMarkAtributes.py +64 -0
- LOGS/Entities/LabNotebookEntryContent/TextMarkConverter.py +45 -0
- LOGS/Entities/LabNotebookEntryContent/TextMarks.py +71 -0
- LOGS/Entities/LabNotebookEntryContent/__init__.py +34 -0
- LOGS/Entities/LabNotebookEntryMinimal.py +8 -0
- LOGS/Entities/LabNotebookEntryRequestParameter.py +59 -0
- LOGS/Entities/LabNotebookExperiment.py +58 -0
- LOGS/Entities/LabNotebookExperimentMinimal.py +8 -0
- LOGS/Entities/LabNotebookExperimentRequestParameter.py +52 -0
- LOGS/Entities/LabNotebookExperiments.py +16 -0
- LOGS/Entities/LabNotebookMinimal.py +8 -0
- LOGS/Entities/LabNotebookModels.py +14 -0
- LOGS/Entities/LabNotebookRequestParameter.py +42 -0
- LOGS/Entities/LabNotebookTemplate.py +42 -0
- LOGS/Entities/LabNotebookTemplateMinimal.py +8 -0
- LOGS/Entities/LabNotebookTemplateRequestParameter.py +38 -0
- LOGS/Entities/LabNotebookTemplates.py +16 -0
- LOGS/Entities/LabNotebooks.py +12 -0
- LOGS/Entities/Method.py +66 -0
- LOGS/Entities/MethodMinimal.py +8 -0
- LOGS/Entities/MethodRequestParameter.py +16 -0
- LOGS/Entities/Methods.py +12 -0
- LOGS/Entities/Origin.py +53 -0
- LOGS/Entities/OriginMinimal.py +8 -0
- LOGS/Entities/OriginRequestParameter.py +28 -0
- LOGS/Entities/Origins.py +12 -0
- LOGS/Entities/ParserLog.py +49 -0
- LOGS/Entities/Permission.py +9 -0
- LOGS/Entities/Person.py +145 -0
- LOGS/Entities/PersonCategory.py +12 -0
- LOGS/Entities/PersonMinimal.py +8 -0
- LOGS/Entities/PersonRequestParameter.py +58 -0
- LOGS/Entities/Persons.py +12 -0
- LOGS/Entities/Project.py +52 -0
- LOGS/Entities/ProjectMinimal.py +8 -0
- LOGS/Entities/ProjectPersonPermission.py +102 -0
- LOGS/Entities/ProjectRequestParameter.py +58 -0
- LOGS/Entities/Projects.py +12 -0
- LOGS/Entities/Role.py +94 -0
- LOGS/Entities/RoleMinimal.py +8 -0
- LOGS/Entities/RoleRequestParameter.py +40 -0
- LOGS/Entities/Roles.py +12 -0
- LOGS/Entities/RunState.py +9 -0
- LOGS/Entities/Sample.py +53 -0
- LOGS/Entities/SampleMinimal.py +8 -0
- LOGS/Entities/SampleRequestParameter.py +54 -0
- LOGS/Entities/Samples.py +12 -0
- LOGS/Entities/SharedContent.py +87 -0
- LOGS/Entities/SharedContentMinimal.py +8 -0
- LOGS/Entities/SharedContentRequestParameter.py +38 -0
- LOGS/Entities/SharedContents.py +12 -0
- LOGS/Entities/Signature.py +60 -0
- LOGS/Entities/Track.py +93 -0
- LOGS/Entities/TrackData.py +20 -0
- LOGS/Entities/TrackImage.py +21 -0
- LOGS/Entities/TrackImageData.py +20 -0
- LOGS/Entities/TrackMatrix.py +28 -0
- LOGS/Entities/TrackMatrixData.py +22 -0
- LOGS/Entities/TrackSettings.py +55 -0
- LOGS/Entities/TrackTable.py +21 -0
- LOGS/Entities/TrackTableData.py +22 -0
- LOGS/Entities/TrackXY.py +40 -0
- LOGS/Entities/TrackXYComplex.py +51 -0
- LOGS/Entities/TrackXYComplexData.py +50 -0
- LOGS/Entities/TrackXYData.py +31 -0
- LOGS/Entities/Vendor.py +40 -0
- LOGS/Entities/VendorMinimal.py +8 -0
- LOGS/Entities/VendorRequestParameter.py +17 -0
- LOGS/Entities/Vendors.py +12 -0
- LOGS/Entities/__init__.py +118 -0
- LOGS/Entity/ConnectedEntity.py +170 -0
- LOGS/Entity/Entity.py +203 -0
- LOGS/Entity/EntityConnector.py +70 -0
- LOGS/Entity/EntityIterator.py +263 -0
- LOGS/Entity/EntityMinimal.py +141 -0
- LOGS/Entity/EntityMinimalWithIntId.py +36 -0
- LOGS/Entity/EntityMinimalWithStrId.py +36 -0
- LOGS/Entity/EntityMinimalWithType.py +47 -0
- LOGS/Entity/EntityRequestParameter.py +104 -0
- LOGS/Entity/EntitySortBy.py +69 -0
- LOGS/Entity/EntityWithIntId.py +26 -0
- LOGS/Entity/EntityWithStrId.py +26 -0
- LOGS/Entity/IGenericEntityOrderBy.py +55 -0
- LOGS/Entity/IdIterator.py +207 -0
- LOGS/Entity/SerializableContent.py +834 -0
- LOGS/Entity/__init__.py +23 -0
- LOGS/Interfaces/ICustomFieldValue.py +92 -0
- LOGS/Interfaces/ICustomSectionValue.py +161 -0
- LOGS/Interfaces/ICustomTypeValue.py +152 -0
- LOGS/Interfaces/ICustomValue.py +28 -0
- LOGS/Interfaces/IEntityInterface.py +7 -0
- LOGS/Interfaces/IEntryRecord.py +57 -0
- LOGS/Interfaces/IHierarchicalEntity.py +41 -0
- LOGS/Interfaces/IHierarchyType.py +63 -0
- LOGS/Interfaces/ILockableEntity.py +52 -0
- LOGS/Interfaces/IModificationRecord.py +56 -0
- LOGS/Interfaces/INamedEntity.py +25 -0
- LOGS/Interfaces/IOwnedEntity.py +27 -0
- LOGS/Interfaces/IPaginationRequest.py +11 -0
- LOGS/Interfaces/IPermissionedEntity.py +72 -0
- LOGS/Interfaces/IProjectBased.py +27 -0
- LOGS/Interfaces/ISessionedEntity.py +59 -0
- LOGS/Interfaces/ISignableEntity.py +49 -0
- LOGS/Interfaces/ISoftDeletable.py +28 -0
- LOGS/Interfaces/ITypedEntity.py +129 -0
- LOGS/Interfaces/IUniqueEntity.py +61 -0
- LOGS/Interfaces/IVersionedEntity.py +39 -0
- LOGS/Interfaces/__init__.py +7 -0
- LOGS/LOGS.py +1436 -0
- LOGS/LOGSConnection.py +647 -0
- LOGS/LOGSOptions.py +11 -0
- LOGS/Parameters/Color.py +92 -0
- LOGS/Parameters/ParameterBase.py +55 -0
- LOGS/Parameters/ParameterConverter.py +24 -0
- LOGS/Parameters/ParameterElement.py +99 -0
- LOGS/Parameters/ParameterList.py +52 -0
- LOGS/Parameters/ParameterTable.py +64 -0
- LOGS/Parameters/__init__.py +13 -0
- LOGS/ServerMetaData.py +120 -0
- LOGS/__init__.py +12 -0
- logs_py-4.0.7.dist-info/METADATA +51 -0
- logs_py-4.0.7.dist-info/RECORD +251 -0
- logs_py-4.0.7.dist-info/WHEEL +5 -0
- logs_py-4.0.7.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
from LOGS.Auxiliary.Decorators import FullModel
|
|
2
|
+
from LOGS.Entities.CustomType import CustomType
|
|
3
|
+
from LOGS.Entity.EntityMinimalWithIntId import EntityMinimalWithIntId
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@FullModel(CustomType)
|
|
7
|
+
class CustomTypeMinimal(EntityMinimalWithIntId[CustomType]):
|
|
8
|
+
pass
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
from dataclasses import dataclass, field
|
|
2
|
+
from typing import List, Optional, Type, cast
|
|
3
|
+
|
|
4
|
+
from typing_extensions import Self
|
|
5
|
+
|
|
6
|
+
from LOGS.Entities.CustomFieldModels import CustomTypeEntityType
|
|
7
|
+
from LOGS.Entity.EntityRequestParameter import EntityRequestParameter
|
|
8
|
+
from LOGS.Entity.IGenericEntityOrderBy import (
|
|
9
|
+
IEntryRecordSortingOptions,
|
|
10
|
+
IGenericEntitySortingOptions,
|
|
11
|
+
IModificationRecordSortingOptions,
|
|
12
|
+
INamedEntitySortingOptions,
|
|
13
|
+
)
|
|
14
|
+
from LOGS.Interfaces.IEntryRecord import IEntryRecordRequest
|
|
15
|
+
from LOGS.Interfaces.IModificationRecord import IModificationRecordRequest
|
|
16
|
+
from LOGS.Interfaces.INamedEntity import INamedEntityRequest
|
|
17
|
+
from LOGS.Interfaces.IPaginationRequest import IPaginationRequest
|
|
18
|
+
from LOGS.Interfaces.IPermissionedEntity import IPermissionedEntityRequest
|
|
19
|
+
from LOGS.Interfaces.ISoftDeletable import ISoftDeletableRequest
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class CustomTypeSortingOptions(
|
|
23
|
+
IGenericEntitySortingOptions,
|
|
24
|
+
INamedEntitySortingOptions,
|
|
25
|
+
IEntryRecordSortingOptions,
|
|
26
|
+
IModificationRecordSortingOptions,
|
|
27
|
+
):
|
|
28
|
+
NUMBER_OF_ITEMS: Self = cast(Self, "NUMBER_OF_ITEMS")
|
|
29
|
+
INVENTORY_NAME: Self = cast(Self, "INVENTORY_NAME")
|
|
30
|
+
LAYOUT: Self = cast(Self, "LAYOUT")
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
@dataclass
|
|
34
|
+
class CustomTypeRequestParameter(
|
|
35
|
+
EntityRequestParameter[CustomTypeSortingOptions],
|
|
36
|
+
IPaginationRequest,
|
|
37
|
+
IPermissionedEntityRequest,
|
|
38
|
+
IEntryRecordRequest,
|
|
39
|
+
IModificationRecordRequest,
|
|
40
|
+
ISoftDeletableRequest,
|
|
41
|
+
INamedEntityRequest,
|
|
42
|
+
):
|
|
43
|
+
_orderByType: Type[CustomTypeSortingOptions] = field(
|
|
44
|
+
default=CustomTypeSortingOptions, init=False
|
|
45
|
+
)
|
|
46
|
+
|
|
47
|
+
excludeDisabled: Optional[bool] = None
|
|
48
|
+
isEnabled: Optional[bool] = None
|
|
49
|
+
customFieldIds: Optional[List[int]] = None
|
|
50
|
+
entityTypes: Optional[List[CustomTypeEntityType]] = None
|
|
51
|
+
extendSearchToInventoryItems: Optional[bool] = None
|
|
52
|
+
parentTypeIds: Optional[List[int]] = None
|
|
53
|
+
hasRestrictedAddPermission: Optional[bool] = None
|
|
54
|
+
hasRestrictedEditPermission: Optional[bool] = None
|
|
55
|
+
hasRestrictedReadPermission: Optional[bool] = None
|
|
56
|
+
rootHierarchyIds: Optional[List[int]] = None
|
|
57
|
+
isInventory: Optional[bool] = None
|
|
58
|
+
isHierarchyRoot: Optional[bool] = None
|
|
59
|
+
inventoryNames: Optional[List[str]] = None
|
|
60
|
+
excludeNonInventories: Optional[bool] = None
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
from typing import List, Optional
|
|
2
|
+
|
|
3
|
+
from LOGS.Entities.CustomField import CustomField
|
|
4
|
+
from LOGS.Entities.ILiteraryTypedEntity import ILiteraryTypedEntity
|
|
5
|
+
from LOGS.Entity.ConnectedEntity import ConnectedEntity
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class CustomTypeSection(ConnectedEntity, ILiteraryTypedEntity):
|
|
9
|
+
_name: Optional[str] = None
|
|
10
|
+
_isFolded: Optional[bool] = None
|
|
11
|
+
_isHeadless: Optional[bool] = None
|
|
12
|
+
_customFields: Optional[List[CustomField]] = None
|
|
13
|
+
|
|
14
|
+
_type = "CustomTypeSection"
|
|
15
|
+
|
|
16
|
+
def contentToString(self, indentation: int = 1, hideNone: bool = False) -> str:
|
|
17
|
+
bak = self._noSerialize
|
|
18
|
+
self._noSerialize = [*bak, "customFields"]
|
|
19
|
+
tab = self._indentationString * indentation
|
|
20
|
+
tabContent = self._indentationString * (indentation + 1)
|
|
21
|
+
s = super().contentToString(indentation, hideNone)
|
|
22
|
+
s += f"{tab}customFields=\n"
|
|
23
|
+
self._noSerialize = bak
|
|
24
|
+
for field in self.customFields or []:
|
|
25
|
+
if not field and hideNone:
|
|
26
|
+
continue
|
|
27
|
+
s += f"{tabContent}{str(field)}\n"
|
|
28
|
+
|
|
29
|
+
return s
|
|
30
|
+
|
|
31
|
+
@property
|
|
32
|
+
def name(self) -> Optional[str]:
|
|
33
|
+
return self._name
|
|
34
|
+
|
|
35
|
+
@name.setter
|
|
36
|
+
def name(self, value):
|
|
37
|
+
self._name = self.checkAndConvertNullable(value, str, "name")
|
|
38
|
+
|
|
39
|
+
@property
|
|
40
|
+
def isFolded(self) -> Optional[bool]:
|
|
41
|
+
return self._isFolded
|
|
42
|
+
|
|
43
|
+
@isFolded.setter
|
|
44
|
+
def isFolded(self, value):
|
|
45
|
+
self._isFolded = self.checkAndConvertNullable(value, bool, "isFolded")
|
|
46
|
+
|
|
47
|
+
@property
|
|
48
|
+
def isHeadless(self) -> Optional[bool]:
|
|
49
|
+
return self._isHeadless
|
|
50
|
+
|
|
51
|
+
@isHeadless.setter
|
|
52
|
+
def isHeadless(self, value):
|
|
53
|
+
self._isHeadless = self.checkAndConvertNullable(value, bool, "isHeadless")
|
|
54
|
+
|
|
55
|
+
@property
|
|
56
|
+
def customFields(self) -> Optional[List[CustomField]]:
|
|
57
|
+
return self._customFields
|
|
58
|
+
|
|
59
|
+
@customFields.setter
|
|
60
|
+
def customFields(self, value):
|
|
61
|
+
self._customFields = self.checkListAndConvertNullable(
|
|
62
|
+
value, CustomField, "customFields"
|
|
63
|
+
)
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
from LOGS.Auxiliary.Decorators import Endpoint
|
|
2
|
+
from LOGS.Entities.CustomType import CustomType
|
|
3
|
+
from LOGS.Entities.CustomTypeRequestParameter import CustomTypeRequestParameter
|
|
4
|
+
from LOGS.Entity.EntityIterator import EntityIterator
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@Endpoint("types")
|
|
8
|
+
class CustomTypes(EntityIterator[CustomType, CustomTypeRequestParameter]):
|
|
9
|
+
"""LOGS connected CustomTypes iterator"""
|
|
10
|
+
|
|
11
|
+
_generatorType = CustomType
|
|
12
|
+
_parameterType = CustomTypeRequestParameter
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
from typing import List, Optional
|
|
2
|
+
|
|
3
|
+
from LOGS.Auxiliary.Decorators import Endpoint
|
|
4
|
+
from LOGS.Entity.EntityWithStrId import EntityWithStrId
|
|
5
|
+
from LOGS.Interfaces.INamedEntity import INamedEntity
|
|
6
|
+
from LOGS.Interfaces.IPermissionedEntity import IGenericPermissionEntity
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
@Endpoint("data_formats")
|
|
10
|
+
class DataFormat(EntityWithStrId, INamedEntity, IGenericPermissionEntity):
|
|
11
|
+
|
|
12
|
+
_description: Optional[str] = None
|
|
13
|
+
_formatVersion: Optional[List[str]] = []
|
|
14
|
+
_isCustom: Optional[bool] = None
|
|
15
|
+
_version: Optional[str] = None
|
|
16
|
+
_hasVisualization: Optional[bool] = None
|
|
17
|
+
|
|
18
|
+
_vendors: List[str] = []
|
|
19
|
+
_methods: List[str] = []
|
|
20
|
+
_formats: List[str] = []
|
|
21
|
+
_instruments: List[str] = []
|
|
22
|
+
|
|
23
|
+
@property
|
|
24
|
+
def formatVersion(self) -> Optional[List[str]]:
|
|
25
|
+
return self._formatVersion
|
|
26
|
+
|
|
27
|
+
@formatVersion.setter
|
|
28
|
+
def formatVersion(self, value):
|
|
29
|
+
self._formatVersion = self.checkListAndConvertNullable(
|
|
30
|
+
value, str, "formatVersion"
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
@property
|
|
34
|
+
def vendors(self) -> List[str]:
|
|
35
|
+
return self._vendors
|
|
36
|
+
|
|
37
|
+
@vendors.setter
|
|
38
|
+
def vendors(self, value):
|
|
39
|
+
self._vendors = self.checkListAndConvert(value, str, "vendors")
|
|
40
|
+
|
|
41
|
+
@property
|
|
42
|
+
def methods(self) -> List[str]:
|
|
43
|
+
return self._methods
|
|
44
|
+
|
|
45
|
+
@methods.setter
|
|
46
|
+
def methods(self, value):
|
|
47
|
+
self._methods = self.checkListAndConvert(value, str, "methods")
|
|
48
|
+
|
|
49
|
+
@property
|
|
50
|
+
def formats(self) -> List[str]:
|
|
51
|
+
return self._formats
|
|
52
|
+
|
|
53
|
+
@formats.setter
|
|
54
|
+
def formats(self, value):
|
|
55
|
+
self._formats = self.checkListAndConvert(value, str, "formats")
|
|
56
|
+
|
|
57
|
+
@property
|
|
58
|
+
def instruments(self) -> List[str]:
|
|
59
|
+
return self._instruments
|
|
60
|
+
|
|
61
|
+
@instruments.setter
|
|
62
|
+
def instruments(self, value):
|
|
63
|
+
self._instruments = self.checkListAndConvert(value, str, "instruments")
|
|
64
|
+
|
|
65
|
+
@property
|
|
66
|
+
def hasVisualization(self) -> Optional[bool]:
|
|
67
|
+
return self._hasVisualization
|
|
68
|
+
|
|
69
|
+
@hasVisualization.setter
|
|
70
|
+
def hasVisualization(self, value: Optional[bool]):
|
|
71
|
+
self._hasVisualization = self.checkAndConvertNullable(
|
|
72
|
+
value, bool, "hasVisualization"
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
@property
|
|
76
|
+
def description(self) -> Optional[str]:
|
|
77
|
+
return self._description
|
|
78
|
+
|
|
79
|
+
@description.setter
|
|
80
|
+
def description(self, value: Optional[str]):
|
|
81
|
+
self._description = self.checkAndConvertNullable(value, str, "description")
|
|
82
|
+
|
|
83
|
+
@property
|
|
84
|
+
def isCustom(self) -> Optional[bool]:
|
|
85
|
+
return self._isCustom
|
|
86
|
+
|
|
87
|
+
@isCustom.setter
|
|
88
|
+
def isCustom(self, value: Optional[bool]):
|
|
89
|
+
self._isCustom = self.checkAndConvertNullable(value, bool, "isCustom")
|
|
90
|
+
|
|
91
|
+
@property
|
|
92
|
+
def version(self) -> Optional[str]:
|
|
93
|
+
return self._version
|
|
94
|
+
|
|
95
|
+
@version.setter
|
|
96
|
+
def version(self, value: Optional[str]):
|
|
97
|
+
self._version = self.checkAndConvertNullable(value, str, "version")
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from typing import Optional
|
|
2
|
+
|
|
3
|
+
from LOGS.Auxiliary.Decorators import Endpoint
|
|
4
|
+
from LOGS.Entity.EntityWithStrId import EntityWithStrId
|
|
5
|
+
from LOGS.Interfaces.INamedEntity import INamedEntity
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
@Endpoint("data_format_instruments")
|
|
9
|
+
class DataFormatInstrument(EntityWithStrId, INamedEntity):
|
|
10
|
+
_description: Optional[str] = None
|
|
11
|
+
|
|
12
|
+
@property
|
|
13
|
+
def description(self) -> Optional[str]:
|
|
14
|
+
return self._description
|
|
15
|
+
|
|
16
|
+
@description.setter
|
|
17
|
+
def description(self, value):
|
|
18
|
+
self._description = self.checkAndConvertNullable(value, str, "description")
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
from LOGS.Auxiliary.Decorators import FullModel
|
|
2
|
+
from LOGS.Entities.DataFormatInstrument import DataFormatInstrument
|
|
3
|
+
from LOGS.Entity.EntityMinimalWithStrId import EntityMinimalWithStrId
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@FullModel(DataFormatInstrument)
|
|
7
|
+
class DataFormatInstrumentMinimal(EntityMinimalWithStrId[DataFormatInstrument]):
|
|
8
|
+
pass
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from dataclasses import dataclass, field
|
|
2
|
+
from typing import Type
|
|
3
|
+
|
|
4
|
+
from LOGS.Entity.EntityRequestParameter import (
|
|
5
|
+
DefaultSortingOptions,
|
|
6
|
+
EntityRequestParameter,
|
|
7
|
+
)
|
|
8
|
+
from LOGS.Interfaces.INamedEntity import INamedEntityRequest
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@dataclass
|
|
12
|
+
class DataFormatInstrumentRequestParameter(
|
|
13
|
+
EntityRequestParameter[DefaultSortingOptions], INamedEntityRequest
|
|
14
|
+
):
|
|
15
|
+
_orderByType: Type[DefaultSortingOptions] = field(
|
|
16
|
+
default=DefaultSortingOptions, init=False
|
|
17
|
+
)
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
from LOGS.Auxiliary.Decorators import Endpoint
|
|
2
|
+
from LOGS.Entities.DataFormatInstrument import DataFormatInstrument
|
|
3
|
+
from LOGS.Entities.DataFormatInstrumentRequestParameter import (
|
|
4
|
+
DataFormatInstrumentRequestParameter,
|
|
5
|
+
)
|
|
6
|
+
from LOGS.Entity.EntityIterator import EntityIterator
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
@Endpoint("data_format_instruments")
|
|
10
|
+
class DataFormatInstruments(
|
|
11
|
+
EntityIterator[DataFormatInstrument, DataFormatInstrumentRequestParameter]
|
|
12
|
+
):
|
|
13
|
+
"""LOGS connected class DataFormatInstrument iterator"""
|
|
14
|
+
|
|
15
|
+
_generatorType = DataFormatInstrument
|
|
16
|
+
_parameterType = DataFormatInstrumentRequestParameter
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from typing import List, Optional
|
|
2
|
+
|
|
3
|
+
from LOGS.Auxiliary.Decorators import FullModel
|
|
4
|
+
from LOGS.Entities.DataFormat import DataFormat
|
|
5
|
+
from LOGS.Entity.EntityMinimalWithStrId import EntityMinimalWithStrId
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
@FullModel(DataFormat)
|
|
9
|
+
class DataFormatMinimal(EntityMinimalWithStrId[DataFormat]):
|
|
10
|
+
_version: Optional[List[str]] = None
|
|
11
|
+
|
|
12
|
+
@property
|
|
13
|
+
def version(self) -> Optional[List[str]]:
|
|
14
|
+
return self._version
|
|
15
|
+
|
|
16
|
+
@version.setter
|
|
17
|
+
def version(self, value):
|
|
18
|
+
self._version = self.checkListAndConvertNullable(value, str, "version")
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from dataclasses import dataclass, field
|
|
2
|
+
from typing import List, Optional, Type
|
|
3
|
+
|
|
4
|
+
from LOGS.Entity.EntityRequestParameter import (
|
|
5
|
+
DefaultSortingOptions,
|
|
6
|
+
EntityRequestParameter,
|
|
7
|
+
)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
@dataclass
|
|
11
|
+
class DataFormatRequestParameter(EntityRequestParameter[DefaultSortingOptions]):
|
|
12
|
+
_orderByType: Type[DefaultSortingOptions] = field(
|
|
13
|
+
default=DefaultSortingOptions, init=False
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
name: Optional[str] = None
|
|
17
|
+
vendors: Optional[List[str]] = None
|
|
18
|
+
vendors: Optional[List[str]] = None
|
|
19
|
+
methods: Optional[List[str]] = None
|
|
20
|
+
formats: Optional[List[str]] = None
|
|
21
|
+
instruments: Optional[List[str]] = None
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
from LOGS.Auxiliary.Decorators import Endpoint
|
|
2
|
+
from LOGS.Entities import DataFormat
|
|
3
|
+
from LOGS.Entities.DataFormatRequestParameter import DataFormatRequestParameter
|
|
4
|
+
from LOGS.Entity.EntityIterator import EntityIterator
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
@Endpoint("data_formats")
|
|
8
|
+
class DataFormats(EntityIterator[DataFormat, DataFormatRequestParameter]):
|
|
9
|
+
"""LOGS connected Formats iterator"""
|
|
10
|
+
|
|
11
|
+
_generatorType = DataFormat
|
|
12
|
+
_parameterType = DataFormatRequestParameter
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
from datetime import datetime
|
|
2
|
+
from enum import Enum
|
|
3
|
+
from typing import TYPE_CHECKING, List, Optional
|
|
4
|
+
|
|
5
|
+
from LOGS.Auxiliary.Decorators import Endpoint
|
|
6
|
+
from LOGS.Auxiliary.Exceptions import EntityAPIException
|
|
7
|
+
from LOGS.Auxiliary.MinimalModelGenerator import MinimalModelGenerator
|
|
8
|
+
from LOGS.Entities.Bridge import Bridge
|
|
9
|
+
from LOGS.Entities.DataFormat import DataFormat
|
|
10
|
+
from LOGS.Entities.DatasetTemplate import DatasetTemplate
|
|
11
|
+
from LOGS.Entities.DataSourceConnectionStatus import DataSourceConnectionStatus
|
|
12
|
+
from LOGS.Entities.DataSourceStatusIterator import DataSourceStatusIterator
|
|
13
|
+
from LOGS.Entities.DataSourceStatusRequestParameter import (
|
|
14
|
+
DataSourceStatusRequestParameter,
|
|
15
|
+
DataSourceStatusSortingOptions,
|
|
16
|
+
)
|
|
17
|
+
from LOGS.Entities.FileExcludePattern import FileExcludePattern
|
|
18
|
+
from LOGS.Entity.EntityMinimalWithStrId import EntityMinimalWithStrId
|
|
19
|
+
from LOGS.Entity.EntityWithIntId import IEntityWithIntId
|
|
20
|
+
from LOGS.Interfaces.IEntryRecord import IEntryRecord
|
|
21
|
+
from LOGS.Interfaces.IModificationRecord import IModificationRecord
|
|
22
|
+
from LOGS.Interfaces.INamedEntity import INamedEntity
|
|
23
|
+
from LOGS.Interfaces.IPermissionedEntity import IGenericPermissionEntity
|
|
24
|
+
from LOGS.Interfaces.IUniqueEntity import IUniqueEntity
|
|
25
|
+
|
|
26
|
+
if TYPE_CHECKING:
|
|
27
|
+
from LOGS.Entities.DataFormatMinimal import DataFormatMinimal
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class DataSourceType(Enum):
|
|
31
|
+
Crawler = "Crawler"
|
|
32
|
+
IconNMR = "IconNMR"
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
class DataSourceUpdateMode(Enum):
|
|
36
|
+
Deactivated = "Deactivated"
|
|
37
|
+
UseHash = "UseHash"
|
|
38
|
+
UsePath = "UsePath"
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
@Endpoint("data_sources")
|
|
42
|
+
class DataSource(
|
|
43
|
+
IEntityWithIntId,
|
|
44
|
+
INamedEntity,
|
|
45
|
+
IUniqueEntity,
|
|
46
|
+
IEntryRecord,
|
|
47
|
+
IModificationRecord,
|
|
48
|
+
IGenericPermissionEntity,
|
|
49
|
+
):
|
|
50
|
+
_type: Optional[DataSourceType] = None
|
|
51
|
+
_enabled: Optional[bool] = None
|
|
52
|
+
_bridge: Optional["Bridge"] = None
|
|
53
|
+
_format: Optional["DataFormatMinimal"] = None
|
|
54
|
+
_customImport: Optional[EntityMinimalWithStrId] = None
|
|
55
|
+
_datasetUpdateMode: Optional[DataSourceUpdateMode] = None
|
|
56
|
+
_parser: Optional[DataFormat] = None
|
|
57
|
+
_directories: Optional[List[str]] = None
|
|
58
|
+
_intervalInSeconds: Optional[int] = None
|
|
59
|
+
_cutoffDate: Optional[datetime] = None
|
|
60
|
+
_fileExcludePatterns: Optional[List[FileExcludePattern]] = None
|
|
61
|
+
_status: Optional[DataSourceConnectionStatus] = None
|
|
62
|
+
_datasetTemplate: Optional[DatasetTemplate] = None
|
|
63
|
+
|
|
64
|
+
def triggerAutoload(self):
|
|
65
|
+
connection, endpoint, id = self._getConnectionData()
|
|
66
|
+
|
|
67
|
+
_, responseError = connection.getEndpoint(endpoint + [id, "trigger_autoload"])
|
|
68
|
+
if responseError:
|
|
69
|
+
raise EntityAPIException(entity=self, responseError=responseError)
|
|
70
|
+
|
|
71
|
+
@property
|
|
72
|
+
def history(self) -> Optional[DataSourceStatusIterator]:
|
|
73
|
+
return DataSourceStatusIterator(
|
|
74
|
+
self._getConnection(),
|
|
75
|
+
DataSourceStatusRequestParameter(
|
|
76
|
+
dataSourceIds=[self.id],
|
|
77
|
+
sortBy=DataSourceStatusSortingOptions.STARTED_ON,
|
|
78
|
+
),
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
@property
|
|
82
|
+
def enabled(self) -> Optional[bool]:
|
|
83
|
+
return self._enabled
|
|
84
|
+
|
|
85
|
+
@enabled.setter
|
|
86
|
+
def enabled(self, value):
|
|
87
|
+
self._enabled = self.checkAndConvertNullable(value, bool, "enabled")
|
|
88
|
+
|
|
89
|
+
@property
|
|
90
|
+
def formats(self) -> Optional[List["DataFormatMinimal"]]:
|
|
91
|
+
return self._formats
|
|
92
|
+
|
|
93
|
+
@formats.setter
|
|
94
|
+
def formats(self, value):
|
|
95
|
+
self._formats = MinimalModelGenerator.MinimalFromList(
|
|
96
|
+
value, "DataFormatMinimal", "formats", connection=self._getConnection()
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
@property
|
|
100
|
+
def directories(self) -> Optional[List[str]]:
|
|
101
|
+
return self._directories
|
|
102
|
+
|
|
103
|
+
@directories.setter
|
|
104
|
+
def directories(self, value):
|
|
105
|
+
self._directories = self.checkListAndConvertNullable(value, str, "directories")
|
|
106
|
+
|
|
107
|
+
@property
|
|
108
|
+
def intervalInSeconds(self) -> Optional[int]:
|
|
109
|
+
return self._intervalInSeconds
|
|
110
|
+
|
|
111
|
+
@intervalInSeconds.setter
|
|
112
|
+
def intervalInSeconds(self, value):
|
|
113
|
+
self._intervalInSeconds = self.checkAndConvertNullable(
|
|
114
|
+
value, int, "intervalInSeconds"
|
|
115
|
+
)
|
|
116
|
+
|
|
117
|
+
@property
|
|
118
|
+
def cutoffDate(self) -> Optional[datetime]:
|
|
119
|
+
return self._cutoffDate
|
|
120
|
+
|
|
121
|
+
@cutoffDate.setter
|
|
122
|
+
def cutoffDate(self, value):
|
|
123
|
+
self._cutoffDate = self.checkAndConvertNullable(value, datetime, "cutoffDate")
|
|
124
|
+
|
|
125
|
+
@property
|
|
126
|
+
def fileExcludePatterns(self) -> Optional[List[FileExcludePattern]]:
|
|
127
|
+
return self._fileExcludePatterns
|
|
128
|
+
|
|
129
|
+
@fileExcludePatterns.setter
|
|
130
|
+
def fileExcludePatterns(self, value):
|
|
131
|
+
self._fileExcludePatterns = self.checkListAndConvertNullable(
|
|
132
|
+
value, FileExcludePattern, "fileExcludePatterns"
|
|
133
|
+
)
|
|
134
|
+
|
|
135
|
+
@property
|
|
136
|
+
def customImportId(self) -> Optional[str]:
|
|
137
|
+
return self._customImportId
|
|
138
|
+
|
|
139
|
+
@customImportId.setter
|
|
140
|
+
def customImportId(self, value):
|
|
141
|
+
print("customImportId", value)
|
|
142
|
+
self._customImportId = self.checkAndConvertNullable(
|
|
143
|
+
value, str, "customImportId"
|
|
144
|
+
)
|
|
145
|
+
|
|
146
|
+
@property
|
|
147
|
+
def status(self) -> Optional[DataSourceConnectionStatus]:
|
|
148
|
+
return self._status
|
|
149
|
+
|
|
150
|
+
@status.setter
|
|
151
|
+
def status(self, value):
|
|
152
|
+
self._status = self.checkAndConvertNullable(
|
|
153
|
+
value, DataSourceConnectionStatus, "status"
|
|
154
|
+
)
|
|
155
|
+
|
|
156
|
+
@property
|
|
157
|
+
def type(self) -> Optional[DataSourceType]:
|
|
158
|
+
return self._type
|
|
159
|
+
|
|
160
|
+
@type.setter
|
|
161
|
+
def type(self, value):
|
|
162
|
+
self._type = self.checkAndConvertNullable(value, DataSourceType, "type")
|
|
163
|
+
|
|
164
|
+
@property
|
|
165
|
+
def bridge(self) -> Optional["Bridge"]:
|
|
166
|
+
return self._bridge
|
|
167
|
+
|
|
168
|
+
@bridge.setter
|
|
169
|
+
def bridge(self, value):
|
|
170
|
+
self._bridge = self.checkAndConvertNullable(value, Bridge, "bridge")
|
|
171
|
+
|
|
172
|
+
@property
|
|
173
|
+
def format(self) -> Optional["DataFormatMinimal"]:
|
|
174
|
+
return self._format
|
|
175
|
+
|
|
176
|
+
@format.setter
|
|
177
|
+
def format(self, value):
|
|
178
|
+
self._format = MinimalModelGenerator.MinimalFromSingle(
|
|
179
|
+
value, "DataFormatMinimal", "format", connection=self._getConnection()
|
|
180
|
+
)
|
|
181
|
+
|
|
182
|
+
@property
|
|
183
|
+
def customImport(self) -> Optional[EntityMinimalWithStrId]:
|
|
184
|
+
return self._customImport
|
|
185
|
+
|
|
186
|
+
@customImport.setter
|
|
187
|
+
def customImport(self, value):
|
|
188
|
+
self._customImport = self.checkAndConvertNullable(
|
|
189
|
+
value, EntityMinimalWithStrId, "customImport"
|
|
190
|
+
)
|
|
191
|
+
|
|
192
|
+
@property
|
|
193
|
+
def datasetUpdateMode(self) -> Optional[DataSourceUpdateMode]:
|
|
194
|
+
return self._datasetUpdateMode
|
|
195
|
+
|
|
196
|
+
@datasetUpdateMode.setter
|
|
197
|
+
def datasetUpdateMode(self, value):
|
|
198
|
+
self._datasetUpdateMode = self.checkAndConvertNullable(
|
|
199
|
+
value, DataSourceUpdateMode, "datasetUpdateMode"
|
|
200
|
+
)
|
|
201
|
+
|
|
202
|
+
@property
|
|
203
|
+
def parser(self) -> Optional[DataFormat]:
|
|
204
|
+
return self._parser
|
|
205
|
+
|
|
206
|
+
@parser.setter
|
|
207
|
+
def parser(self, value):
|
|
208
|
+
self._parser = self.checkAndConvertNullable(value, DataFormat, "parser")
|
|
209
|
+
|
|
210
|
+
@property
|
|
211
|
+
def datasetTemplate(self) -> Optional[DatasetTemplate]:
|
|
212
|
+
return self._datasetTemplate
|
|
213
|
+
|
|
214
|
+
@datasetTemplate.setter
|
|
215
|
+
def datasetTemplate(self, value):
|
|
216
|
+
self._datasetTemplate = self.checkAndConvertNullable(
|
|
217
|
+
value, DatasetTemplate, "datasetTemplate"
|
|
218
|
+
)
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
from datetime import datetime
|
|
2
|
+
from typing import List, Optional
|
|
3
|
+
|
|
4
|
+
from LOGS.Entities.DataSourceStatus import DataSourceStatus
|
|
5
|
+
from LOGS.Entity.SerializableContent import SerializableClass
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class DataSourceConnectionStatus(SerializableClass):
|
|
9
|
+
isConnected: Optional[bool] = None
|
|
10
|
+
nextScheduledDate: Optional[datetime] = None
|
|
11
|
+
lastClientStatus: Optional[DataSourceStatus] = None
|
|
12
|
+
statusHistory: Optional[List[DataSourceStatus]] = None
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
from LOGS.Auxiliary.Decorators import FullModel
|
|
2
|
+
from LOGS.Entities.DataSource import DataSource
|
|
3
|
+
from LOGS.Entity.EntityMinimalWithIntId import EntityMinimalWithIntId
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@FullModel(DataSource)
|
|
7
|
+
class DataSourceMinimal(EntityMinimalWithIntId[DataSource]):
|
|
8
|
+
pass
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
from dataclasses import dataclass, field
|
|
2
|
+
from typing import List, Optional, Type, cast
|
|
3
|
+
|
|
4
|
+
from typing_extensions import Self
|
|
5
|
+
|
|
6
|
+
from LOGS.Entities.BridgeType import BridgeType
|
|
7
|
+
from LOGS.Entities.DataSource import DataSourceType
|
|
8
|
+
from LOGS.Entity.EntityRequestParameter import EntityRequestParameter
|
|
9
|
+
from LOGS.Entity.IGenericEntityOrderBy import (
|
|
10
|
+
IEntryRecordSortingOptions,
|
|
11
|
+
IGenericEntitySortingOptions,
|
|
12
|
+
IModificationRecordSortingOptions,
|
|
13
|
+
INamedEntitySortingOptions,
|
|
14
|
+
)
|
|
15
|
+
from LOGS.Interfaces.IEntryRecord import IEntryRecordRequest
|
|
16
|
+
from LOGS.Interfaces.IModificationRecord import IModificationRecordRequest
|
|
17
|
+
from LOGS.Interfaces.INamedEntity import INamedEntityRequest
|
|
18
|
+
from LOGS.Interfaces.IPermissionedEntity import IPermissionedEntityRequest
|
|
19
|
+
from LOGS.Interfaces.IUniqueEntity import IUniqueEntityRequest
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class DataSourceSortingOptions(
|
|
23
|
+
IGenericEntitySortingOptions,
|
|
24
|
+
INamedEntitySortingOptions,
|
|
25
|
+
IEntryRecordSortingOptions,
|
|
26
|
+
IModificationRecordSortingOptions,
|
|
27
|
+
):
|
|
28
|
+
TYPE: Self = cast(Self, "TYPE")
|
|
29
|
+
BRIDGE: Self = cast(Self, "BRIDGE")
|
|
30
|
+
BRIDGE_TYPE: Self = cast(Self, "BRIDGE_TYPE")
|
|
31
|
+
INTERVAL: Self = cast(Self, "INTERVAL")
|
|
32
|
+
ENABLED: Self = cast(Self, "ENABLED")
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
@dataclass
|
|
36
|
+
class DataSourceRequestParameter(
|
|
37
|
+
EntityRequestParameter[DataSourceSortingOptions],
|
|
38
|
+
INamedEntityRequest,
|
|
39
|
+
IUniqueEntityRequest,
|
|
40
|
+
IEntryRecordRequest,
|
|
41
|
+
IModificationRecordRequest,
|
|
42
|
+
IPermissionedEntityRequest,
|
|
43
|
+
):
|
|
44
|
+
_orderByType: Type[DataSourceSortingOptions] = field(
|
|
45
|
+
default=DataSourceSortingOptions, init=False
|
|
46
|
+
)
|
|
47
|
+
|
|
48
|
+
enabled: Optional[bool] = None
|
|
49
|
+
bridgeIds: Optional[List[int]] = None
|
|
50
|
+
bridgeTypes: Optional[List[BridgeType]] = None
|
|
51
|
+
datasetIds: Optional[List[int]] = None
|
|
52
|
+
formatIds: Optional[List[str]] = None
|
|
53
|
+
customImportIds: Optional[List[str]] = None
|
|
54
|
+
directories: Optional[List[str]] = None
|
|
55
|
+
sourceHostnames: Optional[List[str]] = None
|
|
56
|
+
sourceIpAddresses: Optional[List[str]] = None
|
|
57
|
+
types: Optional[List[DataSourceType]] = None
|