lusid-sdk 2.1.748__py3-none-any.whl → 2.1.750__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (278) hide show
  1. lusid/configuration.py +1 -1
  2. lusid/models/access_metadata_operation.py +52 -0
  3. lusid/models/account.py +52 -0
  4. lusid/models/accumulation_event.py +52 -0
  5. lusid/models/address_definition.py +52 -0
  6. lusid/models/address_key_compliance_parameter.py +52 -0
  7. lusid/models/address_key_list.py +52 -0
  8. lusid/models/address_key_list_compliance_parameter.py +52 -0
  9. lusid/models/adjust_global_commitment_event.py +52 -0
  10. lusid/models/aggregate_spec.py +53 -1
  11. lusid/models/aggregation_query.py +104 -0
  12. lusid/models/amortisation_event.py +52 -0
  13. lusid/models/append_fx_forward_curve_by_quote_reference.py +52 -0
  14. lusid/models/append_fx_forward_curve_data.py +52 -0
  15. lusid/models/append_fx_forward_pips_curve_data.py +52 -0
  16. lusid/models/append_fx_forward_tenor_curve_data.py +52 -0
  17. lusid/models/append_fx_forward_tenor_pips_curve_data.py +52 -0
  18. lusid/models/append_market_data.py +52 -0
  19. lusid/models/basket.py +52 -0
  20. lusid/models/bond.py +52 -0
  21. lusid/models/bond_conversion_schedule.py +52 -0
  22. lusid/models/bond_coupon_event.py +52 -0
  23. lusid/models/bond_default_event.py +52 -0
  24. lusid/models/bond_principal_event.py +52 -0
  25. lusid/models/bonus_issue_event.py +52 -0
  26. lusid/models/bool_compliance_parameter.py +52 -0
  27. lusid/models/bool_list_compliance_parameter.py +52 -0
  28. lusid/models/branch_step.py +52 -0
  29. lusid/models/branch_step_request.py +52 -0
  30. lusid/models/calendar_dependency.py +52 -0
  31. lusid/models/call_on_intermediate_securities_event.py +52 -0
  32. lusid/models/cap_floor.py +52 -0
  33. lusid/models/capital_distribution_event.py +52 -0
  34. lusid/models/cash.py +52 -0
  35. lusid/models/cash_dependency.py +52 -0
  36. lusid/models/cash_dividend_event.py +52 -0
  37. lusid/models/cash_flow_event.py +52 -0
  38. lusid/models/cash_flow_value.py +52 -0
  39. lusid/models/cash_flow_value_set.py +52 -0
  40. lusid/models/cash_perpetual.py +52 -0
  41. lusid/models/cds_credit_event.py +52 -0
  42. lusid/models/cds_index.py +52 -0
  43. lusid/models/cdx_credit_event.py +52 -0
  44. lusid/models/change_history.py +52 -0
  45. lusid/models/check_step.py +52 -0
  46. lusid/models/check_step_request.py +52 -0
  47. lusid/models/close_event.py +52 -0
  48. lusid/models/complete_portfolio.py +52 -0
  49. lusid/models/complex_bond.py +52 -0
  50. lusid/models/complex_market_data.py +52 -0
  51. lusid/models/compliance_parameter.py +52 -0
  52. lusid/models/compliance_step.py +52 -0
  53. lusid/models/compliance_step_request.py +52 -0
  54. lusid/models/constant_volatility_surface.py +52 -0
  55. lusid/models/contract_for_difference.py +52 -0
  56. lusid/models/contract_initialisation_event.py +52 -0
  57. lusid/models/create_data_type_request.py +156 -0
  58. lusid/models/create_derived_property_definition_request.py +52 -0
  59. lusid/models/create_derived_transaction_portfolio_request.py +52 -0
  60. lusid/models/create_identifier_definition_request.py +104 -0
  61. lusid/models/create_property_definition_request.py +104 -0
  62. lusid/models/create_simple_position_portfolio_request.py +52 -0
  63. lusid/models/create_transaction_portfolio_request.py +52 -0
  64. lusid/models/credit_default_swap.py +52 -0
  65. lusid/models/credit_premium_cash_flow_event.py +52 -0
  66. lusid/models/credit_spread_curve_data.py +52 -0
  67. lusid/models/curve_options.py +52 -0
  68. lusid/models/data_type.py +156 -0
  69. lusid/models/data_type_summary.py +156 -0
  70. lusid/models/date_time_compliance_parameter.py +52 -0
  71. lusid/models/date_time_list_compliance_parameter.py +52 -0
  72. lusid/models/decimal_compliance_parameter.py +52 -0
  73. lusid/models/decimal_list.py +52 -0
  74. lusid/models/decimal_list_compliance_parameter.py +52 -0
  75. lusid/models/deposit_close_event.py +52 -0
  76. lusid/models/deposit_interest_payment_event.py +52 -0
  77. lusid/models/discount_factor_curve_data.py +52 -0
  78. lusid/models/discounting_dependency.py +52 -0
  79. lusid/models/dividend_option_event.py +52 -0
  80. lusid/models/dividend_reinvestment_event.py +52 -0
  81. lusid/models/drawdown_event.py +52 -0
  82. lusid/models/early_redemption_event.py +52 -0
  83. lusid/models/economic_dependency.py +52 -0
  84. lusid/models/empty_model_options.py +52 -0
  85. lusid/models/equity.py +52 -0
  86. lusid/models/equity_curve_by_prices_data.py +52 -0
  87. lusid/models/equity_curve_dependency.py +52 -0
  88. lusid/models/equity_model_options.py +52 -0
  89. lusid/models/equity_option.py +52 -0
  90. lusid/models/equity_swap.py +52 -0
  91. lusid/models/equity_vol_dependency.py +52 -0
  92. lusid/models/equity_vol_surface_data.py +52 -0
  93. lusid/models/exchange_traded_option.py +52 -0
  94. lusid/models/exercise_event.py +52 -0
  95. lusid/models/exotic_instrument.py +52 -0
  96. lusid/models/expiry_event.py +52 -0
  97. lusid/models/field_schema.py +52 -0
  98. lusid/models/filter_predicate_compliance_parameter.py +52 -0
  99. lusid/models/filter_step.py +52 -0
  100. lusid/models/filter_step_request.py +52 -0
  101. lusid/models/fixed_leg.py +52 -0
  102. lusid/models/fixed_schedule.py +52 -0
  103. lusid/models/flexible_deposit.py +52 -0
  104. lusid/models/flexible_loan.py +52 -0
  105. lusid/models/float_schedule.py +52 -0
  106. lusid/models/floating_leg.py +52 -0
  107. lusid/models/forward_rate_agreement.py +52 -0
  108. lusid/models/fund_id_list.py +52 -0
  109. lusid/models/fund_share_class.py +52 -0
  110. lusid/models/funding_leg.py +52 -0
  111. lusid/models/funding_leg_options.py +52 -0
  112. lusid/models/future.py +52 -0
  113. lusid/models/future_expiry_event.py +52 -0
  114. lusid/models/future_mark_to_market_event.py +52 -0
  115. lusid/models/fx_dependency.py +52 -0
  116. lusid/models/fx_forward.py +52 -0
  117. lusid/models/fx_forward_curve_by_quote_reference.py +52 -0
  118. lusid/models/fx_forward_curve_data.py +52 -0
  119. lusid/models/fx_forward_model_options.py +156 -0
  120. lusid/models/fx_forward_pips_curve_data.py +52 -0
  121. lusid/models/fx_forward_settlement_event.py +52 -0
  122. lusid/models/fx_forward_tenor_curve_data.py +52 -0
  123. lusid/models/fx_forward_tenor_pips_curve_data.py +52 -0
  124. lusid/models/fx_forwards_dependency.py +52 -0
  125. lusid/models/fx_linked_notional_schedule.py +52 -0
  126. lusid/models/fx_option.py +52 -0
  127. lusid/models/fx_rate_schedule.py +52 -0
  128. lusid/models/fx_swap.py +52 -0
  129. lusid/models/fx_vol_dependency.py +52 -0
  130. lusid/models/fx_vol_surface_data.py +52 -0
  131. lusid/models/get_reference_portfolio_constituents_response.py +104 -0
  132. lusid/models/group_by_selector_compliance_parameter.py +52 -0
  133. lusid/models/group_by_step.py +52 -0
  134. lusid/models/group_by_step_request.py +52 -0
  135. lusid/models/group_calculation_compliance_parameter.py +52 -0
  136. lusid/models/group_filter_predicate_compliance_parameter.py +52 -0
  137. lusid/models/group_filter_step.py +52 -0
  138. lusid/models/group_filter_step_request.py +52 -0
  139. lusid/models/holdings_adjustment.py +52 -0
  140. lusid/models/holdings_adjustment_header.py +52 -0
  141. lusid/models/i_unit_definition_dto.py +52 -0
  142. lusid/models/identifier_definition.py +104 -0
  143. lusid/models/index_model_options.py +104 -0
  144. lusid/models/index_projection_dependency.py +52 -0
  145. lusid/models/inflation_fixing_dependency.py +52 -0
  146. lusid/models/inflation_leg.py +52 -0
  147. lusid/models/inflation_linked_bond.py +52 -0
  148. lusid/models/inflation_swap.py +52 -0
  149. lusid/models/informational_error_event.py +52 -0
  150. lusid/models/informational_event.py +52 -0
  151. lusid/models/instrument.py +104 -0
  152. lusid/models/instrument_event.py +52 -0
  153. lusid/models/instrument_leg.py +52 -0
  154. lusid/models/instrument_list.py +52 -0
  155. lusid/models/instrument_list_compliance_parameter.py +52 -0
  156. lusid/models/interest_rate_swap.py +52 -0
  157. lusid/models/interest_rate_swaption.py +52 -0
  158. lusid/models/intermediate_compliance_step.py +52 -0
  159. lusid/models/intermediate_compliance_step_request.py +52 -0
  160. lusid/models/intermediate_securities_distribution_event.py +52 -0
  161. lusid/models/ir_vol_cube_data.py +52 -0
  162. lusid/models/ir_vol_dependency.py +52 -0
  163. lusid/models/life_cycle_event_value.py +52 -0
  164. lusid/models/loan_facility.py +52 -0
  165. lusid/models/loan_interest_repayment_event.py +52 -0
  166. lusid/models/loan_principal_repayment_event.py +52 -0
  167. lusid/models/lusid_instrument.py +52 -0
  168. lusid/models/lusid_trade_ticket.py +52 -0
  169. lusid/models/market_data_key_rule.py +52 -0
  170. lusid/models/market_data_options.py +52 -0
  171. lusid/models/market_data_specific_rule.py +52 -0
  172. lusid/models/market_quote.py +52 -0
  173. lusid/models/mastered_instrument.py +52 -0
  174. lusid/models/match_criterion.py +52 -0
  175. lusid/models/maturity_event.py +52 -0
  176. lusid/models/mbs_coupon_event.py +52 -0
  177. lusid/models/mbs_interest_deferral_event.py +52 -0
  178. lusid/models/mbs_interest_shortfall_event.py +52 -0
  179. lusid/models/mbs_principal_event.py +52 -0
  180. lusid/models/mbs_principal_write_off_event.py +52 -0
  181. lusid/models/merger_event.py +52 -0
  182. lusid/models/model_options.py +52 -0
  183. lusid/models/model_selection.py +104 -0
  184. lusid/models/opaque_dependency.py +52 -0
  185. lusid/models/opaque_market_data.py +52 -0
  186. lusid/models/opaque_model_options.py +53 -1
  187. lusid/models/open_event.py +52 -0
  188. lusid/models/option_exercise_cash_event.py +52 -0
  189. lusid/models/option_exercise_physical_event.py +52 -0
  190. lusid/models/optionality_schedule.py +52 -0
  191. lusid/models/order_by_spec.py +52 -0
  192. lusid/models/output_transaction.py +52 -0
  193. lusid/models/percent_check_step.py +52 -0
  194. lusid/models/percent_check_step_request.py +52 -0
  195. lusid/models/portfolio.py +104 -0
  196. lusid/models/portfolio_details.py +52 -0
  197. lusid/models/portfolio_group_id_compliance_parameter.py +52 -0
  198. lusid/models/portfolio_group_id_list.py +52 -0
  199. lusid/models/portfolio_group_id_list_compliance_parameter.py +52 -0
  200. lusid/models/portfolio_id_compliance_parameter.py +52 -0
  201. lusid/models/portfolio_id_list.py +52 -0
  202. lusid/models/portfolio_id_list_compliance_parameter.py +52 -0
  203. lusid/models/portfolio_result_data_key_rule.py +52 -0
  204. lusid/models/portfolio_search_result.py +52 -0
  205. lusid/models/portfolio_without_href.py +104 -0
  206. lusid/models/property_definition.py +312 -0
  207. lusid/models/property_definition_search_result.py +312 -0
  208. lusid/models/property_filter.py +104 -0
  209. lusid/models/property_key_compliance_parameter.py +52 -0
  210. lusid/models/property_key_list_compliance_parameter.py +52 -0
  211. lusid/models/property_list.py +52 -0
  212. lusid/models/property_list_compliance_parameter.py +52 -0
  213. lusid/models/property_value_equals.py +52 -0
  214. lusid/models/property_value_in.py +52 -0
  215. lusid/models/protection_payout_cash_flow_event.py +52 -0
  216. lusid/models/quote_dependency.py +52 -0
  217. lusid/models/quote_series_id.py +104 -0
  218. lusid/models/raw_vendor_event.py +52 -0
  219. lusid/models/recombine_step.py +52 -0
  220. lusid/models/reconcile_date_time_rule.py +104 -0
  221. lusid/models/reconcile_numeric_rule.py +104 -0
  222. lusid/models/reconcile_string_rule.py +104 -0
  223. lusid/models/reconciliation_line.py +4 -4
  224. lusid/models/reconciliation_rule.py +52 -0
  225. lusid/models/reference_instrument.py +52 -0
  226. lusid/models/reference_list.py +52 -0
  227. lusid/models/repo.py +52 -0
  228. lusid/models/reset_event.py +52 -0
  229. lusid/models/resource_list_of_value_type.py +1 -1
  230. lusid/models/result_data_key_rule.py +52 -0
  231. lusid/models/result_key_rule.py +52 -0
  232. lusid/models/result_value.py +52 -0
  233. lusid/models/result_value0_d.py +52 -0
  234. lusid/models/result_value_bool.py +52 -0
  235. lusid/models/result_value_currency.py +52 -0
  236. lusid/models/result_value_date_time_offset.py +52 -0
  237. lusid/models/result_value_decimal.py +52 -0
  238. lusid/models/result_value_dictionary.py +52 -0
  239. lusid/models/result_value_int.py +52 -0
  240. lusid/models/result_value_string.py +52 -0
  241. lusid/models/reverse_stock_split_event.py +52 -0
  242. lusid/models/schedule.py +52 -0
  243. lusid/models/scrip_dividend_event.py +52 -0
  244. lusid/models/simple_cash_flow_loan.py +52 -0
  245. lusid/models/simple_instrument.py +104 -0
  246. lusid/models/spin_off_event.py +52 -0
  247. lusid/models/step_schedule.py +52 -0
  248. lusid/models/stock_dividend_event.py +52 -0
  249. lusid/models/stock_split_event.py +52 -0
  250. lusid/models/string_compliance_parameter.py +52 -0
  251. lusid/models/string_list.py +52 -0
  252. lusid/models/string_list_compliance_parameter.py +52 -0
  253. lusid/models/sub_holding_key_value_equals.py +52 -0
  254. lusid/models/swap_cash_flow_event.py +52 -0
  255. lusid/models/swap_principal_event.py +52 -0
  256. lusid/models/tender_event.py +52 -0
  257. lusid/models/term_deposit.py +52 -0
  258. lusid/models/term_deposit_interest_event.py +52 -0
  259. lusid/models/term_deposit_principal_event.py +52 -0
  260. lusid/models/total_return_swap.py +52 -0
  261. lusid/models/trade_ticket.py +52 -0
  262. lusid/models/transaction.py +52 -0
  263. lusid/models/transaction_configuration_movement_data.py +52 -0
  264. lusid/models/transaction_configuration_movement_data_request.py +52 -0
  265. lusid/models/transaction_configuration_type_alias.py +52 -0
  266. lusid/models/transaction_price.py +52 -0
  267. lusid/models/transaction_query_parameters.py +52 -0
  268. lusid/models/transition_event.py +52 -0
  269. lusid/models/trigger_event.py +52 -0
  270. lusid/models/update_deposit_amount_event.py +52 -0
  271. lusid/models/upsert_reference_portfolio_constituents_request.py +104 -0
  272. lusid/models/vendor_dependency.py +52 -0
  273. lusid/models/vendor_model_rule.py +52 -0
  274. lusid/models/weekend_mask.py +1 -1
  275. lusid/models/yield_curve_data.py +52 -0
  276. {lusid_sdk-2.1.748.dist-info → lusid_sdk-2.1.750.dist-info}/METADATA +1 -1
  277. {lusid_sdk-2.1.748.dist-info → lusid_sdk-2.1.750.dist-info}/RECORD +278 -278
  278. {lusid_sdk-2.1.748.dist-info → lusid_sdk-2.1.750.dist-info}/WHEEL +0 -0
