lusid-sdk 2.1.748__py3-none-any.whl → 2.1.749__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/configuration.py +1 -1
- lusid/models/access_metadata_operation.py +52 -0
- lusid/models/account.py +52 -0
- lusid/models/accumulation_event.py +52 -0
- lusid/models/address_definition.py +52 -0
- lusid/models/address_key_compliance_parameter.py +52 -0
- lusid/models/address_key_list.py +52 -0
- lusid/models/address_key_list_compliance_parameter.py +52 -0
- lusid/models/adjust_global_commitment_event.py +52 -0
- lusid/models/aggregate_spec.py +52 -0
- lusid/models/aggregation_query.py +104 -0
- lusid/models/amortisation_event.py +52 -0
- lusid/models/append_fx_forward_curve_by_quote_reference.py +52 -0
- lusid/models/append_fx_forward_curve_data.py +52 -0
- lusid/models/append_fx_forward_pips_curve_data.py +52 -0
- lusid/models/append_fx_forward_tenor_curve_data.py +52 -0
- lusid/models/append_fx_forward_tenor_pips_curve_data.py +52 -0
- lusid/models/append_market_data.py +52 -0
- lusid/models/basket.py +52 -0
- lusid/models/bond.py +52 -0
- lusid/models/bond_conversion_schedule.py +52 -0
- lusid/models/bond_coupon_event.py +52 -0
- lusid/models/bond_default_event.py +52 -0
- lusid/models/bond_principal_event.py +52 -0
- lusid/models/bonus_issue_event.py +52 -0
- lusid/models/bool_compliance_parameter.py +52 -0
- lusid/models/bool_list_compliance_parameter.py +52 -0
- lusid/models/branch_step.py +52 -0
- lusid/models/branch_step_request.py +52 -0
- lusid/models/calendar_dependency.py +52 -0
- lusid/models/call_on_intermediate_securities_event.py +52 -0
- lusid/models/cap_floor.py +52 -0
- lusid/models/capital_distribution_event.py +52 -0
- lusid/models/cash.py +52 -0
- lusid/models/cash_dependency.py +52 -0
- lusid/models/cash_dividend_event.py +52 -0
- lusid/models/cash_flow_event.py +52 -0
- lusid/models/cash_flow_value.py +52 -0
- lusid/models/cash_flow_value_set.py +52 -0
- lusid/models/cash_perpetual.py +52 -0
- lusid/models/cds_credit_event.py +52 -0
- lusid/models/cds_index.py +52 -0
- lusid/models/cdx_credit_event.py +52 -0
- lusid/models/change_history.py +52 -0
- lusid/models/check_step.py +52 -0
- lusid/models/check_step_request.py +52 -0
- lusid/models/close_event.py +52 -0
- lusid/models/complete_portfolio.py +52 -0
- lusid/models/complex_bond.py +52 -0
- lusid/models/complex_market_data.py +52 -0
- lusid/models/compliance_parameter.py +52 -0
- lusid/models/compliance_step.py +52 -0
- lusid/models/compliance_step_request.py +52 -0
- lusid/models/constant_volatility_surface.py +52 -0
- lusid/models/contract_for_difference.py +52 -0
- lusid/models/contract_initialisation_event.py +52 -0
- lusid/models/create_data_type_request.py +156 -0
- lusid/models/create_derived_property_definition_request.py +52 -0
- lusid/models/create_derived_transaction_portfolio_request.py +52 -0
- lusid/models/create_identifier_definition_request.py +104 -0
- lusid/models/create_property_definition_request.py +104 -0
- lusid/models/create_simple_position_portfolio_request.py +52 -0
- lusid/models/create_transaction_portfolio_request.py +52 -0
- lusid/models/credit_default_swap.py +52 -0
- lusid/models/credit_premium_cash_flow_event.py +52 -0
- lusid/models/credit_spread_curve_data.py +52 -0
- lusid/models/curve_options.py +52 -0
- lusid/models/data_type.py +156 -0
- lusid/models/data_type_summary.py +156 -0
- lusid/models/date_time_compliance_parameter.py +52 -0
- lusid/models/date_time_list_compliance_parameter.py +52 -0
- lusid/models/decimal_compliance_parameter.py +52 -0
- lusid/models/decimal_list.py +52 -0
- lusid/models/decimal_list_compliance_parameter.py +52 -0
- lusid/models/deposit_close_event.py +52 -0
- lusid/models/deposit_interest_payment_event.py +52 -0
- lusid/models/discount_factor_curve_data.py +52 -0
- lusid/models/discounting_dependency.py +52 -0
- lusid/models/dividend_option_event.py +52 -0
- lusid/models/dividend_reinvestment_event.py +52 -0
- lusid/models/drawdown_event.py +52 -0
- lusid/models/early_redemption_event.py +52 -0
- lusid/models/economic_dependency.py +52 -0
- lusid/models/empty_model_options.py +52 -0
- lusid/models/equity.py +52 -0
- lusid/models/equity_curve_by_prices_data.py +52 -0
- lusid/models/equity_curve_dependency.py +52 -0
- lusid/models/equity_model_options.py +52 -0
- lusid/models/equity_option.py +52 -0
- lusid/models/equity_swap.py +52 -0
- lusid/models/equity_vol_dependency.py +52 -0
- lusid/models/equity_vol_surface_data.py +52 -0
- lusid/models/exchange_traded_option.py +52 -0
- lusid/models/exercise_event.py +52 -0
- lusid/models/exotic_instrument.py +52 -0
- lusid/models/expiry_event.py +52 -0
- lusid/models/field_schema.py +52 -0
- lusid/models/filter_predicate_compliance_parameter.py +52 -0
- lusid/models/filter_step.py +52 -0
- lusid/models/filter_step_request.py +52 -0
- lusid/models/fixed_leg.py +52 -0
- lusid/models/fixed_schedule.py +52 -0
- lusid/models/flexible_deposit.py +52 -0
- lusid/models/flexible_loan.py +52 -0
- lusid/models/float_schedule.py +52 -0
- lusid/models/floating_leg.py +52 -0
- lusid/models/forward_rate_agreement.py +52 -0
- lusid/models/fund_id_list.py +52 -0
- lusid/models/fund_share_class.py +52 -0
- lusid/models/funding_leg.py +52 -0
- lusid/models/funding_leg_options.py +52 -0
- lusid/models/future.py +52 -0
- lusid/models/future_expiry_event.py +52 -0
- lusid/models/future_mark_to_market_event.py +52 -0
- lusid/models/fx_dependency.py +52 -0
- lusid/models/fx_forward.py +52 -0
- lusid/models/fx_forward_curve_by_quote_reference.py +52 -0
- lusid/models/fx_forward_curve_data.py +52 -0
- lusid/models/fx_forward_model_options.py +156 -0
- lusid/models/fx_forward_pips_curve_data.py +52 -0
- lusid/models/fx_forward_settlement_event.py +52 -0
- lusid/models/fx_forward_tenor_curve_data.py +52 -0
- lusid/models/fx_forward_tenor_pips_curve_data.py +52 -0
- lusid/models/fx_forwards_dependency.py +52 -0
- lusid/models/fx_linked_notional_schedule.py +52 -0
- lusid/models/fx_option.py +52 -0
- lusid/models/fx_rate_schedule.py +52 -0
- lusid/models/fx_swap.py +52 -0
- lusid/models/fx_vol_dependency.py +52 -0
- lusid/models/fx_vol_surface_data.py +52 -0
- lusid/models/get_reference_portfolio_constituents_response.py +104 -0
- lusid/models/group_by_selector_compliance_parameter.py +52 -0
- lusid/models/group_by_step.py +52 -0
- lusid/models/group_by_step_request.py +52 -0
- lusid/models/group_calculation_compliance_parameter.py +52 -0
- lusid/models/group_filter_predicate_compliance_parameter.py +52 -0
- lusid/models/group_filter_step.py +52 -0
- lusid/models/group_filter_step_request.py +52 -0
- lusid/models/holdings_adjustment.py +52 -0
- lusid/models/holdings_adjustment_header.py +52 -0
- lusid/models/i_unit_definition_dto.py +52 -0
- lusid/models/identifier_definition.py +104 -0
- lusid/models/index_model_options.py +104 -0
- lusid/models/index_projection_dependency.py +52 -0
- lusid/models/inflation_fixing_dependency.py +52 -0
- lusid/models/inflation_leg.py +52 -0
- lusid/models/inflation_linked_bond.py +52 -0
- lusid/models/inflation_swap.py +52 -0
- lusid/models/informational_error_event.py +52 -0
- lusid/models/informational_event.py +52 -0
- lusid/models/instrument.py +104 -0
- lusid/models/instrument_event.py +52 -0
- lusid/models/instrument_leg.py +52 -0
- lusid/models/instrument_list.py +52 -0
- lusid/models/instrument_list_compliance_parameter.py +52 -0
- lusid/models/interest_rate_swap.py +52 -0
- lusid/models/interest_rate_swaption.py +52 -0
- lusid/models/intermediate_compliance_step.py +52 -0
- lusid/models/intermediate_compliance_step_request.py +52 -0
- lusid/models/intermediate_securities_distribution_event.py +52 -0
- lusid/models/ir_vol_cube_data.py +52 -0
- lusid/models/ir_vol_dependency.py +52 -0
- lusid/models/life_cycle_event_value.py +52 -0
- lusid/models/loan_facility.py +52 -0
- lusid/models/loan_interest_repayment_event.py +52 -0
- lusid/models/loan_principal_repayment_event.py +52 -0
- lusid/models/lusid_instrument.py +52 -0
- lusid/models/lusid_trade_ticket.py +52 -0
- lusid/models/market_data_key_rule.py +52 -0
- lusid/models/market_data_options.py +52 -0
- lusid/models/market_data_specific_rule.py +52 -0
- lusid/models/market_quote.py +52 -0
- lusid/models/mastered_instrument.py +52 -0
- lusid/models/match_criterion.py +52 -0
- lusid/models/maturity_event.py +52 -0
- lusid/models/mbs_coupon_event.py +52 -0
- lusid/models/mbs_interest_deferral_event.py +52 -0
- lusid/models/mbs_interest_shortfall_event.py +52 -0
- lusid/models/mbs_principal_event.py +52 -0
- lusid/models/mbs_principal_write_off_event.py +52 -0
- lusid/models/merger_event.py +52 -0
- lusid/models/model_options.py +52 -0
- lusid/models/model_selection.py +104 -0
- lusid/models/opaque_dependency.py +52 -0
- lusid/models/opaque_market_data.py +52 -0
- lusid/models/opaque_model_options.py +52 -0
- lusid/models/open_event.py +52 -0
- lusid/models/option_exercise_cash_event.py +52 -0
- lusid/models/option_exercise_physical_event.py +52 -0
- lusid/models/optionality_schedule.py +52 -0
- lusid/models/order_by_spec.py +52 -0
- lusid/models/output_transaction.py +52 -0
- lusid/models/percent_check_step.py +52 -0
- lusid/models/percent_check_step_request.py +52 -0
- lusid/models/portfolio.py +104 -0
- lusid/models/portfolio_details.py +52 -0
- lusid/models/portfolio_group_id_compliance_parameter.py +52 -0
- lusid/models/portfolio_group_id_list.py +52 -0
- lusid/models/portfolio_group_id_list_compliance_parameter.py +52 -0
- lusid/models/portfolio_id_compliance_parameter.py +52 -0
- lusid/models/portfolio_id_list.py +52 -0
- lusid/models/portfolio_id_list_compliance_parameter.py +52 -0
- lusid/models/portfolio_result_data_key_rule.py +52 -0
- lusid/models/portfolio_search_result.py +52 -0
- lusid/models/portfolio_without_href.py +104 -0
- lusid/models/property_definition.py +312 -0
- lusid/models/property_definition_search_result.py +312 -0
- lusid/models/property_filter.py +104 -0
- lusid/models/property_key_compliance_parameter.py +52 -0
- lusid/models/property_key_list_compliance_parameter.py +52 -0
- lusid/models/property_list.py +52 -0
- lusid/models/property_list_compliance_parameter.py +52 -0
- lusid/models/property_value_equals.py +52 -0
- lusid/models/property_value_in.py +52 -0
- lusid/models/protection_payout_cash_flow_event.py +52 -0
- lusid/models/quote_dependency.py +52 -0
- lusid/models/quote_series_id.py +104 -0
- lusid/models/raw_vendor_event.py +52 -0
- lusid/models/recombine_step.py +52 -0
- lusid/models/reconcile_date_time_rule.py +104 -0
- lusid/models/reconcile_numeric_rule.py +104 -0
- lusid/models/reconcile_string_rule.py +104 -0
- lusid/models/reconciliation_rule.py +52 -0
- lusid/models/reference_instrument.py +52 -0
- lusid/models/reference_list.py +52 -0
- lusid/models/repo.py +52 -0
- lusid/models/reset_event.py +52 -0
- lusid/models/resource_list_of_value_type.py +1 -1
- lusid/models/result_data_key_rule.py +52 -0
- lusid/models/result_key_rule.py +52 -0
- lusid/models/result_value.py +52 -0
- lusid/models/result_value0_d.py +52 -0
- lusid/models/result_value_bool.py +52 -0
- lusid/models/result_value_currency.py +52 -0
- lusid/models/result_value_date_time_offset.py +52 -0
- lusid/models/result_value_decimal.py +52 -0
- lusid/models/result_value_dictionary.py +52 -0
- lusid/models/result_value_int.py +52 -0
- lusid/models/result_value_string.py +52 -0
- lusid/models/reverse_stock_split_event.py +52 -0
- lusid/models/schedule.py +52 -0
- lusid/models/scrip_dividend_event.py +52 -0
- lusid/models/simple_cash_flow_loan.py +52 -0
- lusid/models/simple_instrument.py +104 -0
- lusid/models/spin_off_event.py +52 -0
- lusid/models/step_schedule.py +52 -0
- lusid/models/stock_dividend_event.py +52 -0
- lusid/models/stock_split_event.py +52 -0
- lusid/models/string_compliance_parameter.py +52 -0
- lusid/models/string_list.py +52 -0
- lusid/models/string_list_compliance_parameter.py +52 -0
- lusid/models/sub_holding_key_value_equals.py +52 -0
- lusid/models/swap_cash_flow_event.py +52 -0
- lusid/models/swap_principal_event.py +52 -0
- lusid/models/tender_event.py +52 -0
- lusid/models/term_deposit.py +52 -0
- lusid/models/term_deposit_interest_event.py +52 -0
- lusid/models/term_deposit_principal_event.py +52 -0
- lusid/models/total_return_swap.py +52 -0
- lusid/models/trade_ticket.py +52 -0
- lusid/models/transaction.py +52 -0
- lusid/models/transaction_configuration_movement_data.py +52 -0
- lusid/models/transaction_configuration_movement_data_request.py +52 -0
- lusid/models/transaction_configuration_type_alias.py +52 -0
- lusid/models/transaction_price.py +52 -0
- lusid/models/transaction_query_parameters.py +52 -0
- lusid/models/transition_event.py +52 -0
- lusid/models/trigger_event.py +52 -0
- lusid/models/update_deposit_amount_event.py +52 -0
- lusid/models/upsert_reference_portfolio_constituents_request.py +104 -0
- lusid/models/vendor_dependency.py +52 -0
- lusid/models/vendor_model_rule.py +52 -0
- lusid/models/weekend_mask.py +1 -1
- lusid/models/yield_curve_data.py +52 -0
- {lusid_sdk-2.1.748.dist-info → lusid_sdk-2.1.749.dist-info}/METADATA +1 -1
- {lusid_sdk-2.1.748.dist-info → lusid_sdk-2.1.749.dist-info}/RECORD +277 -277
- {lusid_sdk-2.1.748.dist-info → lusid_sdk-2.1.749.dist-info}/WHEEL +0 -0
lusid/models/instrument.py
CHANGED
@@ -56,6 +56,58 @@ class Instrument(BaseModel):
|
|
56
56
|
@validator('state')
|
57
57
|
def state_validate_enum(cls, value):
|
58
58
|
"""Validates the enum"""
|
59
|
+
|
60
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
61
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
62
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
63
|
+
|
64
|
+
|
65
|
+
# check it's a class that uses the 'type' property as a discriminator
|
66
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
67
|
+
if 'Instrument' not in [
|
68
|
+
# For notification application classes
|
69
|
+
'AmazonSqsNotificationType',
|
70
|
+
'AmazonSqsNotificationTypeResponse',
|
71
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
72
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
73
|
+
'AzureServiceBusTypeResponse',
|
74
|
+
'AzureServiceBusNotificationType',
|
75
|
+
'EmailNotificationType',
|
76
|
+
'EmailNotificationTypeResponse',
|
77
|
+
'SmsNotificationType',
|
78
|
+
'SmsNotificationTypeResponse',
|
79
|
+
'WebhookNotificationType',
|
80
|
+
'WebhookNotificationTypeResponse',
|
81
|
+
|
82
|
+
# For workflow application classes
|
83
|
+
'CreateChildTasksAction',
|
84
|
+
'RunWorkerAction',
|
85
|
+
'TriggerParentTaskAction',
|
86
|
+
'CreateChildTasksActionResponse',
|
87
|
+
'RunWorkerActionResponse',
|
88
|
+
'TriggerParentTaskActionResponse',
|
89
|
+
'CreateNewTaskActivity',
|
90
|
+
'UpdateMatchingTasksActivity',
|
91
|
+
'CreateNewTaskActivityResponse',
|
92
|
+
'UpdateMatchingTasksActivityResponse',
|
93
|
+
'Fail',
|
94
|
+
'GroupReconciliation',
|
95
|
+
'HealthCheck',
|
96
|
+
'LuminesceView',
|
97
|
+
'SchedulerJob',
|
98
|
+
'Sleep',
|
99
|
+
'FailResponse',
|
100
|
+
'GroupReconciliationResponse',
|
101
|
+
'HealthCheckResponse',
|
102
|
+
'LuminesceViewResponse',
|
103
|
+
'SchedulerJobResponse',
|
104
|
+
'SleepResponse']:
|
105
|
+
return value
|
106
|
+
|
107
|
+
# Only validate the 'type' property of the class
|
108
|
+
if "state" != "type":
|
109
|
+
return value
|
110
|
+
|
59
111
|
if value not in ('Active', 'Inactive', 'Deleted'):
|
60
112
|
raise ValueError("must be one of enum values ('Active', 'Inactive', 'Deleted')")
|
61
113
|
return value
|
@@ -63,6 +115,58 @@ class Instrument(BaseModel):
|
|
63
115
|
@validator('asset_class')
|
64
116
|
def asset_class_validate_enum(cls, value):
|
65
117
|
"""Validates the enum"""
|
118
|
+
|
119
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
120
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
121
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
122
|
+
|
123
|
+
|
124
|
+
# check it's a class that uses the 'type' property as a discriminator
|
125
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
126
|
+
if 'Instrument' not in [
|
127
|
+
# For notification application classes
|
128
|
+
'AmazonSqsNotificationType',
|
129
|
+
'AmazonSqsNotificationTypeResponse',
|
130
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
131
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
132
|
+
'AzureServiceBusTypeResponse',
|
133
|
+
'AzureServiceBusNotificationType',
|
134
|
+
'EmailNotificationType',
|
135
|
+
'EmailNotificationTypeResponse',
|
136
|
+
'SmsNotificationType',
|
137
|
+
'SmsNotificationTypeResponse',
|
138
|
+
'WebhookNotificationType',
|
139
|
+
'WebhookNotificationTypeResponse',
|
140
|
+
|
141
|
+
# For workflow application classes
|
142
|
+
'CreateChildTasksAction',
|
143
|
+
'RunWorkerAction',
|
144
|
+
'TriggerParentTaskAction',
|
145
|
+
'CreateChildTasksActionResponse',
|
146
|
+
'RunWorkerActionResponse',
|
147
|
+
'TriggerParentTaskActionResponse',
|
148
|
+
'CreateNewTaskActivity',
|
149
|
+
'UpdateMatchingTasksActivity',
|
150
|
+
'CreateNewTaskActivityResponse',
|
151
|
+
'UpdateMatchingTasksActivityResponse',
|
152
|
+
'Fail',
|
153
|
+
'GroupReconciliation',
|
154
|
+
'HealthCheck',
|
155
|
+
'LuminesceView',
|
156
|
+
'SchedulerJob',
|
157
|
+
'Sleep',
|
158
|
+
'FailResponse',
|
159
|
+
'GroupReconciliationResponse',
|
160
|
+
'HealthCheckResponse',
|
161
|
+
'LuminesceViewResponse',
|
162
|
+
'SchedulerJobResponse',
|
163
|
+
'SleepResponse']:
|
164
|
+
return value
|
165
|
+
|
166
|
+
# Only validate the 'type' property of the class
|
167
|
+
if "asset_class" != "type":
|
168
|
+
return value
|
169
|
+
|
66
170
|
if value is None:
|
67
171
|
return value
|
68
172
|
|
lusid/models/instrument_event.py
CHANGED
@@ -32,6 +32,58 @@ class InstrumentEvent(BaseModel):
|
|
32
32
|
@validator('instrument_event_type')
|
33
33
|
def instrument_event_type_validate_enum(cls, value):
|
34
34
|
"""Validates the enum"""
|
35
|
+
|
36
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
37
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
38
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
39
|
+
|
40
|
+
|
41
|
+
# check it's a class that uses the 'type' property as a discriminator
|
42
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
43
|
+
if 'InstrumentEvent' not in [
|
44
|
+
# For notification application classes
|
45
|
+
'AmazonSqsNotificationType',
|
46
|
+
'AmazonSqsNotificationTypeResponse',
|
47
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
48
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
49
|
+
'AzureServiceBusTypeResponse',
|
50
|
+
'AzureServiceBusNotificationType',
|
51
|
+
'EmailNotificationType',
|
52
|
+
'EmailNotificationTypeResponse',
|
53
|
+
'SmsNotificationType',
|
54
|
+
'SmsNotificationTypeResponse',
|
55
|
+
'WebhookNotificationType',
|
56
|
+
'WebhookNotificationTypeResponse',
|
57
|
+
|
58
|
+
# For workflow application classes
|
59
|
+
'CreateChildTasksAction',
|
60
|
+
'RunWorkerAction',
|
61
|
+
'TriggerParentTaskAction',
|
62
|
+
'CreateChildTasksActionResponse',
|
63
|
+
'RunWorkerActionResponse',
|
64
|
+
'TriggerParentTaskActionResponse',
|
65
|
+
'CreateNewTaskActivity',
|
66
|
+
'UpdateMatchingTasksActivity',
|
67
|
+
'CreateNewTaskActivityResponse',
|
68
|
+
'UpdateMatchingTasksActivityResponse',
|
69
|
+
'Fail',
|
70
|
+
'GroupReconciliation',
|
71
|
+
'HealthCheck',
|
72
|
+
'LuminesceView',
|
73
|
+
'SchedulerJob',
|
74
|
+
'Sleep',
|
75
|
+
'FailResponse',
|
76
|
+
'GroupReconciliationResponse',
|
77
|
+
'HealthCheckResponse',
|
78
|
+
'LuminesceViewResponse',
|
79
|
+
'SchedulerJobResponse',
|
80
|
+
'SleepResponse']:
|
81
|
+
return value
|
82
|
+
|
83
|
+
# Only validate the 'type' property of the class
|
84
|
+
if "instrument_event_type" != "type":
|
85
|
+
return value
|
86
|
+
|
35
87
|
if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent', 'IntermediateSecuritiesDistributionEvent', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent', 'EarlyRedemptionEvent', 'FutureMarkToMarketEvent', 'AdjustGlobalCommitmentEvent', 'ContractInitialisationEvent', 'DrawdownEvent', 'LoanInterestRepaymentEvent', 'UpdateDepositAmountEvent', 'LoanPrincipalRepaymentEvent', 'DepositInterestPaymentEvent', 'DepositCloseEvent'):
|
36
88
|
raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent', 'IntermediateSecuritiesDistributionEvent', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent', 'EarlyRedemptionEvent', 'FutureMarkToMarketEvent', 'AdjustGlobalCommitmentEvent', 'ContractInitialisationEvent', 'DrawdownEvent', 'LoanInterestRepaymentEvent', 'UpdateDepositAmountEvent', 'LoanPrincipalRepaymentEvent', 'DepositInterestPaymentEvent', 'DepositCloseEvent')")
|
37
89
|
return value
|
lusid/models/instrument_leg.py
CHANGED
@@ -34,6 +34,58 @@ class InstrumentLeg(LusidInstrument):
|
|
34
34
|
@validator('instrument_type')
|
35
35
|
def instrument_type_validate_enum(cls, value):
|
36
36
|
"""Validates the enum"""
|
37
|
+
|
38
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
39
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
40
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
41
|
+
|
42
|
+
|
43
|
+
# check it's a class that uses the 'type' property as a discriminator
|
44
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
45
|
+
if 'InstrumentLeg' not in [
|
46
|
+
# For notification application classes
|
47
|
+
'AmazonSqsNotificationType',
|
48
|
+
'AmazonSqsNotificationTypeResponse',
|
49
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
50
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
51
|
+
'AzureServiceBusTypeResponse',
|
52
|
+
'AzureServiceBusNotificationType',
|
53
|
+
'EmailNotificationType',
|
54
|
+
'EmailNotificationTypeResponse',
|
55
|
+
'SmsNotificationType',
|
56
|
+
'SmsNotificationTypeResponse',
|
57
|
+
'WebhookNotificationType',
|
58
|
+
'WebhookNotificationTypeResponse',
|
59
|
+
|
60
|
+
# For workflow application classes
|
61
|
+
'CreateChildTasksAction',
|
62
|
+
'RunWorkerAction',
|
63
|
+
'TriggerParentTaskAction',
|
64
|
+
'CreateChildTasksActionResponse',
|
65
|
+
'RunWorkerActionResponse',
|
66
|
+
'TriggerParentTaskActionResponse',
|
67
|
+
'CreateNewTaskActivity',
|
68
|
+
'UpdateMatchingTasksActivity',
|
69
|
+
'CreateNewTaskActivityResponse',
|
70
|
+
'UpdateMatchingTasksActivityResponse',
|
71
|
+
'Fail',
|
72
|
+
'GroupReconciliation',
|
73
|
+
'HealthCheck',
|
74
|
+
'LuminesceView',
|
75
|
+
'SchedulerJob',
|
76
|
+
'Sleep',
|
77
|
+
'FailResponse',
|
78
|
+
'GroupReconciliationResponse',
|
79
|
+
'HealthCheckResponse',
|
80
|
+
'LuminesceViewResponse',
|
81
|
+
'SchedulerJobResponse',
|
82
|
+
'SleepResponse']:
|
83
|
+
return value
|
84
|
+
|
85
|
+
# Only validate the 'type' property of the class
|
86
|
+
if "instrument_type" != "type":
|
87
|
+
return value
|
88
|
+
|
37
89
|
if value not in ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit'):
|
38
90
|
raise ValueError("must be one of enum values ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit')")
|
39
91
|
return value
|
lusid/models/instrument_list.py
CHANGED
@@ -34,6 +34,58 @@ class InstrumentList(ReferenceList):
|
|
34
34
|
@validator('reference_list_type')
|
35
35
|
def reference_list_type_validate_enum(cls, value):
|
36
36
|
"""Validates the enum"""
|
37
|
+
|
38
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
39
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
40
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
41
|
+
|
42
|
+
|
43
|
+
# check it's a class that uses the 'type' property as a discriminator
|
44
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
45
|
+
if 'InstrumentList' not in [
|
46
|
+
# For notification application classes
|
47
|
+
'AmazonSqsNotificationType',
|
48
|
+
'AmazonSqsNotificationTypeResponse',
|
49
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
50
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
51
|
+
'AzureServiceBusTypeResponse',
|
52
|
+
'AzureServiceBusNotificationType',
|
53
|
+
'EmailNotificationType',
|
54
|
+
'EmailNotificationTypeResponse',
|
55
|
+
'SmsNotificationType',
|
56
|
+
'SmsNotificationTypeResponse',
|
57
|
+
'WebhookNotificationType',
|
58
|
+
'WebhookNotificationTypeResponse',
|
59
|
+
|
60
|
+
# For workflow application classes
|
61
|
+
'CreateChildTasksAction',
|
62
|
+
'RunWorkerAction',
|
63
|
+
'TriggerParentTaskAction',
|
64
|
+
'CreateChildTasksActionResponse',
|
65
|
+
'RunWorkerActionResponse',
|
66
|
+
'TriggerParentTaskActionResponse',
|
67
|
+
'CreateNewTaskActivity',
|
68
|
+
'UpdateMatchingTasksActivity',
|
69
|
+
'CreateNewTaskActivityResponse',
|
70
|
+
'UpdateMatchingTasksActivityResponse',
|
71
|
+
'Fail',
|
72
|
+
'GroupReconciliation',
|
73
|
+
'HealthCheck',
|
74
|
+
'LuminesceView',
|
75
|
+
'SchedulerJob',
|
76
|
+
'Sleep',
|
77
|
+
'FailResponse',
|
78
|
+
'GroupReconciliationResponse',
|
79
|
+
'HealthCheckResponse',
|
80
|
+
'LuminesceViewResponse',
|
81
|
+
'SchedulerJobResponse',
|
82
|
+
'SleepResponse']:
|
83
|
+
return value
|
84
|
+
|
85
|
+
# Only validate the 'type' property of the class
|
86
|
+
if "reference_list_type" != "type":
|
87
|
+
return value
|
88
|
+
|
37
89
|
if value not in ('PortfolioGroupIdList', 'PortfolioIdList', 'AddressKeyList', 'StringList', 'InstrumentList', 'DecimalList', 'PropertyList', 'FundIdList'):
|
38
90
|
raise ValueError("must be one of enum values ('PortfolioGroupIdList', 'PortfolioIdList', 'AddressKeyList', 'StringList', 'InstrumentList', 'DecimalList', 'PropertyList', 'FundIdList')")
|
39
91
|
return value
|
@@ -35,6 +35,58 @@ class InstrumentListComplianceParameter(ComplianceParameter):
|
|
35
35
|
@validator('compliance_parameter_type')
|
36
36
|
def compliance_parameter_type_validate_enum(cls, value):
|
37
37
|
"""Validates the enum"""
|
38
|
+
|
39
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
40
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
41
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
42
|
+
|
43
|
+
|
44
|
+
# check it's a class that uses the 'type' property as a discriminator
|
45
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
46
|
+
if 'InstrumentListComplianceParameter' not in [
|
47
|
+
# For notification application classes
|
48
|
+
'AmazonSqsNotificationType',
|
49
|
+
'AmazonSqsNotificationTypeResponse',
|
50
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
51
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
52
|
+
'AzureServiceBusTypeResponse',
|
53
|
+
'AzureServiceBusNotificationType',
|
54
|
+
'EmailNotificationType',
|
55
|
+
'EmailNotificationTypeResponse',
|
56
|
+
'SmsNotificationType',
|
57
|
+
'SmsNotificationTypeResponse',
|
58
|
+
'WebhookNotificationType',
|
59
|
+
'WebhookNotificationTypeResponse',
|
60
|
+
|
61
|
+
# For workflow application classes
|
62
|
+
'CreateChildTasksAction',
|
63
|
+
'RunWorkerAction',
|
64
|
+
'TriggerParentTaskAction',
|
65
|
+
'CreateChildTasksActionResponse',
|
66
|
+
'RunWorkerActionResponse',
|
67
|
+
'TriggerParentTaskActionResponse',
|
68
|
+
'CreateNewTaskActivity',
|
69
|
+
'UpdateMatchingTasksActivity',
|
70
|
+
'CreateNewTaskActivityResponse',
|
71
|
+
'UpdateMatchingTasksActivityResponse',
|
72
|
+
'Fail',
|
73
|
+
'GroupReconciliation',
|
74
|
+
'HealthCheck',
|
75
|
+
'LuminesceView',
|
76
|
+
'SchedulerJob',
|
77
|
+
'Sleep',
|
78
|
+
'FailResponse',
|
79
|
+
'GroupReconciliationResponse',
|
80
|
+
'HealthCheckResponse',
|
81
|
+
'LuminesceViewResponse',
|
82
|
+
'SchedulerJobResponse',
|
83
|
+
'SleepResponse']:
|
84
|
+
return value
|
85
|
+
|
86
|
+
# Only validate the 'type' property of the class
|
87
|
+
if "compliance_parameter_type" != "type":
|
88
|
+
return value
|
89
|
+
|
38
90
|
if value not in ('BoolComplianceParameter', 'StringComplianceParameter', 'DecimalComplianceParameter', 'DateTimeComplianceParameter', 'PropertyKeyComplianceParameter', 'AddressKeyComplianceParameter', 'PortfolioIdComplianceParameter', 'PortfolioGroupIdComplianceParameter', 'StringListComplianceParameter', 'BoolListComplianceParameter', 'DateTimeListComplianceParameter', 'DecimalListComplianceParameter', 'PropertyKeyListComplianceParameter', 'AddressKeyListComplianceParameter', 'PortfolioIdListComplianceParameter', 'PortfolioGroupIdListComplianceParameter', 'InstrumentListComplianceParameter', 'FilterPredicateComplianceParameter', 'GroupFilterPredicateComplianceParameter', 'GroupBySelectorComplianceParameter', 'PropertyListComplianceParameter', 'GroupCalculationComplianceParameter'):
|
39
91
|
raise ValueError("must be one of enum values ('BoolComplianceParameter', 'StringComplianceParameter', 'DecimalComplianceParameter', 'DateTimeComplianceParameter', 'PropertyKeyComplianceParameter', 'AddressKeyComplianceParameter', 'PortfolioIdComplianceParameter', 'PortfolioGroupIdComplianceParameter', 'StringListComplianceParameter', 'BoolListComplianceParameter', 'DateTimeListComplianceParameter', 'DecimalListComplianceParameter', 'PropertyKeyListComplianceParameter', 'AddressKeyListComplianceParameter', 'PortfolioIdListComplianceParameter', 'PortfolioGroupIdListComplianceParameter', 'InstrumentListComplianceParameter', 'FilterPredicateComplianceParameter', 'GroupFilterPredicateComplianceParameter', 'GroupBySelectorComplianceParameter', 'PropertyListComplianceParameter', 'GroupCalculationComplianceParameter')")
|
40
92
|
return value
|
@@ -41,6 +41,58 @@ class InterestRateSwap(LusidInstrument):
|
|
41
41
|
@validator('instrument_type')
|
42
42
|
def instrument_type_validate_enum(cls, value):
|
43
43
|
"""Validates the enum"""
|
44
|
+
|
45
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
46
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
47
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
48
|
+
|
49
|
+
|
50
|
+
# check it's a class that uses the 'type' property as a discriminator
|
51
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
52
|
+
if 'InterestRateSwap' not in [
|
53
|
+
# For notification application classes
|
54
|
+
'AmazonSqsNotificationType',
|
55
|
+
'AmazonSqsNotificationTypeResponse',
|
56
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
57
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
58
|
+
'AzureServiceBusTypeResponse',
|
59
|
+
'AzureServiceBusNotificationType',
|
60
|
+
'EmailNotificationType',
|
61
|
+
'EmailNotificationTypeResponse',
|
62
|
+
'SmsNotificationType',
|
63
|
+
'SmsNotificationTypeResponse',
|
64
|
+
'WebhookNotificationType',
|
65
|
+
'WebhookNotificationTypeResponse',
|
66
|
+
|
67
|
+
# For workflow application classes
|
68
|
+
'CreateChildTasksAction',
|
69
|
+
'RunWorkerAction',
|
70
|
+
'TriggerParentTaskAction',
|
71
|
+
'CreateChildTasksActionResponse',
|
72
|
+
'RunWorkerActionResponse',
|
73
|
+
'TriggerParentTaskActionResponse',
|
74
|
+
'CreateNewTaskActivity',
|
75
|
+
'UpdateMatchingTasksActivity',
|
76
|
+
'CreateNewTaskActivityResponse',
|
77
|
+
'UpdateMatchingTasksActivityResponse',
|
78
|
+
'Fail',
|
79
|
+
'GroupReconciliation',
|
80
|
+
'HealthCheck',
|
81
|
+
'LuminesceView',
|
82
|
+
'SchedulerJob',
|
83
|
+
'Sleep',
|
84
|
+
'FailResponse',
|
85
|
+
'GroupReconciliationResponse',
|
86
|
+
'HealthCheckResponse',
|
87
|
+
'LuminesceViewResponse',
|
88
|
+
'SchedulerJobResponse',
|
89
|
+
'SleepResponse']:
|
90
|
+
return value
|
91
|
+
|
92
|
+
# Only validate the 'type' property of the class
|
93
|
+
if "instrument_type" != "type":
|
94
|
+
return value
|
95
|
+
|
44
96
|
if value not in ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit'):
|
45
97
|
raise ValueError("must be one of enum values ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit')")
|
46
98
|
return value
|
@@ -40,6 +40,58 @@ class InterestRateSwaption(LusidInstrument):
|
|
40
40
|
@validator('instrument_type')
|
41
41
|
def instrument_type_validate_enum(cls, value):
|
42
42
|
"""Validates the enum"""
|
43
|
+
|
44
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
45
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
46
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
47
|
+
|
48
|
+
|
49
|
+
# check it's a class that uses the 'type' property as a discriminator
|
50
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
51
|
+
if 'InterestRateSwaption' not in [
|
52
|
+
# For notification application classes
|
53
|
+
'AmazonSqsNotificationType',
|
54
|
+
'AmazonSqsNotificationTypeResponse',
|
55
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
56
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
57
|
+
'AzureServiceBusTypeResponse',
|
58
|
+
'AzureServiceBusNotificationType',
|
59
|
+
'EmailNotificationType',
|
60
|
+
'EmailNotificationTypeResponse',
|
61
|
+
'SmsNotificationType',
|
62
|
+
'SmsNotificationTypeResponse',
|
63
|
+
'WebhookNotificationType',
|
64
|
+
'WebhookNotificationTypeResponse',
|
65
|
+
|
66
|
+
# For workflow application classes
|
67
|
+
'CreateChildTasksAction',
|
68
|
+
'RunWorkerAction',
|
69
|
+
'TriggerParentTaskAction',
|
70
|
+
'CreateChildTasksActionResponse',
|
71
|
+
'RunWorkerActionResponse',
|
72
|
+
'TriggerParentTaskActionResponse',
|
73
|
+
'CreateNewTaskActivity',
|
74
|
+
'UpdateMatchingTasksActivity',
|
75
|
+
'CreateNewTaskActivityResponse',
|
76
|
+
'UpdateMatchingTasksActivityResponse',
|
77
|
+
'Fail',
|
78
|
+
'GroupReconciliation',
|
79
|
+
'HealthCheck',
|
80
|
+
'LuminesceView',
|
81
|
+
'SchedulerJob',
|
82
|
+
'Sleep',
|
83
|
+
'FailResponse',
|
84
|
+
'GroupReconciliationResponse',
|
85
|
+
'HealthCheckResponse',
|
86
|
+
'LuminesceViewResponse',
|
87
|
+
'SchedulerJobResponse',
|
88
|
+
'SleepResponse']:
|
89
|
+
return value
|
90
|
+
|
91
|
+
# Only validate the 'type' property of the class
|
92
|
+
if "instrument_type" != "type":
|
93
|
+
return value
|
94
|
+
|
43
95
|
if value not in ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit'):
|
44
96
|
raise ValueError("must be one of enum values ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit')")
|
45
97
|
return value
|
@@ -36,6 +36,58 @@ class IntermediateComplianceStep(ComplianceStep):
|
|
36
36
|
@validator('compliance_step_type')
|
37
37
|
def compliance_step_type_validate_enum(cls, value):
|
38
38
|
"""Validates the enum"""
|
39
|
+
|
40
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
41
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
42
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
43
|
+
|
44
|
+
|
45
|
+
# check it's a class that uses the 'type' property as a discriminator
|
46
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
47
|
+
if 'IntermediateComplianceStep' not in [
|
48
|
+
# For notification application classes
|
49
|
+
'AmazonSqsNotificationType',
|
50
|
+
'AmazonSqsNotificationTypeResponse',
|
51
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
52
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
53
|
+
'AzureServiceBusTypeResponse',
|
54
|
+
'AzureServiceBusNotificationType',
|
55
|
+
'EmailNotificationType',
|
56
|
+
'EmailNotificationTypeResponse',
|
57
|
+
'SmsNotificationType',
|
58
|
+
'SmsNotificationTypeResponse',
|
59
|
+
'WebhookNotificationType',
|
60
|
+
'WebhookNotificationTypeResponse',
|
61
|
+
|
62
|
+
# For workflow application classes
|
63
|
+
'CreateChildTasksAction',
|
64
|
+
'RunWorkerAction',
|
65
|
+
'TriggerParentTaskAction',
|
66
|
+
'CreateChildTasksActionResponse',
|
67
|
+
'RunWorkerActionResponse',
|
68
|
+
'TriggerParentTaskActionResponse',
|
69
|
+
'CreateNewTaskActivity',
|
70
|
+
'UpdateMatchingTasksActivity',
|
71
|
+
'CreateNewTaskActivityResponse',
|
72
|
+
'UpdateMatchingTasksActivityResponse',
|
73
|
+
'Fail',
|
74
|
+
'GroupReconciliation',
|
75
|
+
'HealthCheck',
|
76
|
+
'LuminesceView',
|
77
|
+
'SchedulerJob',
|
78
|
+
'Sleep',
|
79
|
+
'FailResponse',
|
80
|
+
'GroupReconciliationResponse',
|
81
|
+
'HealthCheckResponse',
|
82
|
+
'LuminesceViewResponse',
|
83
|
+
'SchedulerJobResponse',
|
84
|
+
'SleepResponse']:
|
85
|
+
return value
|
86
|
+
|
87
|
+
# Only validate the 'type' property of the class
|
88
|
+
if "compliance_step_type" != "type":
|
89
|
+
return value
|
90
|
+
|
39
91
|
if value not in ('FilterStep', 'GroupByStep', 'GroupFilterStep', 'BranchStep', 'RecombineStep', 'CheckStep', 'PercentCheckStep'):
|
40
92
|
raise ValueError("must be one of enum values ('FilterStep', 'GroupByStep', 'GroupFilterStep', 'BranchStep', 'RecombineStep', 'CheckStep', 'PercentCheckStep')")
|
41
93
|
return value
|
@@ -34,6 +34,58 @@ class IntermediateComplianceStepRequest(ComplianceStepRequest):
|
|
34
34
|
@validator('compliance_step_type_request')
|
35
35
|
def compliance_step_type_request_validate_enum(cls, value):
|
36
36
|
"""Validates the enum"""
|
37
|
+
|
38
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
39
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
40
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
41
|
+
|
42
|
+
|
43
|
+
# check it's a class that uses the 'type' property as a discriminator
|
44
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
45
|
+
if 'IntermediateComplianceStepRequest' not in [
|
46
|
+
# For notification application classes
|
47
|
+
'AmazonSqsNotificationType',
|
48
|
+
'AmazonSqsNotificationTypeResponse',
|
49
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
50
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
51
|
+
'AzureServiceBusTypeResponse',
|
52
|
+
'AzureServiceBusNotificationType',
|
53
|
+
'EmailNotificationType',
|
54
|
+
'EmailNotificationTypeResponse',
|
55
|
+
'SmsNotificationType',
|
56
|
+
'SmsNotificationTypeResponse',
|
57
|
+
'WebhookNotificationType',
|
58
|
+
'WebhookNotificationTypeResponse',
|
59
|
+
|
60
|
+
# For workflow application classes
|
61
|
+
'CreateChildTasksAction',
|
62
|
+
'RunWorkerAction',
|
63
|
+
'TriggerParentTaskAction',
|
64
|
+
'CreateChildTasksActionResponse',
|
65
|
+
'RunWorkerActionResponse',
|
66
|
+
'TriggerParentTaskActionResponse',
|
67
|
+
'CreateNewTaskActivity',
|
68
|
+
'UpdateMatchingTasksActivity',
|
69
|
+
'CreateNewTaskActivityResponse',
|
70
|
+
'UpdateMatchingTasksActivityResponse',
|
71
|
+
'Fail',
|
72
|
+
'GroupReconciliation',
|
73
|
+
'HealthCheck',
|
74
|
+
'LuminesceView',
|
75
|
+
'SchedulerJob',
|
76
|
+
'Sleep',
|
77
|
+
'FailResponse',
|
78
|
+
'GroupReconciliationResponse',
|
79
|
+
'HealthCheckResponse',
|
80
|
+
'LuminesceViewResponse',
|
81
|
+
'SchedulerJobResponse',
|
82
|
+
'SleepResponse']:
|
83
|
+
return value
|
84
|
+
|
85
|
+
# Only validate the 'type' property of the class
|
86
|
+
if "compliance_step_type_request" != "type":
|
87
|
+
return value
|
88
|
+
|
37
89
|
if value not in ('FilterStepRequest', 'GroupByStepRequest', 'GroupFilterStepRequest', 'BranchStepRequest', 'CheckStepRequest', 'PercentCheckStepRequest'):
|
38
90
|
raise ValueError("must be one of enum values ('FilterStepRequest', 'GroupByStepRequest', 'GroupFilterStepRequest', 'BranchStepRequest', 'CheckStepRequest', 'PercentCheckStepRequest')")
|
39
91
|
return value
|