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.
Files changed (251) hide show
  1. LOGS/Auxiliary/CheckClassName.py +1075 -0
  2. LOGS/Auxiliary/Constants.py +99 -0
  3. LOGS/Auxiliary/CustomEntityClassGenerator.py +254 -0
  4. LOGS/Auxiliary/CustomFieldClassGenerator.py +115 -0
  5. LOGS/Auxiliary/CustomFieldValueTypeChecker.py +168 -0
  6. LOGS/Auxiliary/CustomSectionClassGenerator.py +113 -0
  7. LOGS/Auxiliary/CustomTypeClassGenerator.py +147 -0
  8. LOGS/Auxiliary/DateTimeConverter.py +66 -0
  9. LOGS/Auxiliary/Decorators.py +109 -0
  10. LOGS/Auxiliary/Exceptions.py +341 -0
  11. LOGS/Auxiliary/LOGSErrorResponse.py +89 -0
  12. LOGS/Auxiliary/MinimalModelGenerator.py +236 -0
  13. LOGS/Auxiliary/ParameterHelper.py +56 -0
  14. LOGS/Auxiliary/ReplaceMessage.py +13 -0
  15. LOGS/Auxiliary/Tools.py +432 -0
  16. LOGS/Auxiliary/__init__.py +15 -0
  17. LOGS/Converter/Conversion.py +248 -0
  18. LOGS/Converter/Converter.py +96 -0
  19. LOGS/Converter/ConverterParameter.py +88 -0
  20. LOGS/Converter/DateTimeRange.py +58 -0
  21. LOGS/Converter/ExportParameters.py +89 -0
  22. LOGS/Converter/__init__.py +13 -0
  23. LOGS/Entities/Attachment.py +84 -0
  24. LOGS/Entities/AttachmentMinimal.py +8 -0
  25. LOGS/Entities/AttachmentRequestParameter.py +42 -0
  26. LOGS/Entities/Attachments.py +53 -0
  27. LOGS/Entities/AutoloadFileInfo.py +12 -0
  28. LOGS/Entities/AutoloadStatusError.py +7 -0
  29. LOGS/Entities/AxisNaming.py +33 -0
  30. LOGS/Entities/AxisZoom.py +33 -0
  31. LOGS/Entities/Bridge.py +165 -0
  32. LOGS/Entities/BridgeClientInfo.py +93 -0
  33. LOGS/Entities/BridgeMinimal.py +8 -0
  34. LOGS/Entities/BridgeRequestParameter.py +49 -0
  35. LOGS/Entities/BridgeType.py +7 -0
  36. LOGS/Entities/Bridges.py +12 -0
  37. LOGS/Entities/CustomField.py +243 -0
  38. LOGS/Entities/CustomFieldMinimal.py +8 -0
  39. LOGS/Entities/CustomFieldModels.py +111 -0
  40. LOGS/Entities/CustomFieldRequestParameter.py +69 -0
  41. LOGS/Entities/CustomFieldSearchQuery.py +40 -0
  42. LOGS/Entities/CustomFields.py +12 -0
  43. LOGS/Entities/CustomType.py +212 -0
  44. LOGS/Entities/CustomTypeMinimal.py +8 -0
  45. LOGS/Entities/CustomTypeRequestParameter.py +60 -0
  46. LOGS/Entities/CustomTypeSection.py +63 -0
  47. LOGS/Entities/CustomTypes.py +12 -0
  48. LOGS/Entities/DataFormat.py +97 -0
  49. LOGS/Entities/DataFormatInstrument.py +18 -0
  50. LOGS/Entities/DataFormatInstrumentMinimal.py +8 -0
  51. LOGS/Entities/DataFormatInstrumentRequestParameter.py +17 -0
  52. LOGS/Entities/DataFormatInstruments.py +16 -0
  53. LOGS/Entities/DataFormatMinimal.py +18 -0
  54. LOGS/Entities/DataFormatRequestParameter.py +21 -0
  55. LOGS/Entities/DataFormats.py +12 -0
  56. LOGS/Entities/DataSource.py +218 -0
  57. LOGS/Entities/DataSourceConnectionStatus.py +12 -0
  58. LOGS/Entities/DataSourceMinimal.py +8 -0
  59. LOGS/Entities/DataSourceRequestParameter.py +57 -0
  60. LOGS/Entities/DataSourceStatus.py +108 -0
  61. LOGS/Entities/DataSourceStatusIterator.py +16 -0
  62. LOGS/Entities/DataSourceStatusRequestParameter.py +31 -0
  63. LOGS/Entities/DataSources.py +12 -0
  64. LOGS/Entities/Dataset.py +439 -0
  65. LOGS/Entities/DatasetBase.py +196 -0
  66. LOGS/Entities/DatasetCreator.py +148 -0
  67. LOGS/Entities/DatasetInfo.py +147 -0
  68. LOGS/Entities/DatasetMatchTypes.py +157 -0
  69. LOGS/Entities/DatasetMatching.py +196 -0
  70. LOGS/Entities/DatasetMinimal.py +8 -0
  71. LOGS/Entities/DatasetModels.py +33 -0
  72. LOGS/Entities/DatasetRequestParameter.py +92 -0
  73. LOGS/Entities/DatasetTemplate.py +23 -0
  74. LOGS/Entities/DatasetUploadParameter.py +14 -0
  75. LOGS/Entities/Datasets.py +142 -0
  76. LOGS/Entities/Datatrack.py +179 -0
  77. LOGS/Entities/DatatrackFormattedTable.py +25 -0
  78. LOGS/Entities/DatatrackGeneric.py +34 -0
  79. LOGS/Entities/DatatrackImage.py +25 -0
  80. LOGS/Entities/DatatrackNumericArray.py +30 -0
  81. LOGS/Entities/DatatrackNumericMatrix.py +98 -0
  82. LOGS/Entities/Entities.py +71 -0
  83. LOGS/Entities/EntitiesRequestParameter.py +18 -0
  84. LOGS/Entities/EntityOriginWriteModelWithId.py +15 -0
  85. LOGS/Entities/FileEntry.py +138 -0
  86. LOGS/Entities/FileExcludePattern.py +8 -0
  87. LOGS/Entities/FormatMetaData.py +56 -0
  88. LOGS/Entities/FormattedTable/DatatypeFormattedTable.py +135 -0
  89. LOGS/Entities/FormattedTable/DatatypeFormattedTableCell.py +108 -0
  90. LOGS/Entities/FormattedTable/DatatypeFormattedTableSettings.py +11 -0
  91. LOGS/Entities/FormattedTable/__init__.py +9 -0
  92. LOGS/Entities/HierarchyLeaf.py +15 -0
  93. LOGS/Entities/HierarchyNode.py +40 -0
  94. LOGS/Entities/ILiteraryTypedEntity.py +19 -0
  95. LOGS/Entities/InventoryItem.py +102 -0
  96. LOGS/Entities/InventoryItemMinimal.py +25 -0
  97. LOGS/Entities/InventoryItemRequestParameter.py +58 -0
  98. LOGS/Entities/InventoryItems.py +12 -0
  99. LOGS/Entities/LabNotebook.py +33 -0
  100. LOGS/Entities/LabNotebookEntries.py +16 -0
  101. LOGS/Entities/LabNotebookEntry.py +106 -0
  102. LOGS/Entities/LabNotebookEntryContent/BasicAttribute.py +15 -0
  103. LOGS/Entities/LabNotebookEntryContent/EntityAttribute.py +85 -0
  104. LOGS/Entities/LabNotebookEntryContent/EntryContentBlockquote.py +13 -0
  105. LOGS/Entities/LabNotebookEntryContent/EntryContentBulletList.py +17 -0
  106. LOGS/Entities/LabNotebookEntryContent/EntryContentCallout.py +40 -0
  107. LOGS/Entities/LabNotebookEntryContent/EntryContentContentPlaceholderNode.py +31 -0
  108. LOGS/Entities/LabNotebookEntryContent/EntryContentConverter.py +207 -0
  109. LOGS/Entities/LabNotebookEntryContent/EntryContentDocument.py +8 -0
  110. LOGS/Entities/LabNotebookEntryContent/EntryContentEntity.py +13 -0
  111. LOGS/Entities/LabNotebookEntryContent/EntryContentEntityMention.py +31 -0
  112. LOGS/Entities/LabNotebookEntryContent/EntryContentHeading.py +33 -0
  113. LOGS/Entities/LabNotebookEntryContent/EntryContentHorizontalRule.py +12 -0
  114. LOGS/Entities/LabNotebookEntryContent/EntryContentItem.py +37 -0
  115. LOGS/Entities/LabNotebookEntryContent/EntryContentListItem.py +49 -0
  116. LOGS/Entities/LabNotebookEntryContent/EntryContentOrderedList.py +31 -0
  117. LOGS/Entities/LabNotebookEntryContent/EntryContentParagraph.py +13 -0
  118. LOGS/Entities/LabNotebookEntryContent/EntryContentTable.py +17 -0
  119. LOGS/Entities/LabNotebookEntryContent/EntryContentTableCell.py +40 -0
  120. LOGS/Entities/LabNotebookEntryContent/EntryContentTableRow.py +8 -0
  121. LOGS/Entities/LabNotebookEntryContent/EntryContentTaskList.py +17 -0
  122. LOGS/Entities/LabNotebookEntryContent/EntryContentTaskListItem.py +31 -0
  123. LOGS/Entities/LabNotebookEntryContent/EntryContentText.py +33 -0
  124. LOGS/Entities/LabNotebookEntryContent/IEntryContentWithAttribute.py +23 -0
  125. LOGS/Entities/LabNotebookEntryContent/IEntryContentWithContent.py +38 -0
  126. LOGS/Entities/LabNotebookEntryContent/IEntryContentWithTextAttribute.py +16 -0
  127. LOGS/Entities/LabNotebookEntryContent/TextAttribute.py +46 -0
  128. LOGS/Entities/LabNotebookEntryContent/TextMarkAtributes.py +64 -0
  129. LOGS/Entities/LabNotebookEntryContent/TextMarkConverter.py +45 -0
  130. LOGS/Entities/LabNotebookEntryContent/TextMarks.py +71 -0
  131. LOGS/Entities/LabNotebookEntryContent/__init__.py +34 -0
  132. LOGS/Entities/LabNotebookEntryMinimal.py +8 -0
  133. LOGS/Entities/LabNotebookEntryRequestParameter.py +59 -0
  134. LOGS/Entities/LabNotebookExperiment.py +58 -0
  135. LOGS/Entities/LabNotebookExperimentMinimal.py +8 -0
  136. LOGS/Entities/LabNotebookExperimentRequestParameter.py +52 -0
  137. LOGS/Entities/LabNotebookExperiments.py +16 -0
  138. LOGS/Entities/LabNotebookMinimal.py +8 -0
  139. LOGS/Entities/LabNotebookModels.py +14 -0
  140. LOGS/Entities/LabNotebookRequestParameter.py +42 -0
  141. LOGS/Entities/LabNotebookTemplate.py +42 -0
  142. LOGS/Entities/LabNotebookTemplateMinimal.py +8 -0
  143. LOGS/Entities/LabNotebookTemplateRequestParameter.py +38 -0
  144. LOGS/Entities/LabNotebookTemplates.py +16 -0
  145. LOGS/Entities/LabNotebooks.py +12 -0
  146. LOGS/Entities/Method.py +66 -0
  147. LOGS/Entities/MethodMinimal.py +8 -0
  148. LOGS/Entities/MethodRequestParameter.py +16 -0
  149. LOGS/Entities/Methods.py +12 -0
  150. LOGS/Entities/Origin.py +53 -0
  151. LOGS/Entities/OriginMinimal.py +8 -0
  152. LOGS/Entities/OriginRequestParameter.py +28 -0
  153. LOGS/Entities/Origins.py +12 -0
  154. LOGS/Entities/ParserLog.py +49 -0
  155. LOGS/Entities/Permission.py +9 -0
  156. LOGS/Entities/Person.py +145 -0
  157. LOGS/Entities/PersonCategory.py +12 -0
  158. LOGS/Entities/PersonMinimal.py +8 -0
  159. LOGS/Entities/PersonRequestParameter.py +58 -0
  160. LOGS/Entities/Persons.py +12 -0
  161. LOGS/Entities/Project.py +52 -0
  162. LOGS/Entities/ProjectMinimal.py +8 -0
  163. LOGS/Entities/ProjectPersonPermission.py +102 -0
  164. LOGS/Entities/ProjectRequestParameter.py +58 -0
  165. LOGS/Entities/Projects.py +12 -0
  166. LOGS/Entities/Role.py +94 -0
  167. LOGS/Entities/RoleMinimal.py +8 -0
  168. LOGS/Entities/RoleRequestParameter.py +40 -0
  169. LOGS/Entities/Roles.py +12 -0
  170. LOGS/Entities/RunState.py +9 -0
  171. LOGS/Entities/Sample.py +53 -0
  172. LOGS/Entities/SampleMinimal.py +8 -0
  173. LOGS/Entities/SampleRequestParameter.py +54 -0
  174. LOGS/Entities/Samples.py +12 -0
  175. LOGS/Entities/SharedContent.py +87 -0
  176. LOGS/Entities/SharedContentMinimal.py +8 -0
  177. LOGS/Entities/SharedContentRequestParameter.py +38 -0
  178. LOGS/Entities/SharedContents.py +12 -0
  179. LOGS/Entities/Signature.py +60 -0
  180. LOGS/Entities/Track.py +93 -0
  181. LOGS/Entities/TrackData.py +20 -0
  182. LOGS/Entities/TrackImage.py +21 -0
  183. LOGS/Entities/TrackImageData.py +20 -0
  184. LOGS/Entities/TrackMatrix.py +28 -0
  185. LOGS/Entities/TrackMatrixData.py +22 -0
  186. LOGS/Entities/TrackSettings.py +55 -0
  187. LOGS/Entities/TrackTable.py +21 -0
  188. LOGS/Entities/TrackTableData.py +22 -0
  189. LOGS/Entities/TrackXY.py +40 -0
  190. LOGS/Entities/TrackXYComplex.py +51 -0
  191. LOGS/Entities/TrackXYComplexData.py +50 -0
  192. LOGS/Entities/TrackXYData.py +31 -0
  193. LOGS/Entities/Vendor.py +40 -0
  194. LOGS/Entities/VendorMinimal.py +8 -0
  195. LOGS/Entities/VendorRequestParameter.py +17 -0
  196. LOGS/Entities/Vendors.py +12 -0
  197. LOGS/Entities/__init__.py +118 -0
  198. LOGS/Entity/ConnectedEntity.py +170 -0
  199. LOGS/Entity/Entity.py +203 -0
  200. LOGS/Entity/EntityConnector.py +70 -0
  201. LOGS/Entity/EntityIterator.py +263 -0
  202. LOGS/Entity/EntityMinimal.py +141 -0
  203. LOGS/Entity/EntityMinimalWithIntId.py +36 -0
  204. LOGS/Entity/EntityMinimalWithStrId.py +36 -0
  205. LOGS/Entity/EntityMinimalWithType.py +47 -0
  206. LOGS/Entity/EntityRequestParameter.py +104 -0
  207. LOGS/Entity/EntitySortBy.py +69 -0
  208. LOGS/Entity/EntityWithIntId.py +26 -0
  209. LOGS/Entity/EntityWithStrId.py +26 -0
  210. LOGS/Entity/IGenericEntityOrderBy.py +55 -0
  211. LOGS/Entity/IdIterator.py +207 -0
  212. LOGS/Entity/SerializableContent.py +834 -0
  213. LOGS/Entity/__init__.py +23 -0
  214. LOGS/Interfaces/ICustomFieldValue.py +92 -0
  215. LOGS/Interfaces/ICustomSectionValue.py +161 -0
  216. LOGS/Interfaces/ICustomTypeValue.py +152 -0
  217. LOGS/Interfaces/ICustomValue.py +28 -0
  218. LOGS/Interfaces/IEntityInterface.py +7 -0
  219. LOGS/Interfaces/IEntryRecord.py +57 -0
  220. LOGS/Interfaces/IHierarchicalEntity.py +41 -0
  221. LOGS/Interfaces/IHierarchyType.py +63 -0
  222. LOGS/Interfaces/ILockableEntity.py +52 -0
  223. LOGS/Interfaces/IModificationRecord.py +56 -0
  224. LOGS/Interfaces/INamedEntity.py +25 -0
  225. LOGS/Interfaces/IOwnedEntity.py +27 -0
  226. LOGS/Interfaces/IPaginationRequest.py +11 -0
  227. LOGS/Interfaces/IPermissionedEntity.py +72 -0
  228. LOGS/Interfaces/IProjectBased.py +27 -0
  229. LOGS/Interfaces/ISessionedEntity.py +59 -0
  230. LOGS/Interfaces/ISignableEntity.py +49 -0
  231. LOGS/Interfaces/ISoftDeletable.py +28 -0
  232. LOGS/Interfaces/ITypedEntity.py +129 -0
  233. LOGS/Interfaces/IUniqueEntity.py +61 -0
  234. LOGS/Interfaces/IVersionedEntity.py +39 -0
  235. LOGS/Interfaces/__init__.py +7 -0
  236. LOGS/LOGS.py +1436 -0
  237. LOGS/LOGSConnection.py +647 -0
  238. LOGS/LOGSOptions.py +11 -0
  239. LOGS/Parameters/Color.py +92 -0
  240. LOGS/Parameters/ParameterBase.py +55 -0
  241. LOGS/Parameters/ParameterConverter.py +24 -0
  242. LOGS/Parameters/ParameterElement.py +99 -0
  243. LOGS/Parameters/ParameterList.py +52 -0
  244. LOGS/Parameters/ParameterTable.py +64 -0
  245. LOGS/Parameters/__init__.py +13 -0
  246. LOGS/ServerMetaData.py +120 -0
  247. LOGS/__init__.py +12 -0
  248. logs_py-4.0.7.dist-info/METADATA +51 -0
  249. logs_py-4.0.7.dist-info/RECORD +251 -0
  250. logs_py-4.0.7.dist-info/WHEEL +5 -0
  251. logs_py-4.0.7.dist-info/top_level.txt +1 -0