@@ -34,6 +34,58 @@ class TransactionQueryParameters(BaseModel):
34
34
  @validator('query_mode')
35
35
  def query_mode_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 'TransactionQueryParameters' 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 "query_mode" != "type":
87
+ return value
88
+
37
89
  if value is None:
38
90
  return value
39
91
 
@@ -41,6 +41,58 @@ class TransitionEvent(InstrumentEvent):
41
41
  @validator('instrument_event_type')
42
42
  def instrument_event_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 'TransitionEvent' 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_event_type" != "type":
94
+ return value
95
+
44
96
  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'):
45
97
  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')")
46
98
  return value
@@ -38,6 +38,58 @@ class TriggerEvent(InstrumentEvent):
38
38
  @validator('instrument_event_type')
39
39
  def instrument_event_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 'TriggerEvent' 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 "instrument_event_type" != "type":
91
+ return value
92
+
41
93
  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'):
42
94
  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')")
43
95
  return value
@@ -35,6 +35,58 @@ class UpdateDepositAmountEvent(InstrumentEvent):
35
35
  @validator('instrument_event_type')
36
36
  def instrument_event_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 'UpdateDepositAmountEvent' 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 "instrument_event_type" != "type":
88
+ return value
89
+
38
90
  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'):
39
91
  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')")
