lusid-sdk 2.1.874__py3-none-any.whl → 2.1.876__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.
- lusid/__init__.py +12 -0
- lusid/api/__init__.py +2 -0
- lusid/api/relational_dataset_definition_api.py +911 -0
- lusid/configuration.py +1 -1
- lusid/models/__init__.py +10 -0
- lusid/models/calendar_date.py +6 -1
- lusid/models/create_relational_dataset_definition_request.py +102 -0
- lusid/models/paged_resource_list_of_relational_dataset_definition.py +121 -0
- lusid/models/relational_dataset_definition.py +130 -0
- lusid/models/relational_dataset_field_definition.py +106 -0
- lusid/models/settlement_schedule.py +4 -2
- lusid/models/update_relational_dataset_definition_request.py +96 -0
- {lusid_sdk-2.1.874.dist-info → lusid_sdk-2.1.876.dist-info}/METADATA +11 -1
- {lusid_sdk-2.1.874.dist-info → lusid_sdk-2.1.876.dist-info}/RECORD +15 -9
- {lusid_sdk-2.1.874.dist-info → lusid_sdk-2.1.876.dist-info}/WHEEL +0 -0
lusid/configuration.py
CHANGED
@@ -445,7 +445,7 @@ class Configuration:
|
|
445
445
|
return "Python SDK Debug Report:\n"\
|
446
446
|
"OS: {env}\n"\
|
447
447
|
"Python Version: {pyversion}\n"\
|
448
|
-
"Version of the API: 0.11.
|
448
|
+
"Version of the API: 0.11.8058\n"\
|
449
449
|
"SDK Package Version: {package_version}".\
|
450
450
|
format(env=sys.platform, pyversion=sys.version, package_version=package_version)
|
451
451
|
|
lusid/models/__init__.py
CHANGED
@@ -268,6 +268,7 @@ from lusid.models.create_reconciliation_request import CreateReconciliationReque
|
|
268
268
|
from lusid.models.create_reference_portfolio_request import CreateReferencePortfolioRequest
|
269
269
|
from lusid.models.create_relation_definition_request import CreateRelationDefinitionRequest
|
270
270
|
from lusid.models.create_relation_request import CreateRelationRequest
|
271
|
+
from lusid.models.create_relational_dataset_definition_request import CreateRelationalDatasetDefinitionRequest
|
271
272
|
from lusid.models.create_relationship_definition_request import CreateRelationshipDefinitionRequest
|
272
273
|
from lusid.models.create_relationship_request import CreateRelationshipRequest
|
273
274
|
from lusid.models.create_sequence_request import CreateSequenceRequest
|
@@ -761,6 +762,7 @@ from lusid.models.paged_resource_list_of_property_definition import PagedResourc
|
|
761
762
|
from lusid.models.paged_resource_list_of_property_definition_search_result import PagedResourceListOfPropertyDefinitionSearchResult
|
762
763
|
from lusid.models.paged_resource_list_of_reconciliation import PagedResourceListOfReconciliation
|
763
764
|
from lusid.models.paged_resource_list_of_reference_list_response import PagedResourceListOfReferenceListResponse
|
765
|
+
from lusid.models.paged_resource_list_of_relational_dataset_definition import PagedResourceListOfRelationalDatasetDefinition
|
764
766
|
from lusid.models.paged_resource_list_of_relationship_definition import PagedResourceListOfRelationshipDefinition
|
765
767
|
from lusid.models.paged_resource_list_of_sequence_definition import PagedResourceListOfSequenceDefinition
|
766
768
|
from lusid.models.paged_resource_list_of_staged_modification import PagedResourceListOfStagedModification
|
@@ -905,6 +907,8 @@ from lusid.models.reference_portfolio_weight_type import ReferencePortfolioWeigh
|
|
905
907
|
from lusid.models.related_entity import RelatedEntity
|
906
908
|
from lusid.models.relation import Relation
|
907
909
|
from lusid.models.relation_definition import RelationDefinition
|
910
|
+
from lusid.models.relational_dataset_definition import RelationalDatasetDefinition
|
911
|
+
from lusid.models.relational_dataset_field_definition import RelationalDatasetFieldDefinition
|
908
912
|
from lusid.models.relationship import Relationship
|
909
913
|
from lusid.models.relationship_definition import RelationshipDefinition
|
910
914
|
from lusid.models.relative_date_offset import RelativeDateOffset
|
@@ -1169,6 +1173,7 @@ from lusid.models.update_portfolio_request import UpdatePortfolioRequest
|
|
1169
1173
|
from lusid.models.update_property_definition_request import UpdatePropertyDefinitionRequest
|
1170
1174
|
from lusid.models.update_reconciliation_request import UpdateReconciliationRequest
|
1171
1175
|
from lusid.models.update_reference_data_request import UpdateReferenceDataRequest
|
1176
|
+
from lusid.models.update_relational_dataset_definition_request import UpdateRelationalDatasetDefinitionRequest
|
1172
1177
|
from lusid.models.update_relationship_definition_request import UpdateRelationshipDefinitionRequest
|
1173
1178
|
from lusid.models.update_staging_rule_set_request import UpdateStagingRuleSetRequest
|
1174
1179
|
from lusid.models.update_tax_rule_set_request import UpdateTaxRuleSetRequest
|
@@ -1524,6 +1529,7 @@ __all__ = [
|
|
1524
1529
|
"CreateReferencePortfolioRequest",
|
1525
1530
|
"CreateRelationDefinitionRequest",
|
1526
1531
|
"CreateRelationRequest",
|
1532
|
+
"CreateRelationalDatasetDefinitionRequest",
|
1527
1533
|
"CreateRelationshipDefinitionRequest",
|
1528
1534
|
"CreateRelationshipRequest",
|
1529
1535
|
"CreateSequenceRequest",
|
@@ -2017,6 +2023,7 @@ __all__ = [
|
|
2017
2023
|
"PagedResourceListOfPropertyDefinitionSearchResult",
|
2018
2024
|
"PagedResourceListOfReconciliation",
|
2019
2025
|
"PagedResourceListOfReferenceListResponse",
|
2026
|
+
"PagedResourceListOfRelationalDatasetDefinition",
|
2020
2027
|
"PagedResourceListOfRelationshipDefinition",
|
2021
2028
|
"PagedResourceListOfSequenceDefinition",
|
2022
2029
|
"PagedResourceListOfStagedModification",
|
@@ -2161,6 +2168,8 @@ __all__ = [
|
|
2161
2168
|
"RelatedEntity",
|
2162
2169
|
"Relation",
|
2163
2170
|
"RelationDefinition",
|
2171
|
+
"RelationalDatasetDefinition",
|
2172
|
+
"RelationalDatasetFieldDefinition",
|
2164
2173
|
"Relationship",
|
2165
2174
|
"RelationshipDefinition",
|
2166
2175
|
"RelativeDateOffset",
|
@@ -2425,6 +2434,7 @@ __all__ = [
|
|
2425
2434
|
"UpdatePropertyDefinitionRequest",
|
2426
2435
|
"UpdateReconciliationRequest",
|
2427
2436
|
"UpdateReferenceDataRequest",
|
2437
|
+
"UpdateRelationalDatasetDefinitionRequest",
|
2428
2438
|
"UpdateRelationshipDefinitionRequest",
|
2429
2439
|
"UpdateStagingRuleSetRequest",
|
2430
2440
|
"UpdateTaxRuleSetRequest",
|
lusid/models/calendar_date.py
CHANGED
@@ -33,7 +33,7 @@ class CalendarDate(BaseModel):
|
|
33
33
|
local_date: StrictStr = Field(...,alias="localDate")
|
34
34
|
timezone: StrictStr = Field(...,alias="timezone")
|
35
35
|
description: StrictStr = Field(...,alias="description")
|
36
|
-
type: StrictStr = Field(
|
36
|
+
type: Optional[StrictStr] = Field(None,alias="type")
|
37
37
|
attributes: Optional[DateAttributes] = None
|
38
38
|
source_data: Optional[Dict[str, StrictStr]] = Field(None, alias="sourceData")
|
39
39
|
__properties = ["href", "dateIdentifier", "fromUtc", "toUtc", "localDate", "timezone", "description", "type", "attributes", "sourceData"]
|
@@ -78,6 +78,11 @@ class CalendarDate(BaseModel):
|
|
78
78
|
if self.href is None and "href" in self.__fields_set__:
|
79
79
|
_dict['href'] = None
|
80
80
|
|
81
|
+
# set to None if type (nullable) is None
|
82
|
+
# and __fields_set__ contains the field
|
83
|
+
if self.type is None and "type" in self.__fields_set__:
|
84
|
+
_dict['type'] = None
|
85
|
+
|
81
86
|
# set to None if source_data (nullable) is None
|
82
87
|
# and __fields_set__ contains the field
|
83
88
|
if self.source_data is None and "source_data" in self.__fields_set__:
|
@@ -0,0 +1,102 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
"""
|
4
|
+
LUSID API
|
5
|
+
|
6
|
+
FINBOURNE Technology # noqa: E501
|
7
|
+
|
8
|
+
Contact: info@finbourne.com
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
10
|
+
|
11
|
+
Do not edit the class manually.
|
12
|
+
"""
|
13
|
+
|
14
|
+
|
15
|
+
from __future__ import annotations
|
16
|
+
import pprint
|
17
|
+
import re # noqa: F401
|
18
|
+
import json
|
19
|
+
|
20
|
+
|
21
|
+
from typing import Any, Dict, List, Optional
|
22
|
+
from pydantic.v1 import StrictStr, Field, BaseModel, Field, StrictStr, conlist, constr
|
23
|
+
from lusid.models.relational_dataset_field_definition import RelationalDatasetFieldDefinition
|
24
|
+
from lusid.models.resource_id import ResourceId
|
25
|
+
|
26
|
+
class CreateRelationalDatasetDefinitionRequest(BaseModel):
|
27
|
+
"""
|
28
|
+
CreateRelationalDatasetDefinitionRequest
|
29
|
+
"""
|
30
|
+
id: ResourceId = Field(...)
|
31
|
+
display_name: StrictStr = Field(...,alias="displayName", description="A user-friendly display name for the relational dataset definition.")
|
32
|
+
description: Optional[StrictStr] = Field(None,alias="description", description="A detailed description of the relational dataset definition and its purpose.")
|
33
|
+
applicable_entity_types: conlist(StrictStr) = Field(..., alias="applicableEntityTypes", description="The types of entities this relational dataset definition can be applied to (e.g. Instrument, Portfolio, etc.).")
|
34
|
+
field_schema: conlist(RelationalDatasetFieldDefinition) = Field(..., alias="fieldSchema", description="The schema defining the structure and data types of the relational dataset.")
|
35
|
+
__properties = ["id", "displayName", "description", "applicableEntityTypes", "fieldSchema"]
|
36
|
+
|
37
|
+
class Config:
|
38
|
+
"""Pydantic configuration"""
|
39
|
+
allow_population_by_field_name = True
|
40
|
+
validate_assignment = True
|
41
|
+
|
42
|
+
def __str__(self):
|
43
|
+
"""For `print` and `pprint`"""
|
44
|
+
return pprint.pformat(self.dict(by_alias=False))
|
45
|
+
|
46
|
+
def __repr__(self):
|
47
|
+
"""For `print` and `pprint`"""
|
48
|
+
return self.to_str()
|
49
|
+
|
50
|
+
def to_str(self) -> str:
|
51
|
+
"""Returns the string representation of the model using alias"""
|
52
|
+
return pprint.pformat(self.dict(by_alias=True))
|
53
|
+
|
54
|
+
def to_json(self) -> str:
|
55
|
+
"""Returns the JSON representation of the model using alias"""
|
56
|
+
return json.dumps(self.to_dict())
|
57
|
+
|
58
|
+
@classmethod
|
59
|
+
def from_json(cls, json_str: str) -> CreateRelationalDatasetDefinitionRequest:
|
60
|
+
"""Create an instance of CreateRelationalDatasetDefinitionRequest from a JSON string"""
|
61
|
+
return cls.from_dict(json.loads(json_str))
|
62
|
+
|
63
|
+
def to_dict(self):
|
64
|
+
"""Returns the dictionary representation of the model using alias"""
|
65
|
+
_dict = self.dict(by_alias=True,
|
66
|
+
exclude={
|
67
|
+
},
|
68
|
+
exclude_none=True)
|
69
|
+
# override the default output from pydantic by calling `to_dict()` of id
|
70
|
+
if self.id:
|
71
|
+
_dict['id'] = self.id.to_dict()
|
72
|
+
# override the default output from pydantic by calling `to_dict()` of each item in field_schema (list)
|
73
|
+
_items = []
|
74
|
+
if self.field_schema:
|
75
|
+
for _item in self.field_schema:
|
76
|
+
if _item:
|
77
|
+
_items.append(_item.to_dict())
|
78
|
+
_dict['fieldSchema'] = _items
|
79
|
+
# set to None if description (nullable) is None
|
80
|
+
# and __fields_set__ contains the field
|
81
|
+
if self.description is None and "description" in self.__fields_set__:
|
82
|
+
_dict['description'] = None
|
83
|
+
|
84
|
+
return _dict
|
85
|
+
|
86
|
+
@classmethod
|
87
|
+
def from_dict(cls, obj: dict) -> CreateRelationalDatasetDefinitionRequest:
|
88
|
+
"""Create an instance of CreateRelationalDatasetDefinitionRequest from a dict"""
|
89
|
+
if obj is None:
|
90
|
+
return None
|
91
|
+
|
92
|
+
if not isinstance(obj, dict):
|
93
|
+
return CreateRelationalDatasetDefinitionRequest.parse_obj(obj)
|
94
|
+
|
95
|
+
_obj = CreateRelationalDatasetDefinitionRequest.parse_obj({
|
96
|
+
"id": ResourceId.from_dict(obj.get("id")) if obj.get("id") is not None else None,
|
97
|
+
"display_name": obj.get("displayName"),
|
98
|
+
"description": obj.get("description"),
|
99
|
+
"applicable_entity_types": obj.get("applicableEntityTypes"),
|
100
|
+
"field_schema": [RelationalDatasetFieldDefinition.from_dict(_item) for _item in obj.get("fieldSchema")] if obj.get("fieldSchema") is not None else None
|
101
|
+
})
|
102
|
+
return _obj
|
@@ -0,0 +1,121 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
"""
|
4
|
+
LUSID API
|
5
|
+
|
6
|
+
FINBOURNE Technology # noqa: E501
|
7
|
+
|
8
|
+
Contact: info@finbourne.com
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
10
|
+
|
11
|
+
Do not edit the class manually.
|
12
|
+
"""
|
13
|
+
|
14
|
+
|
15
|
+
from __future__ import annotations
|
16
|
+
import pprint
|
17
|
+
import re # noqa: F401
|
18
|
+
import json
|
19
|
+
|
20
|
+
|
21
|
+
from typing import Any, Dict, List, Optional
|
22
|
+
from pydantic.v1 import StrictStr, Field, BaseModel, Field, StrictStr, conlist
|
23
|
+
from lusid.models.link import Link
|
24
|
+
from lusid.models.relational_dataset_definition import RelationalDatasetDefinition
|
25
|
+
|
26
|
+
class PagedResourceListOfRelationalDatasetDefinition(BaseModel):
|
27
|
+
"""
|
28
|
+
PagedResourceListOfRelationalDatasetDefinition
|
29
|
+
"""
|
30
|
+
next_page: Optional[StrictStr] = Field(None,alias="nextPage")
|
31
|
+
previous_page: Optional[StrictStr] = Field(None,alias="previousPage")
|
32
|
+
values: conlist(RelationalDatasetDefinition) = Field(...)
|
33
|
+
href: Optional[StrictStr] = Field(None,alias="href")
|
34
|
+
links: Optional[conlist(Link)] = None
|
35
|
+
__properties = ["nextPage", "previousPage", "values", "href", "links"]
|
36
|
+
|
37
|
+
class Config:
|
38
|
+
"""Pydantic configuration"""
|
39
|
+
allow_population_by_field_name = True
|
40
|
+
validate_assignment = True
|
41
|
+
|
42
|
+
def __str__(self):
|
43
|
+
"""For `print` and `pprint`"""
|
44
|
+
return pprint.pformat(self.dict(by_alias=False))
|
45
|
+
|
46
|
+
def __repr__(self):
|
47
|
+
"""For `print` and `pprint`"""
|
48
|
+
return self.to_str()
|
49
|
+
|
50
|
+
def to_str(self) -> str:
|
51
|
+
"""Returns the string representation of the model using alias"""
|
52
|
+
return pprint.pformat(self.dict(by_alias=True))
|
53
|
+
|
54
|
+
def to_json(self) -> str:
|
55
|
+
"""Returns the JSON representation of the model using alias"""
|
56
|
+
return json.dumps(self.to_dict())
|
57
|
+
|
58
|
+
@classmethod
|
59
|
+
def from_json(cls, json_str: str) -> PagedResourceListOfRelationalDatasetDefinition:
|
60
|
+
"""Create an instance of PagedResourceListOfRelationalDatasetDefinition from a JSON string"""
|
61
|
+
return cls.from_dict(json.loads(json_str))
|
62
|
+
|
63
|
+
def to_dict(self):
|
64
|
+
"""Returns the dictionary representation of the model using alias"""
|
65
|
+
_dict = self.dict(by_alias=True,
|
66
|
+
exclude={
|
67
|
+
},
|
68
|
+
exclude_none=True)
|
69
|
+
# override the default output from pydantic by calling `to_dict()` of each item in values (list)
|
70
|
+
_items = []
|
71
|
+
if self.values:
|
72
|
+
for _item in self.values:
|
73
|
+
if _item:
|
74
|
+
_items.append(_item.to_dict())
|
75
|
+
_dict['values'] = _items
|
76
|
+
# override the default output from pydantic by calling `to_dict()` of each item in links (list)
|
77
|
+
_items = []
|
78
|
+
if self.links:
|
79
|
+
for _item in self.links:
|
80
|
+
if _item:
|
81
|
+
_items.append(_item.to_dict())
|
82
|
+
_dict['links'] = _items
|
83
|
+
# set to None if next_page (nullable) is None
|
84
|
+
# and __fields_set__ contains the field
|
85
|
+
if self.next_page is None and "next_page" in self.__fields_set__:
|
86
|
+
_dict['nextPage'] = None
|
87
|
+
|
88
|
+
# set to None if previous_page (nullable) is None
|
89
|
+
# and __fields_set__ contains the field
|
90
|
+
if self.previous_page is None and "previous_page" in self.__fields_set__:
|
91
|
+
_dict['previousPage'] = None
|
92
|
+
|
93
|
+
# set to None if href (nullable) is None
|
94
|
+
# and __fields_set__ contains the field
|
95
|
+
if self.href is None and "href" in self.__fields_set__:
|
96
|
+
_dict['href'] = None
|
97
|
+
|
98
|
+
# set to None if links (nullable) is None
|
99
|
+
# and __fields_set__ contains the field
|
100
|
+
if self.links is None and "links" in self.__fields_set__:
|
101
|
+
_dict['links'] = None
|
102
|
+
|
103
|
+
return _dict
|
104
|
+
|
105
|
+
@classmethod
|
106
|
+
def from_dict(cls, obj: dict) -> PagedResourceListOfRelationalDatasetDefinition:
|
107
|
+
"""Create an instance of PagedResourceListOfRelationalDatasetDefinition from a dict"""
|
108
|
+
if obj is None:
|
109
|
+
return None
|
110
|
+
|
111
|
+
if not isinstance(obj, dict):
|
112
|
+
return PagedResourceListOfRelationalDatasetDefinition.parse_obj(obj)
|
113
|
+
|
114
|
+
_obj = PagedResourceListOfRelationalDatasetDefinition.parse_obj({
|
115
|
+
"next_page": obj.get("nextPage"),
|
116
|
+
"previous_page": obj.get("previousPage"),
|
117
|
+
"values": [RelationalDatasetDefinition.from_dict(_item) for _item in obj.get("values")] if obj.get("values") is not None else None,
|
118
|
+
"href": obj.get("href"),
|
119
|
+
"links": [Link.from_dict(_item) for _item in obj.get("links")] if obj.get("links") is not None else None
|
120
|
+
})
|
121
|
+
return _obj
|
@@ -0,0 +1,130 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
"""
|
4
|
+
LUSID API
|
5
|
+
|
6
|
+
FINBOURNE Technology # noqa: E501
|
7
|
+
|
8
|
+
Contact: info@finbourne.com
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
10
|
+
|
11
|
+
Do not edit the class manually.
|
12
|
+
"""
|
13
|
+
|
14
|
+
|
15
|
+
from __future__ import annotations
|
16
|
+
import pprint
|
17
|
+
import re # noqa: F401
|
18
|
+
import json
|
19
|
+
|
20
|
+
|
21
|
+
from typing import Any, Dict, List, Optional
|
22
|
+
from pydantic.v1 import StrictStr, Field, BaseModel, Field, StrictStr, conlist, constr
|
23
|
+
from lusid.models.link import Link
|
24
|
+
from lusid.models.relational_dataset_field_definition import RelationalDatasetFieldDefinition
|
25
|
+
from lusid.models.resource_id import ResourceId
|
26
|
+
from lusid.models.version import Version
|
27
|
+
|
28
|
+
class RelationalDatasetDefinition(BaseModel):
|
29
|
+
"""
|
30
|
+
RelationalDatasetDefinition
|
31
|
+
"""
|
32
|
+
id: ResourceId = Field(...)
|
33
|
+
display_name: StrictStr = Field(...,alias="displayName", description="A user-friendly display name for the relational dataset definition.")
|
34
|
+
description: Optional[StrictStr] = Field(None,alias="description", description="A detailed description of the relational dataset definition and its purpose.")
|
35
|
+
applicable_entity_types: conlist(StrictStr) = Field(..., alias="applicableEntityTypes", description="The types of entities this relational dataset definition can be applied to (e.g. Instrument, Portfolio, etc.).")
|
36
|
+
field_schema: conlist(RelationalDatasetFieldDefinition) = Field(..., alias="fieldSchema", description="The schema defining the structure and data types of the relational dataset.")
|
37
|
+
href: Optional[StrictStr] = Field(None,alias="href", description="The specific Uniform Resource Identifier (URI) for this resource at the requested effective and asAt datetime.")
|
38
|
+
version: Optional[Version] = None
|
39
|
+
links: Optional[conlist(Link)] = None
|
40
|
+
__properties = ["id", "displayName", "description", "applicableEntityTypes", "fieldSchema", "href", "version", "links"]
|
41
|
+
|
42
|
+
class Config:
|
43
|
+
"""Pydantic configuration"""
|
44
|
+
allow_population_by_field_name = True
|
45
|
+
validate_assignment = True
|
46
|
+
|
47
|
+
def __str__(self):
|
48
|
+
"""For `print` and `pprint`"""
|
49
|
+
return pprint.pformat(self.dict(by_alias=False))
|
50
|
+
|
51
|
+
def __repr__(self):
|
52
|
+
"""For `print` and `pprint`"""
|
53
|
+
return self.to_str()
|
54
|
+
|
55
|
+
def to_str(self) -> str:
|
56
|
+
"""Returns the string representation of the model using alias"""
|
57
|
+
return pprint.pformat(self.dict(by_alias=True))
|
58
|
+
|
59
|
+
def to_json(self) -> str:
|
60
|
+
"""Returns the JSON representation of the model using alias"""
|
61
|
+
return json.dumps(self.to_dict())
|
62
|
+
|
63
|
+
@classmethod
|
64
|
+
def from_json(cls, json_str: str) -> RelationalDatasetDefinition:
|
65
|
+
"""Create an instance of RelationalDatasetDefinition from a JSON string"""
|
66
|
+
return cls.from_dict(json.loads(json_str))
|
67
|
+
|
68
|
+
def to_dict(self):
|
69
|
+
"""Returns the dictionary representation of the model using alias"""
|
70
|
+
_dict = self.dict(by_alias=True,
|
71
|
+
exclude={
|
72
|
+
},
|
73
|
+
exclude_none=True)
|
74
|
+
# override the default output from pydantic by calling `to_dict()` of id
|
75
|
+
if self.id:
|
76
|
+
_dict['id'] = self.id.to_dict()
|
77
|
+
# override the default output from pydantic by calling `to_dict()` of each item in field_schema (list)
|
78
|
+
_items = []
|
79
|
+
if self.field_schema:
|
80
|
+
for _item in self.field_schema:
|
81
|
+
if _item:
|
82
|
+
_items.append(_item.to_dict())
|
83
|
+
_dict['fieldSchema'] = _items
|
84
|
+
# override the default output from pydantic by calling `to_dict()` of version
|
85
|
+
if self.version:
|
86
|
+
_dict['version'] = self.version.to_dict()
|
87
|
+
# override the default output from pydantic by calling `to_dict()` of each item in links (list)
|
88
|
+
_items = []
|
89
|
+
if self.links:
|
90
|
+
for _item in self.links:
|
91
|
+
if _item:
|
92
|
+
_items.append(_item.to_dict())
|
93
|
+
_dict['links'] = _items
|
94
|
+
# set to None if description (nullable) is None
|
95
|
+
# and __fields_set__ contains the field
|
96
|
+
if self.description is None and "description" in self.__fields_set__:
|
97
|
+
_dict['description'] = None
|
98
|
+
|
99
|
+
# set to None if href (nullable) is None
|
100
|
+
# and __fields_set__ contains the field
|
101
|
+
if self.href is None and "href" in self.__fields_set__:
|
102
|
+
_dict['href'] = None
|
103
|
+
|
104
|
+
# set to None if links (nullable) is None
|
105
|
+
# and __fields_set__ contains the field
|
106
|
+
if self.links is None and "links" in self.__fields_set__:
|
107
|
+
_dict['links'] = None
|
108
|
+
|
109
|
+
return _dict
|
110
|
+
|
111
|
+
@classmethod
|
112
|
+
def from_dict(cls, obj: dict) -> RelationalDatasetDefinition:
|
113
|
+
"""Create an instance of RelationalDatasetDefinition from a dict"""
|
114
|
+
if obj is None:
|
115
|
+
return None
|
116
|
+
|
117
|
+
if not isinstance(obj, dict):
|
118
|
+
return RelationalDatasetDefinition.parse_obj(obj)
|
119
|
+
|
120
|
+
_obj = RelationalDatasetDefinition.parse_obj({
|
121
|
+
"id": ResourceId.from_dict(obj.get("id")) if obj.get("id") is not None else None,
|
122
|
+
"display_name": obj.get("displayName"),
|
123
|
+
"description": obj.get("description"),
|
124
|
+
"applicable_entity_types": obj.get("applicableEntityTypes"),
|
125
|
+
"field_schema": [RelationalDatasetFieldDefinition.from_dict(_item) for _item in obj.get("fieldSchema")] if obj.get("fieldSchema") is not None else None,
|
126
|
+
"href": obj.get("href"),
|
127
|
+
"version": Version.from_dict(obj.get("version")) if obj.get("version") is not None else None,
|
128
|
+
"links": [Link.from_dict(_item) for _item in obj.get("links")] if obj.get("links") is not None else None
|
129
|
+
})
|
130
|
+
return _obj
|
@@ -0,0 +1,106 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
"""
|
4
|
+
LUSID API
|
5
|
+
|
6
|
+
FINBOURNE Technology # noqa: E501
|
7
|
+
|
8
|
+
Contact: info@finbourne.com
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
10
|
+
|
11
|
+
Do not edit the class manually.
|
12
|
+
"""
|
13
|
+
|
14
|
+
|
15
|
+
from __future__ import annotations
|
16
|
+
import pprint
|
17
|
+
import re # noqa: F401
|
18
|
+
import json
|
19
|
+
|
20
|
+
|
21
|
+
from typing import Any, Dict, Optional
|
22
|
+
from pydantic.v1 import StrictStr, Field, BaseModel, Field, StrictBool, StrictStr, constr
|
23
|
+
from lusid.models.resource_id import ResourceId
|
24
|
+
|
25
|
+
class RelationalDatasetFieldDefinition(BaseModel):
|
26
|
+
"""
|
27
|
+
RelationalDatasetFieldDefinition
|
28
|
+
"""
|
29
|
+
field_name: StrictStr = Field(...,alias="fieldName", description="The unique identifier for the field within the dataset.")
|
30
|
+
display_name: Optional[StrictStr] = Field(None,alias="displayName", description="A user-friendly display name for the field.")
|
31
|
+
description: Optional[StrictStr] = Field(None,alias="description", description="A detailed description of the field and its purpose.")
|
32
|
+
data_type_id: ResourceId = Field(..., alias="dataTypeId")
|
33
|
+
required: Optional[StrictBool] = Field(None, description="Whether this field is mandatory in the dataset.")
|
34
|
+
usage: Optional[StrictStr] = Field(None,alias="usage", description="The intended usage of the field (SeriesIdentifier, Value, or Metadata).")
|
35
|
+
__properties = ["fieldName", "displayName", "description", "dataTypeId", "required", "usage"]
|
36
|
+
|
37
|
+
class Config:
|
38
|
+
"""Pydantic configuration"""
|
39
|
+
allow_population_by_field_name = True
|
40
|
+
validate_assignment = True
|
41
|
+
|
42
|
+
def __str__(self):
|
43
|
+
"""For `print` and `pprint`"""
|
44
|
+
return pprint.pformat(self.dict(by_alias=False))
|
45
|
+
|
46
|
+
def __repr__(self):
|
47
|
+
"""For `print` and `pprint`"""
|
48
|
+
return self.to_str()
|
49
|
+
|
50
|
+
def to_str(self) -> str:
|
51
|
+
"""Returns the string representation of the model using alias"""
|
52
|
+
return pprint.pformat(self.dict(by_alias=True))
|
53
|
+
|
54
|
+
def to_json(self) -> str:
|
55
|
+
"""Returns the JSON representation of the model using alias"""
|
56
|
+
return json.dumps(self.to_dict())
|
57
|
+
|
58
|
+
@classmethod
|
59
|
+
def from_json(cls, json_str: str) -> RelationalDatasetFieldDefinition:
|
60
|
+
"""Create an instance of RelationalDatasetFieldDefinition from a JSON string"""
|
61
|
+
return cls.from_dict(json.loads(json_str))
|
62
|
+
|
63
|
+
def to_dict(self):
|
64
|
+
"""Returns the dictionary representation of the model using alias"""
|
65
|
+
_dict = self.dict(by_alias=True,
|
66
|
+
exclude={
|
67
|
+
},
|
68
|
+
exclude_none=True)
|
69
|
+
# override the default output from pydantic by calling `to_dict()` of data_type_id
|
70
|
+
if self.data_type_id:
|
71
|
+
_dict['dataTypeId'] = self.data_type_id.to_dict()
|
72
|
+
# set to None if display_name (nullable) is None
|
73
|
+
# and __fields_set__ contains the field
|
74
|
+
if self.display_name is None and "display_name" in self.__fields_set__:
|
75
|
+
_dict['displayName'] = None
|
76
|
+
|
77
|
+
# set to None if description (nullable) is None
|
78
|
+
# and __fields_set__ contains the field
|
79
|
+
if self.description is None and "description" in self.__fields_set__:
|
80
|
+
_dict['description'] = None
|
81
|
+
|
82
|
+
# set to None if usage (nullable) is None
|
83
|
+
# and __fields_set__ contains the field
|
84
|
+
if self.usage is None and "usage" in self.__fields_set__:
|
85
|
+
_dict['usage'] = None
|
86
|
+
|
87
|
+
return _dict
|
88
|
+
|
89
|
+
@classmethod
|
90
|
+
def from_dict(cls, obj: dict) -> RelationalDatasetFieldDefinition:
|
91
|
+
"""Create an instance of RelationalDatasetFieldDefinition from a dict"""
|
92
|
+
if obj is None:
|
93
|
+
return None
|
94
|
+
|
95
|
+
if not isinstance(obj, dict):
|
96
|
+
return RelationalDatasetFieldDefinition.parse_obj(obj)
|
97
|
+
|
98
|
+
_obj = RelationalDatasetFieldDefinition.parse_obj({
|
99
|
+
"field_name": obj.get("fieldName"),
|
100
|
+
"display_name": obj.get("displayName"),
|
101
|
+
"description": obj.get("description"),
|
102
|
+
"data_type_id": ResourceId.from_dict(obj.get("dataTypeId")) if obj.get("dataTypeId") is not None else None,
|
103
|
+
"required": obj.get("required"),
|
104
|
+
"usage": obj.get("usage")
|
105
|
+
})
|
106
|
+
return _obj
|
@@ -28,7 +28,8 @@ class SettlementSchedule(BaseModel):
|
|
28
28
|
trade_id: Optional[StrictStr] = Field(None,alias="tradeId")
|
29
29
|
settlement_date: Optional[datetime] = Field(None, alias="settlementDate")
|
30
30
|
units: Optional[Union[StrictFloat, StrictInt]] = None
|
31
|
-
|
31
|
+
bond_interest: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="bondInterest")
|
32
|
+
__properties = ["tradeId", "settlementDate", "units", "bondInterest"]
|
32
33
|
|
33
34
|
class Config:
|
34
35
|
"""Pydantic configuration"""
|
@@ -81,6 +82,7 @@ class SettlementSchedule(BaseModel):
|
|
81
82
|
_obj = SettlementSchedule.parse_obj({
|
82
83
|
"trade_id": obj.get("tradeId"),
|
83
84
|
"settlement_date": obj.get("settlementDate"),
|
84
|
-
"units": obj.get("units")
|
85
|
+
"units": obj.get("units"),
|
86
|
+
"bond_interest": obj.get("bondInterest")
|
85
87
|
})
|
86
88
|
return _obj
|
@@ -0,0 +1,96 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
"""
|
4
|
+
LUSID API
|
5
|
+
|
6
|
+
FINBOURNE Technology # noqa: E501
|
7
|
+
|
8
|
+
Contact: info@finbourne.com
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
10
|
+
|
11
|
+
Do not edit the class manually.
|
12
|
+
"""
|
13
|
+
|
14
|
+
|
15
|
+
from __future__ import annotations
|
16
|
+
import pprint
|
17
|
+
import re # noqa: F401
|
18
|
+
import json
|
19
|
+
|
20
|
+
|
21
|
+
from typing import Any, Dict, List, Optional
|
22
|
+
from pydantic.v1 import StrictStr, Field, BaseModel, Field, StrictStr, conlist, constr
|
23
|
+
from lusid.models.relational_dataset_field_definition import RelationalDatasetFieldDefinition
|
24
|
+
|
25
|
+
class UpdateRelationalDatasetDefinitionRequest(BaseModel):
|
26
|
+
"""
|
27
|
+
UpdateRelationalDatasetDefinitionRequest
|
28
|
+
"""
|
29
|
+
display_name: StrictStr = Field(...,alias="displayName", description="A user-friendly display name for the relational dataset definition.")
|
30
|
+
description: Optional[StrictStr] = Field(None,alias="description", description="A detailed description of the relational dataset definition and its purpose.")
|
31
|
+
applicable_entity_types: conlist(StrictStr) = Field(..., alias="applicableEntityTypes", description="The types of entities this relational dataset definition can be applied to (e.g. Instrument, Portfolio, etc.).")
|
32
|
+
field_schema: conlist(RelationalDatasetFieldDefinition) = Field(..., alias="fieldSchema", description="The schema defining the structure and data types of the relational dataset.")
|
33
|
+
__properties = ["displayName", "description", "applicableEntityTypes", "fieldSchema"]
|
34
|
+
|
35
|
+
class Config:
|
36
|
+
"""Pydantic configuration"""
|
37
|
+
allow_population_by_field_name = True
|
38
|
+
validate_assignment = True
|
39
|
+
|
40
|
+
def __str__(self):
|
41
|
+
"""For `print` and `pprint`"""
|
42
|
+
return pprint.pformat(self.dict(by_alias=False))
|
43
|
+
|
44
|
+
def __repr__(self):
|
45
|
+
"""For `print` and `pprint`"""
|
46
|
+
return self.to_str()
|
47
|
+
|
48
|
+
def to_str(self) -> str:
|
49
|
+
"""Returns the string representation of the model using alias"""
|
50
|
+
return pprint.pformat(self.dict(by_alias=True))
|
51
|
+
|
52
|
+
def to_json(self) -> str:
|
53
|
+
"""Returns the JSON representation of the model using alias"""
|
54
|
+
return json.dumps(self.to_dict())
|
55
|
+
|
56
|
+
@classmethod
|
57
|
+
def from_json(cls, json_str: str) -> UpdateRelationalDatasetDefinitionRequest:
|
58
|
+
"""Create an instance of UpdateRelationalDatasetDefinitionRequest from a JSON string"""
|
59
|
+
return cls.from_dict(json.loads(json_str))
|
60
|
+
|
61
|
+
def to_dict(self):
|
62
|
+
"""Returns the dictionary representation of the model using alias"""
|
63
|
+
_dict = self.dict(by_alias=True,
|
64
|
+
exclude={
|
65
|
+
},
|
66
|
+
exclude_none=True)
|
67
|
+
# override the default output from pydantic by calling `to_dict()` of each item in field_schema (list)
|
68
|
+
_items = []
|
69
|
+
if self.field_schema:
|
70
|
+
for _item in self.field_schema:
|
71
|
+
if _item:
|
72
|
+
_items.append(_item.to_dict())
|
73
|
+
_dict['fieldSchema'] = _items
|
74
|
+
# set to None if description (nullable) is None
|
75
|
+
# and __fields_set__ contains the field
|
76
|
+
if self.description is None and "description" in self.__fields_set__:
|
77
|
+
_dict['description'] = None
|
78
|
+
|
79
|
+
return _dict
|
80
|
+
|
81
|
+
@classmethod
|
82
|
+
def from_dict(cls, obj: dict) -> UpdateRelationalDatasetDefinitionRequest:
|
83
|
+
"""Create an instance of UpdateRelationalDatasetDefinitionRequest from a dict"""
|
84
|
+
if obj is None:
|
85
|
+
return None
|
86
|
+
|
87
|
+
if not isinstance(obj, dict):
|
88
|
+
return UpdateRelationalDatasetDefinitionRequest.parse_obj(obj)
|
89
|
+
|
90
|
+
_obj = UpdateRelationalDatasetDefinitionRequest.parse_obj({
|
91
|
+
"display_name": obj.get("displayName"),
|
92
|
+
"description": obj.get("description"),
|
93
|
+
"applicable_entity_types": obj.get("applicableEntityTypes"),
|
94
|
+
"field_schema": [RelationalDatasetFieldDefinition.from_dict(_item) for _item in obj.get("fieldSchema")] if obj.get("fieldSchema") is not None else None
|
95
|
+
})
|
96
|
+
return _obj
|