lusid-sdk 2.1.747__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/api/entities_api.py +12 -12
- lusid/api/transaction_portfolios_api.py +17 -8
- 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.747.dist-info → lusid_sdk-2.1.749.dist-info}/METADATA +7 -7
- {lusid_sdk-2.1.747.dist-info → lusid_sdk-2.1.749.dist-info}/RECORD +279 -279
- {lusid_sdk-2.1.747.dist-info → lusid_sdk-2.1.749.dist-info}/WHEEL +0 -0
@@ -39,6 +39,58 @@ class FxLinkedNotionalSchedule(Schedule):
|
|
39
39
|
@validator('schedule_type')
|
40
40
|
def schedule_type_validate_enum(cls, value):
|
41
41
|
"""Validates the enum"""
|
42
|
+
|
43
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
44
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
45
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
46
|
+
|
47
|
+
|
48
|
+
# check it's a class that uses the 'type' property as a discriminator
|
49
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
50
|
+
if 'FxLinkedNotionalSchedule' not in [
|
51
|
+
# For notification application classes
|
52
|
+
'AmazonSqsNotificationType',
|
53
|
+
'AmazonSqsNotificationTypeResponse',
|
54
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
55
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
56
|
+
'AzureServiceBusTypeResponse',
|
57
|
+
'AzureServiceBusNotificationType',
|
58
|
+
'EmailNotificationType',
|
59
|
+
'EmailNotificationTypeResponse',
|
60
|
+
'SmsNotificationType',
|
61
|
+
'SmsNotificationTypeResponse',
|
62
|
+
'WebhookNotificationType',
|
63
|
+
'WebhookNotificationTypeResponse',
|
64
|
+
|
65
|
+
# For workflow application classes
|
66
|
+
'CreateChildTasksAction',
|
67
|
+
'RunWorkerAction',
|
68
|
+
'TriggerParentTaskAction',
|
69
|
+
'CreateChildTasksActionResponse',
|
70
|
+
'RunWorkerActionResponse',
|
71
|
+
'TriggerParentTaskActionResponse',
|
72
|
+
'CreateNewTaskActivity',
|
73
|
+
'UpdateMatchingTasksActivity',
|
74
|
+
'CreateNewTaskActivityResponse',
|
75
|
+
'UpdateMatchingTasksActivityResponse',
|
76
|
+
'Fail',
|
77
|
+
'GroupReconciliation',
|
78
|
+
'HealthCheck',
|
79
|
+
'LuminesceView',
|
80
|
+
'SchedulerJob',
|
81
|
+
'Sleep',
|
82
|
+
'FailResponse',
|
83
|
+
'GroupReconciliationResponse',
|
84
|
+
'HealthCheckResponse',
|
85
|
+
'LuminesceViewResponse',
|
86
|
+
'SchedulerJobResponse',
|
87
|
+
'SleepResponse']:
|
88
|
+
return value
|
89
|
+
|
90
|
+
# Only validate the 'type' property of the class
|
91
|
+
if "schedule_type" != "type":
|
92
|
+
return value
|
93
|
+
|
42
94
|
if value not in ('FixedSchedule', 'FloatSchedule', 'OptionalitySchedule', 'StepSchedule', 'Exercise', 'FxRateSchedule', 'FxLinkedNotionalSchedule', 'BondConversionSchedule', 'Invalid'):
|
43
95
|
raise ValueError("must be one of enum values ('FixedSchedule', 'FloatSchedule', 'OptionalitySchedule', 'StepSchedule', 'Exercise', 'FxRateSchedule', 'FxLinkedNotionalSchedule', 'BondConversionSchedule', 'Invalid')")
|
44
96
|
return value
|
lusid/models/fx_option.py
CHANGED
@@ -52,6 +52,58 @@ class FxOption(LusidInstrument):
|
|
52
52
|
@validator('instrument_type')
|
53
53
|
def instrument_type_validate_enum(cls, value):
|
54
54
|
"""Validates the enum"""
|
55
|
+
|
56
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
57
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
58
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
59
|
+
|
60
|
+
|
61
|
+
# check it's a class that uses the 'type' property as a discriminator
|
62
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
63
|
+
if 'FxOption' not in [
|
64
|
+
# For notification application classes
|
65
|
+
'AmazonSqsNotificationType',
|
66
|
+
'AmazonSqsNotificationTypeResponse',
|
67
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
68
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
69
|
+
'AzureServiceBusTypeResponse',
|
70
|
+
'AzureServiceBusNotificationType',
|
71
|
+
'EmailNotificationType',
|
72
|
+
'EmailNotificationTypeResponse',
|
73
|
+
'SmsNotificationType',
|
74
|
+
'SmsNotificationTypeResponse',
|
75
|
+
'WebhookNotificationType',
|
76
|
+
'WebhookNotificationTypeResponse',
|
77
|
+
|
78
|
+
# For workflow application classes
|
79
|
+
'CreateChildTasksAction',
|
80
|
+
'RunWorkerAction',
|
81
|
+
'TriggerParentTaskAction',
|
82
|
+
'CreateChildTasksActionResponse',
|
83
|
+
'RunWorkerActionResponse',
|
84
|
+
'TriggerParentTaskActionResponse',
|
85
|
+
'CreateNewTaskActivity',
|
86
|
+
'UpdateMatchingTasksActivity',
|
87
|
+
'CreateNewTaskActivityResponse',
|
88
|
+
'UpdateMatchingTasksActivityResponse',
|
89
|
+
'Fail',
|
90
|
+
'GroupReconciliation',
|
91
|
+
'HealthCheck',
|
92
|
+
'LuminesceView',
|
93
|
+
'SchedulerJob',
|
94
|
+
'Sleep',
|
95
|
+
'FailResponse',
|
96
|
+
'GroupReconciliationResponse',
|
97
|
+
'HealthCheckResponse',
|
98
|
+
'LuminesceViewResponse',
|
99
|
+
'SchedulerJobResponse',
|
100
|
+
'SleepResponse']:
|
101
|
+
return value
|
102
|
+
|
103
|
+
# Only validate the 'type' property of the class
|
104
|
+
if "instrument_type" != "type":
|
105
|
+
return value
|
106
|
+
|
55
107
|
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'):
|
56
108
|
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')")
|
57
109
|
return value
|
lusid/models/fx_rate_schedule.py
CHANGED
@@ -38,6 +38,58 @@ class FxRateSchedule(Schedule):
|
|
38
38
|
@validator('schedule_type')
|
39
39
|
def schedule_type_validate_enum(cls, value):
|
40
40
|
"""Validates the enum"""
|
41
|
+
|
42
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
43
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
44
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
45
|
+
|
46
|
+
|
47
|
+
# check it's a class that uses the 'type' property as a discriminator
|
48
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
49
|
+
if 'FxRateSchedule' not in [
|
50
|
+
# For notification application classes
|
51
|
+
'AmazonSqsNotificationType',
|
52
|
+
'AmazonSqsNotificationTypeResponse',
|
53
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
54
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
55
|
+
'AzureServiceBusTypeResponse',
|
56
|
+
'AzureServiceBusNotificationType',
|
57
|
+
'EmailNotificationType',
|
58
|
+
'EmailNotificationTypeResponse',
|
59
|
+
'SmsNotificationType',
|
60
|
+
'SmsNotificationTypeResponse',
|
61
|
+
'WebhookNotificationType',
|
62
|
+
'WebhookNotificationTypeResponse',
|
63
|
+
|
64
|
+
# For workflow application classes
|
65
|
+
'CreateChildTasksAction',
|
66
|
+
'RunWorkerAction',
|
67
|
+
'TriggerParentTaskAction',
|
68
|
+
'CreateChildTasksActionResponse',
|
69
|
+
'RunWorkerActionResponse',
|
70
|
+
'TriggerParentTaskActionResponse',
|
71
|
+
'CreateNewTaskActivity',
|
72
|
+
'UpdateMatchingTasksActivity',
|
73
|
+
'CreateNewTaskActivityResponse',
|
74
|
+
'UpdateMatchingTasksActivityResponse',
|
75
|
+
'Fail',
|
76
|
+
'GroupReconciliation',
|
77
|
+
'HealthCheck',
|
78
|
+
'LuminesceView',
|
79
|
+
'SchedulerJob',
|
80
|
+
'Sleep',
|
81
|
+
'FailResponse',
|
82
|
+
'GroupReconciliationResponse',
|
83
|
+
'HealthCheckResponse',
|
84
|
+
'LuminesceViewResponse',
|
85
|
+
'SchedulerJobResponse',
|
86
|
+
'SleepResponse']:
|
87
|
+
return value
|
88
|
+
|
89
|
+
# Only validate the 'type' property of the class
|
90
|
+
if "schedule_type" != "type":
|
91
|
+
return value
|
92
|
+
|
41
93
|
if value not in ('FixedSchedule', 'FloatSchedule', 'OptionalitySchedule', 'StepSchedule', 'Exercise', 'FxRateSchedule', 'FxLinkedNotionalSchedule', 'BondConversionSchedule', 'Invalid'):
|
42
94
|
raise ValueError("must be one of enum values ('FixedSchedule', 'FloatSchedule', 'OptionalitySchedule', 'StepSchedule', 'Exercise', 'FxRateSchedule', 'FxLinkedNotionalSchedule', 'BondConversionSchedule', 'Invalid')")
|
43
95
|
return value
|
lusid/models/fx_swap.py
CHANGED
@@ -37,6 +37,58 @@ class FxSwap(LusidInstrument):
|
|
37
37
|
@validator('instrument_type')
|
38
38
|
def instrument_type_validate_enum(cls, value):
|
39
39
|
"""Validates the enum"""
|
40
|
+
|
41
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
42
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
43
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
44
|
+
|
45
|
+
|
46
|
+
# check it's a class that uses the 'type' property as a discriminator
|
47
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
48
|
+
if 'FxSwap' not in [
|
49
|
+
# For notification application classes
|
50
|
+
'AmazonSqsNotificationType',
|
51
|
+
'AmazonSqsNotificationTypeResponse',
|
52
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
53
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
54
|
+
'AzureServiceBusTypeResponse',
|
55
|
+
'AzureServiceBusNotificationType',
|
56
|
+
'EmailNotificationType',
|
57
|
+
'EmailNotificationTypeResponse',
|
58
|
+
'SmsNotificationType',
|
59
|
+
'SmsNotificationTypeResponse',
|
60
|
+
'WebhookNotificationType',
|
61
|
+
'WebhookNotificationTypeResponse',
|
62
|
+
|
63
|
+
# For workflow application classes
|
64
|
+
'CreateChildTasksAction',
|
65
|
+
'RunWorkerAction',
|
66
|
+
'TriggerParentTaskAction',
|
67
|
+
'CreateChildTasksActionResponse',
|
68
|
+
'RunWorkerActionResponse',
|
69
|
+
'TriggerParentTaskActionResponse',
|
70
|
+
'CreateNewTaskActivity',
|
71
|
+
'UpdateMatchingTasksActivity',
|
72
|
+
'CreateNewTaskActivityResponse',
|
73
|
+
'UpdateMatchingTasksActivityResponse',
|
74
|
+
'Fail',
|
75
|
+
'GroupReconciliation',
|
76
|
+
'HealthCheck',
|
77
|
+
'LuminesceView',
|
78
|
+
'SchedulerJob',
|
79
|
+
'Sleep',
|
80
|
+
'FailResponse',
|
81
|
+
'GroupReconciliationResponse',
|
82
|
+
'HealthCheckResponse',
|
83
|
+
'LuminesceViewResponse',
|
84
|
+
'SchedulerJobResponse',
|
85
|
+
'SleepResponse']:
|
86
|
+
return value
|
87
|
+
|
88
|
+
# Only validate the 'type' property of the class
|
89
|
+
if "instrument_type" != "type":
|
90
|
+
return value
|
91
|
+
|
40
92
|
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'):
|
41
93
|
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')")
|
42
94
|
return value
|
@@ -37,6 +37,58 @@ class FxVolDependency(EconomicDependency):
|
|
37
37
|
@validator('dependency_type')
|
38
38
|
def dependency_type_validate_enum(cls, value):
|
39
39
|
"""Validates the enum"""
|
40
|
+
|
41
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
42
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
43
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
44
|
+
|
45
|
+
|
46
|
+
# check it's a class that uses the 'type' property as a discriminator
|
47
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
48
|
+
if 'FxVolDependency' not in [
|
49
|
+
# For notification application classes
|
50
|
+
'AmazonSqsNotificationType',
|
51
|
+
'AmazonSqsNotificationTypeResponse',
|
52
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
53
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
54
|
+
'AzureServiceBusTypeResponse',
|
55
|
+
'AzureServiceBusNotificationType',
|
56
|
+
'EmailNotificationType',
|
57
|
+
'EmailNotificationTypeResponse',
|
58
|
+
'SmsNotificationType',
|
59
|
+
'SmsNotificationTypeResponse',
|
60
|
+
'WebhookNotificationType',
|
61
|
+
'WebhookNotificationTypeResponse',
|
62
|
+
|
63
|
+
# For workflow application classes
|
64
|
+
'CreateChildTasksAction',
|
65
|
+
'RunWorkerAction',
|
66
|
+
'TriggerParentTaskAction',
|
67
|
+
'CreateChildTasksActionResponse',
|
68
|
+
'RunWorkerActionResponse',
|
69
|
+
'TriggerParentTaskActionResponse',
|
70
|
+
'CreateNewTaskActivity',
|
71
|
+
'UpdateMatchingTasksActivity',
|
72
|
+
'CreateNewTaskActivityResponse',
|
73
|
+
'UpdateMatchingTasksActivityResponse',
|
74
|
+
'Fail',
|
75
|
+
'GroupReconciliation',
|
76
|
+
'HealthCheck',
|
77
|
+
'LuminesceView',
|
78
|
+
'SchedulerJob',
|
79
|
+
'Sleep',
|
80
|
+
'FailResponse',
|
81
|
+
'GroupReconciliationResponse',
|
82
|
+
'HealthCheckResponse',
|
83
|
+
'LuminesceViewResponse',
|
84
|
+
'SchedulerJobResponse',
|
85
|
+
'SleepResponse']:
|
86
|
+
return value
|
87
|
+
|
88
|
+
# Only validate the 'type' property of the class
|
89
|
+
if "dependency_type" != "type":
|
90
|
+
return value
|
91
|
+
|
40
92
|
if value not in ('OpaqueDependency', 'CashDependency', 'DiscountingDependency', 'EquityCurveDependency', 'EquityVolDependency', 'FxDependency', 'FxForwardsDependency', 'FxVolDependency', 'IndexProjectionDependency', 'IrVolDependency', 'QuoteDependency', 'Vendor', 'CalendarDependency', 'InflationFixingDependency'):
|
41
93
|
raise ValueError("must be one of enum values ('OpaqueDependency', 'CashDependency', 'DiscountingDependency', 'EquityCurveDependency', 'EquityVolDependency', 'FxDependency', 'FxForwardsDependency', 'FxVolDependency', 'IndexProjectionDependency', 'IrVolDependency', 'QuoteDependency', 'Vendor', 'CalendarDependency', 'InflationFixingDependency')")
|
42
94
|
return value
|
@@ -39,6 +39,58 @@ class FxVolSurfaceData(ComplexMarketData):
|
|
39
39
|
@validator('market_data_type')
|
40
40
|
def market_data_type_validate_enum(cls, value):
|
41
41
|
"""Validates the enum"""
|
42
|
+
|
43
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
44
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
45
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
46
|
+
|
47
|
+
|
48
|
+
# check it's a class that uses the 'type' property as a discriminator
|
49
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
50
|
+
if 'FxVolSurfaceData' not in [
|
51
|
+
# For notification application classes
|
52
|
+
'AmazonSqsNotificationType',
|
53
|
+
'AmazonSqsNotificationTypeResponse',
|
54
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
55
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
56
|
+
'AzureServiceBusTypeResponse',
|
57
|
+
'AzureServiceBusNotificationType',
|
58
|
+
'EmailNotificationType',
|
59
|
+
'EmailNotificationTypeResponse',
|
60
|
+
'SmsNotificationType',
|
61
|
+
'SmsNotificationTypeResponse',
|
62
|
+
'WebhookNotificationType',
|
63
|
+
'WebhookNotificationTypeResponse',
|
64
|
+
|
65
|
+
# For workflow application classes
|
66
|
+
'CreateChildTasksAction',
|
67
|
+
'RunWorkerAction',
|
68
|
+
'TriggerParentTaskAction',
|
69
|
+
'CreateChildTasksActionResponse',
|
70
|
+
'RunWorkerActionResponse',
|
71
|
+
'TriggerParentTaskActionResponse',
|
72
|
+
'CreateNewTaskActivity',
|
73
|
+
'UpdateMatchingTasksActivity',
|
74
|
+
'CreateNewTaskActivityResponse',
|
75
|
+
'UpdateMatchingTasksActivityResponse',
|
76
|
+
'Fail',
|
77
|
+
'GroupReconciliation',
|
78
|
+
'HealthCheck',
|
79
|
+
'LuminesceView',
|
80
|
+
'SchedulerJob',
|
81
|
+
'Sleep',
|
82
|
+
'FailResponse',
|
83
|
+
'GroupReconciliationResponse',
|
84
|
+
'HealthCheckResponse',
|
85
|
+
'LuminesceViewResponse',
|
86
|
+
'SchedulerJobResponse',
|
87
|
+
'SleepResponse']:
|
88
|
+
return value
|
89
|
+
|
90
|
+
# Only validate the 'type' property of the class
|
91
|
+
if "market_data_type" != "type":
|
92
|
+
return value
|
93
|
+
|
42
94
|
if value not in ('DiscountFactorCurveData', 'EquityVolSurfaceData', 'FxVolSurfaceData', 'IrVolCubeData', 'OpaqueMarketData', 'YieldCurveData', 'FxForwardCurveData', 'FxForwardPipsCurveData', 'FxForwardTenorCurveData', 'FxForwardTenorPipsCurveData', 'FxForwardCurveByQuoteReference', 'CreditSpreadCurveData', 'EquityCurveByPricesData', 'ConstantVolatilitySurface'):
|
43
95
|
raise ValueError("must be one of enum values ('DiscountFactorCurveData', 'EquityVolSurfaceData', 'FxVolSurfaceData', 'IrVolCubeData', 'OpaqueMarketData', 'YieldCurveData', 'FxForwardCurveData', 'FxForwardPipsCurveData', 'FxForwardTenorCurveData', 'FxForwardTenorPipsCurveData', 'FxForwardCurveByQuoteReference', 'CreditSpreadCurveData', 'EquityCurveByPricesData', 'ConstantVolatilitySurface')")
|
44
96
|
return value
|
@@ -39,6 +39,58 @@ class GetReferencePortfolioConstituentsResponse(BaseModel):
|
|
39
39
|
@validator('weight_type')
|
40
40
|
def weight_type_validate_enum(cls, value):
|
41
41
|
"""Validates the enum"""
|
42
|
+
|
43
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
44
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
45
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
46
|
+
|
47
|
+
|
48
|
+
# check it's a class that uses the 'type' property as a discriminator
|
49
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
50
|
+
if 'GetReferencePortfolioConstituentsResponse' not in [
|
51
|
+
# For notification application classes
|
52
|
+
'AmazonSqsNotificationType',
|
53
|
+
'AmazonSqsNotificationTypeResponse',
|
54
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
55
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
56
|
+
'AzureServiceBusTypeResponse',
|
57
|
+
'AzureServiceBusNotificationType',
|
58
|
+
'EmailNotificationType',
|
59
|
+
'EmailNotificationTypeResponse',
|
60
|
+
'SmsNotificationType',
|
61
|
+
'SmsNotificationTypeResponse',
|
62
|
+
'WebhookNotificationType',
|
63
|
+
'WebhookNotificationTypeResponse',
|
64
|
+
|
65
|
+
# For workflow application classes
|
66
|
+
'CreateChildTasksAction',
|
67
|
+
'RunWorkerAction',
|
68
|
+
'TriggerParentTaskAction',
|
69
|
+
'CreateChildTasksActionResponse',
|
70
|
+
'RunWorkerActionResponse',
|
71
|
+
'TriggerParentTaskActionResponse',
|
72
|
+
'CreateNewTaskActivity',
|
73
|
+
'UpdateMatchingTasksActivity',
|
74
|
+
'CreateNewTaskActivityResponse',
|
75
|
+
'UpdateMatchingTasksActivityResponse',
|
76
|
+
'Fail',
|
77
|
+
'GroupReconciliation',
|
78
|
+
'HealthCheck',
|
79
|
+
'LuminesceView',
|
80
|
+
'SchedulerJob',
|
81
|
+
'Sleep',
|
82
|
+
'FailResponse',
|
83
|
+
'GroupReconciliationResponse',
|
84
|
+
'HealthCheckResponse',
|
85
|
+
'LuminesceViewResponse',
|
86
|
+
'SchedulerJobResponse',
|
87
|
+
'SleepResponse']:
|
88
|
+
return value
|
89
|
+
|
90
|
+
# Only validate the 'type' property of the class
|
91
|
+
if "weight_type" != "type":
|
92
|
+
return value
|
93
|
+
|
42
94
|
if value not in ('Static', 'Floating', 'Periodical'):
|
43
95
|
raise ValueError("must be one of enum values ('Static', 'Floating', 'Periodical')")
|
44
96
|
return value
|
@@ -46,6 +98,58 @@ class GetReferencePortfolioConstituentsResponse(BaseModel):
|
|
46
98
|
@validator('period_type')
|
47
99
|
def period_type_validate_enum(cls, value):
|
48
100
|
"""Validates the enum"""
|
101
|
+
|
102
|
+
# Finbourne have removed enum validation on all models, except for this use case:
|
103
|
+
# Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
|
104
|
+
# During instantiation, the value of 'type' is checked against the enum values,
|
105
|
+
|
106
|
+
|
107
|
+
# check it's a class that uses the 'type' property as a discriminator
|
108
|
+
# list of classes can be found by searching for 'actual_instance: Union[' in the generated code
|
109
|
+
if 'GetReferencePortfolioConstituentsResponse' not in [
|
110
|
+
# For notification application classes
|
111
|
+
'AmazonSqsNotificationType',
|
112
|
+
'AmazonSqsNotificationTypeResponse',
|
113
|
+
'AmazonSqsPrincipalAuthNotificationType',
|
114
|
+
'AmazonSqsPrincipalAuthNotificationTypeResponse',
|
115
|
+
'AzureServiceBusTypeResponse',
|
116
|
+
'AzureServiceBusNotificationType',
|
117
|
+
'EmailNotificationType',
|
118
|
+
'EmailNotificationTypeResponse',
|
119
|
+
'SmsNotificationType',
|
120
|
+
'SmsNotificationTypeResponse',
|
121
|
+
'WebhookNotificationType',
|
122
|
+
'WebhookNotificationTypeResponse',
|
123
|
+
|
124
|
+
# For workflow application classes
|
125
|
+
'CreateChildTasksAction',
|
126
|
+
'RunWorkerAction',
|
127
|
+
'TriggerParentTaskAction',
|
128
|
+
'CreateChildTasksActionResponse',
|
129
|
+
'RunWorkerActionResponse',
|
130
|
+
'TriggerParentTaskActionResponse',
|
131
|
+
'CreateNewTaskActivity',
|
132
|
+
'UpdateMatchingTasksActivity',
|
133
|
+
'CreateNewTaskActivityResponse',
|
134
|
+
'UpdateMatchingTasksActivityResponse',
|
135
|
+
'Fail',
|
136
|
+
'GroupReconciliation',
|
137
|
+
'HealthCheck',
|
138
|
+
'LuminesceView',
|
139
|
+
'SchedulerJob',
|
140
|
+
'Sleep',
|
141
|
+
'FailResponse',
|
142
|
+
'GroupReconciliationResponse',
|
143
|
+
'HealthCheckResponse',
|
144
|
+
'LuminesceViewResponse',
|
145
|
+
'SchedulerJobResponse',
|
146
|
+
'SleepResponse']:
|
147
|
+
return value
|
148
|
+
|
149
|
+
# Only validate the 'type' property of the class
|
150
|
+
if "period_type" != "type":
|
151
|
+
return value
|
152
|
+
|
49
153
|
if value is None:
|
50
154
|
return value
|
51
155
|
|
@@ -34,6 +34,58 @@ class GroupBySelectorComplianceParameter(ComplianceParameter):
|
|
34
34
|
@validator('compliance_parameter_type')
|
35
35
|
def compliance_parameter_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 'GroupBySelectorComplianceParameter' 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_parameter_type" != "type":
|
87
|
+
return value
|
88
|
+
|
37
89
|
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'):
|
38
90
|
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')")
|
39
91
|
return value
|
lusid/models/group_by_step.py
CHANGED
@@ -36,6 +36,58 @@ class GroupByStep(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 'GroupByStep' 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
|