40
92
  return value
@@ -36,6 +36,58 @@ class UpsertReferencePortfolioConstituentsRequest(BaseModel):
36
36
  @validator('weight_type')
37
37
  def weight_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 'UpsertReferencePortfolioConstituentsRequest' 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 "weight_type" != "type":
89
+ return value
90
+
39
91
  if value not in ('Static', 'Floating', 'Periodical'):
40
92
  raise ValueError("must be one of enum values ('Static', 'Floating', 'Periodical')")
41
93
  return value
@@ -43,6 +95,58 @@ class UpsertReferencePortfolioConstituentsRequest(BaseModel):
43
95
  @validator('period_type')
44
96
  def period_type_validate_enum(cls, value):
45
97
  """Validates the enum"""
98
+
99
+ # Finbourne have removed enum validation on all models, except for this use case:
100
+ # Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
101
+ # During instantiation, the value of 'type' is checked against the enum values,
102
+
103
+
104
+ # check it's a class that uses the 'type' property as a discriminator
105
+ # list of classes can be found by searching for 'actual_instance: Union[' in the generated code
106
+ if 'UpsertReferencePortfolioConstituentsRequest' not in [
107
+ # For notification application classes
108
+ 'AmazonSqsNotificationType',
109
+ 'AmazonSqsNotificationTypeResponse',
110
+ 'AmazonSqsPrincipalAuthNotificationType',
111
+ 'AmazonSqsPrincipalAuthNotificationTypeResponse',
112
+ 'AzureServiceBusTypeResponse',
113
+ 'AzureServiceBusNotificationType',
114
+ 'EmailNotificationType',
115
+ 'EmailNotificationTypeResponse',
116
+ 'SmsNotificationType',
117
+ 'SmsNotificationTypeResponse',
118
+ 'WebhookNotificationType',
119
+ 'WebhookNotificationTypeResponse',
120
+
121
+ # For workflow application classes
122
+ 'CreateChildTasksAction',
123
+ 'RunWorkerAction',
124
+ 'TriggerParentTaskAction',
125
+ 'CreateChildTasksActionResponse',
126
+ 'RunWorkerActionResponse',
127
+ 'TriggerParentTaskActionResponse',
128
+ 'CreateNewTaskActivity',
129
+ 'UpdateMatchingTasksActivity',
130
+ 'CreateNewTaskActivityResponse',
131
+ 'UpdateMatchingTasksActivityResponse',
132
+ 'Fail',
133
+ 'GroupReconciliation',
134
+ 'HealthCheck',
135
+ 'LuminesceView',
136
+ 'SchedulerJob',
137
+ 'Sleep',
138
+ 'FailResponse',
139
+ 'GroupReconciliationResponse',
140
+ 'HealthCheckResponse',
141
+ 'LuminesceViewResponse',
142
+ 'SchedulerJobResponse',
143
+ 'SleepResponse']:
144
+ return value
145
+
146
+ # Only validate the 'type' property of the class
147
+ if "period_type" != "type":
148
+ return value
149
+
46
150
  if value is None:
47
151
  return value
48
152
 
@@ -36,6 +36,58 @@ class VendorDependency(EconomicDependency):
36
36
  @validator('dependency_type')
37
37
  def dependency_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 'VendorDependency' 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 "dependency_type" != "type":
89
+ return value
90
+
39
91
  if value not in ('OpaqueDependency', 'CashDependency', 'DiscountingDependency', 'EquityCurveDependency', 'EquityVolDependency', 'FxDependency', 'FxForwardsDependency', 'FxVolDependency', 'IndexProjectionDependency', 'IrVolDependency', 'QuoteDependency', 'Vendor', 'CalendarDependency', 'InflationFixingDependency'):
40
92
  raise ValueError("must be one of enum values ('OpaqueDependency', 'CashDependency', 'DiscountingDependency', 'EquityCurveDependency', 'EquityVolDependency', 'FxDependency', 'FxForwardsDependency', 'FxVolDependency', 'IndexProjectionDependency', 'IrVolDependency', 'QuoteDependency', 'Vendor', 'CalendarDependency', 'InflationFixingDependency')")
41
93
  return value
@@ -39,6 +39,58 @@ class VendorModelRule(BaseModel):
39
39
  @validator('supplier')
40
40
  def supplier_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 'VendorModelRule' 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 "supplier" != "type":