@@ -0,0 +1,42 @@
1
+ from typing import Any, Dict, Optional
2
+
3
+ from LOGS.Auxiliary.Decorators import Endpoint
4
+ from LOGS.Entity.EntityWithIntId import IEntityWithIntId
5
+ from LOGS.Interfaces.ILockableEntity import ILockableEntity
6
+ from LOGS.Interfaces.INamedEntity import INamedEntity
7
+ from LOGS.Interfaces.IPermissionedEntity import IGenericPermissionEntity
8
+ from LOGS.Interfaces.IProjectBased import IProjectBased
9
+ from LOGS.Interfaces.ISessionedEntity import ISessionedEntity
10
+ from LOGS.Interfaces.IUniqueEntity import IUniqueEntity
11
+ from LOGS.Interfaces.IVersionedEntity import IVersionedEntity
12
+
13
+
14
+ @Endpoint("lab_notebook_templates")
15
+ class LabNotebookTemplate(
16
+ IEntityWithIntId,
17
+ IUniqueEntity,
18
+ INamedEntity,
19
+ IVersionedEntity,
20
+ IProjectBased,
21
+ IGenericPermissionEntity,
22
+ ISessionedEntity,
23
+ ILockableEntity,
24
+ ):
25
+ _description: Optional[str] = None
26
+ _content: Optional[Dict[str, Any]] = None
27
+
28
+ @property
29
+ def description(self) -> Optional[str]:
30
+ return self._description
31
+
32
+ @description.setter
33
+ def description(self, value: str):
34
+ self._description = self.checkAndConvertNullable(value, str, "description")
35
+
36
+ @property
37
+ def content(self) -> Optional[Dict[str, Any]]:
38
+ return self._content
39
+
40
+ @content.setter
41
+ def content(self, value: Dict[str, Any]):
42
+ self._content = self.checkAndConvertNullable(value, dict, "content")
@@ -0,0 +1,8 @@
1
+ from LOGS.Auxiliary.Decorators import FullModel
2
+ from LOGS.Entities.LabNotebookTemplate import LabNotebookTemplate
3
+ from LOGS.Entity.EntityMinimalWithIntId import EntityMinimalWithIntId
4
+
5
+
6
+ @FullModel(LabNotebookTemplate)
7
+ class LabNotebookTemplateMinimal(EntityMinimalWithIntId[LabNotebookTemplate]):
8
+ pass
@@ -0,0 +1,38 @@
1
+ from dataclasses import dataclass, field
2
+ from typing import Type
3
+
4
+ from LOGS.Entity.EntityRequestParameter import EntityRequestParameter
5
+ from LOGS.Entity.IGenericEntityOrderBy import (
6
+ IGenericEntitySortingOptions,
7
+ IModificationRecordSortingOptions,
8
+ INamedEntitySortingOptions,
9
+ )
10
+ from LOGS.Interfaces.ILockableEntity import ILockableEntityRequest
11
+ from LOGS.Interfaces.INamedEntity import INamedEntityRequest
12
+ from LOGS.Interfaces.IPermissionedEntity import IPermissionedEntityRequest
13
+ from LOGS.Interfaces.IProjectBased import IProjectBasedRequest
14
+ from LOGS.Interfaces.IUniqueEntity import IUniqueEntityRequest
15
+ from LOGS.Interfaces.IVersionedEntity import IVersionedEntityRequest
16
+
17
+
18
+ class LabNotebookTemplateSortingOptions(
19
+ IGenericEntitySortingOptions,
20
+ INamedEntitySortingOptions,
21
+ IModificationRecordSortingOptions,
22
+ ):
23
+ pass
24
+
25
+
26
+ @dataclass
27
+ class LabNotebookTemplateRequestParameter(
28
+ EntityRequestParameter[LabNotebookTemplateSortingOptions],
29
+ IPermissionedEntityRequest,
30
+ IUniqueEntityRequest,
31
+ INamedEntityRequest,
32
+ IProjectBasedRequest,
33
+ IVersionedEntityRequest[int],
34
+ ILockableEntityRequest,
35
+ ):
36
+ _orderByType: Type[LabNotebookTemplateSortingOptions] = field(
37
+ default=LabNotebookTemplateSortingOptions, init=False
38
+ )
@@ -0,0 +1,16 @@
1
+ from LOGS.Auxiliary.Decorators import Endpoint
2
+ from LOGS.Entities.LabNotebookTemplate import LabNotebookTemplate
3
+ from LOGS.Entities.LabNotebookTemplateRequestParameter import (
4
+ LabNotebookTemplateRequestParameter,
5
+ )
6
+ from LOGS.Entity.EntityIterator import EntityIterator
7
+
8
+
9
+ @Endpoint("lab_notebook_templates")
10
+ class LabNotebookTemplates(
11
+ EntityIterator[LabNotebookTemplate, LabNotebookTemplateRequestParameter]
12
+ ):
13
+ """LOGS connected LabNotebookTemplate iterator"""
14
+
15
+ _generatorType = LabNotebookTemplate
16
+ _parameterType = LabNotebookTemplateRequestParameter
@@ -0,0 +1,12 @@
1
+ from LOGS.Auxiliary.Decorators import Endpoint
2
+ from LOGS.Entities.LabNotebook import LabNotebook
3
+ from LOGS.Entities.LabNotebookRequestParameter import LabNotebookRequestParameter
4
+ from LOGS.Entity.EntityIterator import EntityIterator
5
+
6
+
7
+ @Endpoint("lab_notebooks")
8
+ class LabNotebooks(EntityIterator[LabNotebook, LabNotebookRequestParameter]):
9
+ """LOGS connected LabNotebook iterator"""
10
+
11
+ _generatorType = LabNotebook
12
+ _parameterType = LabNotebookRequestParameter
@@ -0,0 +1,66 @@
1
+ from typing import TYPE_CHECKING, List, Optional
2
+
3
+ from LOGS.Auxiliary.Decorators import Endpoint
4
+ from LOGS.Auxiliary.MinimalModelGenerator import MinimalModelGenerator
5
+ from LOGS.Entity.EntityWithStrId import EntityWithStrId
6
+ from LOGS.Interfaces.INamedEntity import INamedEntity
7
+ from LOGS.Interfaces.IPermissionedEntity import IGenericPermissionEntity
8
+
9
+ if TYPE_CHECKING:
10
+ from LOGS.Entities.DataFormatMinimal import DataFormatMinimal
11
+ from LOGS.Entities.MethodMinimal import MethodMinimal
12
+
13
+
14
+ @Endpoint("methods")
15
+ class Method(EntityWithStrId, INamedEntity, IGenericPermissionEntity):
16
+ _fullName: Optional[str] = None
17
+ _description: Optional[str] = None
18
+ _dataFormats: Optional[List["DataFormatMinimal"]] = None
19
+ _childMethods: Optional[List["MethodMinimal"]] = None
20
+ _parentMethod: Optional["MethodMinimal"] = None
21
+
22
+ @property
23
+ def fullName(self) -> Optional[str]:
24
+ return self._fullName
25
+
26
+ @fullName.setter
27
+ def fullName(self, value):
28
+ self._fullName = self.checkAndConvertNullable(value, str, "fullName")
29
+
30
+ @property
31
+ def description(self) -> Optional[str]:
32
+ return self._description
33
+
34
+ @description.setter
35
+ def description(self, value):
36
+ self._description = self.checkAndConvertNullable(value, str, "description")
37
+
38
+ @property
39
+ def dataFormats(self) -> Optional[List["DataFormatMinimal"]]:
40
+ return self._dataFormats
41
+
42
+ @dataFormats.setter
43
+ def dataFormats(self, value):
44
+ self._dataFormats = MinimalModelGenerator.MinimalFromList(
45
+ value, "DataFormatMinimal", "dataFormats", connection=self._getConnection()
46
+ )
47
+
48
+ @property
49
+ def childMethods(self) -> Optional[List["MethodMinimal"]]:
50
+ return self._childMethods
51
+
52
+ @childMethods.setter
53
+ def childMethods(self, value):
54
+ self._childMethods = MinimalModelGenerator.MinimalFromList(
55
+ value, "MethodMinimal", "childMethods", self._getConnection()
56
+ )
57
+
58
+ @property
59
+ def parentMethod(self) -> Optional["MethodMinimal"]:
60
+ return self._parentMethod
61
+
62
+ @parentMethod.setter
63
+ def parentMethod(self, value):
64
+ self._parentMethod = MinimalModelGenerator.MinimalFromSingle(
65
+ value, "MethodMinimal", "parentMethod", self._getConnection()
66
+ )
@@ -0,0 +1,8 @@
1
+ from LOGS.Auxiliary.Decorators import FullModel
2
+ from LOGS.Entities.Method import Method
3
+ from LOGS.Entity.EntityMinimalWithStrId import EntityMinimalWithStrId
4
+
5
+
6
+ @FullModel(Method)
7
+ class MethodMinimal(EntityMinimalWithStrId[Method]):
8
+ pass
@@ -0,0 +1,16 @@
1
+ from dataclasses import dataclass, field
2
+ from typing import Optional, Type
3
+
4
+ from LOGS.Entity.EntityRequestParameter import (
5
+ DefaultSortingOptions,
6
+ EntityRequestParameter,
7
+ )
8
+
9
+
10
+ @dataclass
11
+ class MethodRequestParameter(EntityRequestParameter[DefaultSortingOptions]):
12
+ _orderByType: Type[DefaultSortingOptions] = field(
13
+ default=DefaultSortingOptions, init=False
14
+ )
15
+
16
+ name: Optional[str] = None
@@ -0,0 +1,12 @@
1
+ from LOGS.Auxiliary.Decorators import Endpoint
2
+ from LOGS.Entities.Method import Method
3
+ from LOGS.Entities.MethodRequestParameter import MethodRequestParameter
4
+ from LOGS.Entity.EntityIterator import EntityIterator
5
+
6
+
7
+ @Endpoint("methods")
8
+ class Methods(EntityIterator[Method, MethodRequestParameter]):
9
+ """LOGS connected class FormatMethod iterator"""
10
+
11
+ _generatorType = Method
12
+ _parameterType = MethodRequestParameter
@@ -0,0 +1,53 @@
1
+ from typing import Optional
2
+ from uuid import UUID
3
+
4
+ from LOGS.Auxiliary.Decorators import Endpoint
5
+ from LOGS.Entity.EntityWithIntId import IEntityWithIntId
6
+ from LOGS.Interfaces.IEntryRecord import IEntryRecord
7
+ from LOGS.Interfaces.IModificationRecord import IModificationRecord
8
+ from LOGS.Interfaces.INamedEntity import INamedEntity
9
+ from LOGS.Interfaces.IPermissionedEntity import IGenericPermissionEntity
10
+ from LOGS.LOGSConnection import LOGSConnection
11
+
12
+
13
+ @Endpoint("origins")
14
+ class Origin(
15
+ IEntityWithIntId,
16
+ INamedEntity,
17
+ IModificationRecord,
18
+ IEntryRecord,
19
+ IGenericPermissionEntity,
20
+ ):
21
+ _url: Optional[str] = None
22
+ _uid: Optional[UUID] = None
23
+
24
+ def __init__(
25
+ self,
26
+ ref=None,
27
+ id: Optional[int] = None,
28
+ connection: Optional[LOGSConnection] = None,
29
+ name: Optional[str] = None,
30
+ url: Optional[str] = None,
31
+ uid: Optional[UUID] = None,
32
+ ):
33
+ self._name = name
34
+ self._url = url
35
+ self._uid = uid
36
+
37
+ super().__init__(ref=ref, id=id, connection=connection)
38
+
39
+ @property
40
+ def url(self) -> Optional[str]:
41
+ return self._url
42
+
43
+ @url.setter
44
+ def url(self, value):
45
+ self._url = self.checkAndConvertNullable(value, str, "url")
46
+
47
+ @property
48
+ def uid(self) -> Optional[UUID]:
49
+ return self._uid
50
+
51
+ @uid.setter
52
+ def uid(self, value):
53
+ self._uid = self.checkAndConvertNullable(value, UUID, "uid")
@@ -0,0 +1,8 @@
1
+ from LOGS.Auxiliary.Decorators import FullModel
2
+ from LOGS.Entities.Origin import Origin
3
+ from LOGS.Entity.EntityMinimalWithIntId import EntityMinimalWithIntId
4
+
5
+
6
+ @FullModel(Origin)
7
+ class OriginMinimal(EntityMinimalWithIntId[Origin]):
8
+ pass
@@ -0,0 +1,28 @@
1
+ from dataclasses import dataclass, field
2
+ from typing import List, Optional, Sequence, Type, Union
3
+ from uuid import UUID
4
+
5
+ from LOGS.Entity.EntityRequestParameter import (
6
+ DefaultSortingOptions,
7
+ EntityRequestParameter,
8
+ )
9
+ from LOGS.Interfaces.IEntryRecord import IEntryRecordRequest
10
+ from LOGS.Interfaces.IModificationRecord import IModificationRecordRequest
11
+ from LOGS.Interfaces.INamedEntity import INamedEntityRequest
12
+ from LOGS.Interfaces.IPermissionedEntity import IPermissionedEntityRequest
13
+
14
+
15
+ @dataclass
16
+ class OriginRequestParameter(
17
+ EntityRequestParameter[DefaultSortingOptions],
18
+ INamedEntityRequest,
19
+ IModificationRecordRequest,
20
+ IEntryRecordRequest,
21
+ IPermissionedEntityRequest,
22
+ ):
23
+ _orderByType: Type[DefaultSortingOptions] = field(
24
+ default=DefaultSortingOptions, init=False
25
+ )
26
+
27
+ urls: Optional[List[str]] = None
28
+ uids: Optional[Sequence[Union[UUID, str]]] = None
@@ -0,0 +1,12 @@
1
+ from LOGS.Auxiliary.Decorators import Endpoint
2
+ from LOGS.Entities.Origin import Origin
3
+ from LOGS.Entities.OriginRequestParameter import OriginRequestParameter
4
+ from LOGS.Entity.EntityIterator import EntityIterator
5
+
6
+
7
+ @Endpoint("origins")
8
+ class Origins(EntityIterator[Origin, OriginRequestParameter]):
9
+ """LOGS connected Person iterator"""
10
+
11
+ _generatorType = Origin
12
+ _parameterType = OriginRequestParameter
@@ -0,0 +1,49 @@
1
+ from typing import List, Optional
2
+
3
+ from LOGS.Entity.SerializableContent import SerializableContent
4
+
5
+
6
+ class ParserLog(SerializableContent):
7
+ _type: Optional[str] = None
8
+ _message: Optional[str] = None
9
+ _description: Optional[List[str]] = None
10
+ _code: Optional[int] = None
11
+
12
+ def __init__(self, ref=None):
13
+ super().__init__(ref=ref)
14
+
15
+ def __str__(self):
16
+ error = f" ({self.code})" if self.code else ""
17
+ return f"{type(self).__name__}.{self.type}{error}: {self.message}"
18
+
19
+ @property
20
+ def type(self) -> Optional[str]:
21
+ return self._type
22
+
23
+ @type.setter
24
+ def type(self, value):
25
+ self._type = self.checkAndConvertNullable(value, str, "type")
26
+
27
+ @property
28
+ def message(self) -> Optional[str]:
29
+ return self._message
30
+
31
+ @message.setter
32
+ def message(self, value):
33
+ self._message = self.checkAndConvertNullable(value, str, "message")
34
+
35
+ @property
36
+ def description(self) -> Optional[List[str]]:
37
+ return self._description
38
+
39
+ @description.setter
40
+ def description(self, value):
41
+ self._description = self.checkListAndConvertNullable(value, str, "description")
42
+
43
+ @property
44
+ def code(self) -> Optional[int]:
45
+ return self._code
46
+
47
+ @code.setter
48
+ def code(self, value):
49
+ self._code = self.checkAndConvertNullable(value, int, "code")
@@ -0,0 +1,9 @@
1
+ from typing import Optional
2
+
3
+ from LOGS.Entity.SerializableContent import SerializableClass
4
+
5
+
6
+ class Permission(SerializableClass):
7
+ name: Optional[str] = None
8
+ shortDescription: Optional[str] = None
9
+ longDescription: Optional[str] = None
@@ -0,0 +1,145 @@
1
+ from enum import Enum
2
+ from typing import List, Optional
3
+
4
+ from LOGS.Auxiliary.Decorators import Endpoint
5
+ from LOGS.Entities.ProjectPersonPermission import ProjectPersonPermission
6
+ from LOGS.Entities.Role import Role
7
+ from LOGS.Entity.EntityWithIntId import IEntityWithIntId
8
+ from LOGS.Interfaces.IEntryRecord import IEntryRecord
9
+ from LOGS.Interfaces.ILockableEntity import ILockableEntity
10
+ from LOGS.Interfaces.IModificationRecord import IModificationRecord
11
+ from LOGS.Interfaces.INamedEntity import INamedEntity
12
+ from LOGS.Interfaces.IPermissionedEntity import IGenericPermissionEntity
13
+ from LOGS.Interfaces.ISoftDeletable import ISoftDeletable
14
+ from LOGS.Interfaces.ITypedEntity import ITypedEntity
15
+ from LOGS.Interfaces.IUniqueEntity import IUniqueEntity
16
+
17
+
18
+ class PersonAccountState(Enum):
19
+ NoAccount = "NoAccount"
20
+ Enabled = "Enabled"
21
+ Disabled = "Disabled"
22
+
23
+
24
+ @Endpoint("persons")
25
+ class Person(
26
+ IEntityWithIntId,
27
+ IUniqueEntity,
28
+ INamedEntity,
29
+ ITypedEntity,
30
+ IEntryRecord,
31
+ IModificationRecord,
32
+ ISoftDeletable,
33
+ ILockableEntity,
34
+ IGenericPermissionEntity,
35
+ ):
36
+
37
+ _personProjectPermissions: Optional[List[ProjectPersonPermission]] = None
38
+
39
+ _isSystemUser: Optional[bool] = None
40
+ _has2FA: Optional[bool] = None
41
+ _isLocalUser: Optional[bool] = None
42
+
43
+ _firstName: Optional[str] = None
44
+ _lastName: Optional[str] = None
45
+ _login: Optional[str] = None
46
+ _accountState: Optional[PersonAccountState] = None
47
+
48
+ _email: Optional[str] = None
49
+ _roles: Optional[List[Role]] = None
50
+ _password: Optional[str] = None
51
+
52
+ @property
53
+ def personProjectPermissions(self) -> Optional[List[ProjectPersonPermission]]:
54
+ return self._personProjectPermissions
55
+
56
+ @personProjectPermissions.setter
57
+ def personProjectPermissions(self, value):
58
+ self._personProjectPermissions = self.checkListAndConvertNullable(
59
+ value, ProjectPersonPermission, "personProjectPermissions"
60
+ )
61
+
62
+ @property
63
+ def isSystemUser(self) -> Optional[bool]:
64
+ return self._isSystemUser
65
+
66
+ @isSystemUser.setter
67
+ def isSystemUser(self, value):
68
+ self._isSystemUser = self.checkAndConvertNullable(value, bool, "isSystemUser")
69
+
70
+ @property
71
+ def has2FA(self) -> Optional[bool]:
72
+ return self._has2FA
73
+
74
+ @has2FA.setter
75
+ def has2FA(self, value):
76
+ self._has2FA = self.checkAndConvertNullable(value, bool, "has2FA")
77
+
78
+ @property
79
+ def isLocalUser(self) -> Optional[bool]:
80
+ return self._isLocalUser
81
+
82
+ @isLocalUser.setter
83
+ def isLocalUser(self, value):
84
+ self._isLocalUser = self.checkAndConvertNullable(value, bool, "isLocalUser")
85
+
86
+ @property
87
+ def login(self) -> Optional[str]:
88
+ return self._login
89
+
90
+ @login.setter
91
+ def login(self, value):
92
+ self._login = self.checkAndConvertNullable(value, str, "login")
93
+
94
+ @property
95
+ def accountState(self) -> Optional[PersonAccountState]:
96
+ return self._accountState
97
+
98
+ @accountState.setter
99
+ def accountState(self, value):
100
+ self._accountState = self.checkAndConvertNullable(
101
+ value, PersonAccountState, "accountState"
102
+ )
103
+
104
+ @property
105
+ def firstName(self) -> Optional[str]:
106
+ return self._firstName
107
+
108
+ @firstName.setter
109
+ def firstName(self, value):
110
+ self._firstName = self.checkAndConvertNullable(value, str, "firstName")
111
+
112
+ @property
113
+ def lastName(self) -> Optional[str]:
114
+ return self._lastName
115
+
116
+ @lastName.setter
117
+ def lastName(self, value):
118
+ self._lastName = self.checkAndConvertNullable(value, str, "lastName")
119
+
120
+ @property
121
+ def email(self) -> Optional[str]:
122
+ return self._email
123
+
124
+ @email.setter
125
+ def email(self, value):
126
+ self._email = self.checkAndConvertNullable(value, str, "email")
127
+
128
+ @property
129
+ def roles(self) -> Optional[List[Role]]:
130
+ return self._roles
131
+
132
+ @roles.setter
133
+ def roles(self, value):
134
+ if value is None:
135
+ self._roles = None
136
+ else:
137
+ self._roles = self.checkListAndConvertNullable(value, Role, "roles")
138
+
139
+ @property
140
+ def password(self) -> Optional[str]:
141
+ return self._password
142
+
143
+ @password.setter
144
+ def password(self, value):
145
+ self._password = self.checkAndConvertNullable(value, str, "password")
@@ -0,0 +1,12 @@
1
+ from typing import Optional
2
+
3
+ from LOGS.Entity.SerializableContent import SerializableClass
4
+
5
+
6
+ class PersonCategory(SerializableClass):
7
+ id: Optional[int] = None
8
+ name: Optional[str] = None
9
+
10
+ def __str__(self):
11
+ s = (" name:'%s'" % self.name) if self.name else ""
12
+ return "<%s id:%s%s>" % (type(self).__name__, str(self.id), s)
@@ -0,0 +1,8 @@
1
+ from LOGS.Auxiliary.Decorators import FullModel
2
+ from LOGS.Entities.Person import Person
3
+ from LOGS.Entity.EntityMinimalWithIntId import EntityMinimalWithIntId
4
+
5
+
6
+ @FullModel(Person)
7
+ class PersonMinimal(EntityMinimalWithIntId[Person]):
8
+ pass
@@ -0,0 +1,58 @@
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.Entity.EntityRequestParameter import EntityRequestParameter
7
+ from LOGS.Entity.IGenericEntityOrderBy import (
8
+ IEntryRecordSortingOptions,
9
+ IGenericEntitySortingOptions,
10
+ IModificationRecordSortingOptions,
11
+ ITypedEntitySortingOptions,
12
+ )
13
+ from LOGS.Interfaces.IEntryRecord import IEntryRecordRequest
14
+ from LOGS.Interfaces.ILockableEntity import ILockableEntityRequest
15
+ from LOGS.Interfaces.IModificationRecord import IModificationRecordRequest
16
+ from LOGS.Interfaces.IPermissionedEntity import IPermissionedEntityRequest
17
+ from LOGS.Interfaces.ISoftDeletable import ISoftDeletableRequest
18
+ from LOGS.Interfaces.ITypedEntity import ITypedEntityRequest
19
+ from LOGS.Interfaces.IUniqueEntity import IUniqueEntityRequest
20
+
21
+
22
+ class PersonSortingOptions(
23
+ IGenericEntitySortingOptions,
24
+ IEntryRecordSortingOptions,
25
+ IModificationRecordSortingOptions,
26
+ ITypedEntitySortingOptions,
27
+ ):
28
+ NAME: Self = cast(Self, "NAME")
29
+ LOGIN: Self = cast(Self, "LOGIN")
30
+ IS_SYSTEM_USER: Self = cast(Self, "IS_SYSTEM_USER")
31
+ LAST_NAME: Self = cast(Self, "LAST_NAME")
32
+ FIRST_NAME: Self = cast(Self, "FIRST_NAME")
33
+
34
+
35
+ @dataclass
36
+ class PersonRequestParameter(
37
+ EntityRequestParameter[PersonSortingOptions],
38
+ IPermissionedEntityRequest,
39
+ IUniqueEntityRequest,
40
+ IEntryRecordRequest,
41
+ IModificationRecordRequest,
42
+ ISoftDeletableRequest,
43
+ ILockableEntityRequest,
44
+ ITypedEntityRequest,
45
+ ):
46
+ _orderByType: Type[PersonSortingOptions] = field(
47
+ default=PersonSortingOptions, init=False
48
+ )
49
+
50
+ isLocalUser: Optional[List[bool]] = None
51
+ roleIds: Optional[List[int]] = None
52
+ hasAccount: Optional[bool] = None
53
+ isAccountEnabled: Optional[bool] = None
54
+ includeSystemUsers: Optional[bool] = None
55
+ logins: Optional[List[str]] = None
56
+ emails: Optional[List[str]] = None
57
+ firstNames: Optional[List[str]] = None
58
+ lastNames: Optional[List[str]] = None
@@ -0,0 +1,12 @@
1
+ from LOGS.Auxiliary.Decorators import Endpoint
2
+ from LOGS.Entities.Person import Person
3
+ from LOGS.Entities.PersonRequestParameter import PersonRequestParameter
4
+ from LOGS.Entity.EntityIterator import EntityIterator
5
+
6
+
7
+ @Endpoint("persons")
8
+ class Persons(EntityIterator[Person, PersonRequestParameter]):
9
+ """LOGS connected Person iterator"""
10
+
11
+ _generatorType = Person
12
+ _parameterType = PersonRequestParameter