92
+ return value
93
+
42
94
  if value not in ('Lusid', 'RefinitivQps', 'RefinitivTracsWeb', 'VolMaster', 'IsdaCds', 'YieldBook', 'LusidCalc'):
43
95
  raise ValueError("must be one of enum values ('Lusid', 'RefinitivQps', 'RefinitivTracsWeb', 'VolMaster', 'IsdaCds', 'YieldBook', 'LusidCalc')")
44
96
  return value
@@ -26,7 +26,7 @@ class WeekendMask(BaseModel):
26
26
  """
27
27
  WeekendMask
28
28
  """
29
- days: conlist(DayOfWeek) = Field(...)
29
+ days: conlist[Str] = Field(...,alias="days")
30
30
  time_zone: StrictStr = Field(...,alias="timeZone")
31
31
  __properties = ["days", "timeZone"]
32
32
 
@@ -41,6 +41,58 @@ class YieldCurveData(ComplexMarketData):
41
41
  @validator('market_data_type')
42
42
  def market_data_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 'YieldCurveData' 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 "market_data_type" != "type":
94
+ return value
95
+
44
96
  if value not in ('DiscountFactorCurveData', 'EquityVolSurfaceData', 'FxVolSurfaceData', 'IrVolCubeData', 'OpaqueMarketData', 'YieldCurveData', 'FxForwardCurveData', 'FxForwardPipsCurveData', 'FxForwardTenorCurveData', 'FxForwardTenorPipsCurveData', 'FxForwardCurveByQuoteReference', 'CreditSpreadCurveData', 'EquityCurveByPricesData', 'ConstantVolatilitySurface'):
45
97
  raise ValueError("must be one of enum values ('DiscountFactorCurveData', 'EquityVolSurfaceData', 'FxVolSurfaceData', 'IrVolCubeData', 'OpaqueMarketData', 'YieldCurveData', 'FxForwardCurveData', 'FxForwardPipsCurveData', 'FxForwardTenorCurveData', 'FxForwardTenorPipsCurveData', 'FxForwardCurveByQuoteReference', 'CreditSpreadCurveData', 'EquityCurveByPricesData', 'ConstantVolatilitySurface')")
46
98
  return value
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lusid-sdk
3
- Version: 2.1.748
3
+ Version: 2.1.750
4
4
  Summary: LUSID API
5
5
  Home-page: https://github.com/finbourne/lusid-sdk-python
6
6
  License: MIT