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.
Files changed (279) hide show
  1. lusid/api/entities_api.py +12 -12
  2. lusid/api/transaction_portfolios_api.py +17 -8
  3. lusid/configuration.py +1 -1
  4. lusid/models/access_metadata_operation.py +52 -0
  5. lusid/models/account.py +52 -0
  6. lusid/models/accumulation_event.py +52 -0
  7. lusid/models/address_definition.py +52 -0
  8. lusid/models/address_key_compliance_parameter.py +52 -0
  9. lusid/models/address_key_list.py +52 -0
  10. lusid/models/address_key_list_compliance_parameter.py +52 -0
  11. lusid/models/adjust_global_commitment_event.py +52 -0
  12. lusid/models/aggregate_spec.py +52 -0
  13. lusid/models/aggregation_query.py +104 -0
  14. lusid/models/amortisation_event.py +52 -0
  15. lusid/models/append_fx_forward_curve_by_quote_reference.py +52 -0
  16. lusid/models/append_fx_forward_curve_data.py +52 -0
  17. lusid/models/append_fx_forward_pips_curve_data.py +52 -0
  18. lusid/models/append_fx_forward_tenor_curve_data.py +52 -0
  19. lusid/models/append_fx_forward_tenor_pips_curve_data.py +52 -0
  20. lusid/models/append_market_data.py +52 -0
  21. lusid/models/basket.py +52 -0
  22. lusid/models/bond.py +52 -0
  23. lusid/models/bond_conversion_schedule.py +52 -0
  24. lusid/models/bond_coupon_event.py +52 -0
  25. lusid/models/bond_default_event.py +52 -0
  26. lusid/models/bond_principal_event.py +52 -0
  27. lusid/models/bonus_issue_event.py +52 -0
  28. lusid/models/bool_compliance_parameter.py +52 -0
  29. lusid/models/bool_list_compliance_parameter.py +52 -0
  30. lusid/models/branch_step.py +52 -0
  31. lusid/models/branch_step_request.py +52 -0
  32. lusid/models/calendar_dependency.py +52 -0
  33. lusid/models/call_on_intermediate_securities_event.py +52 -0
  34. lusid/models/cap_floor.py +52 -0
  35. lusid/models/capital_distribution_event.py +52 -0
  36. lusid/models/cash.py +52 -0
  37. lusid/models/cash_dependency.py +52 -0
  38. lusid/models/cash_dividend_event.py +52 -0
  39. lusid/models/cash_flow_event.py +52 -0
  40. lusid/models/cash_flow_value.py +52 -0
  41. lusid/models/cash_flow_value_set.py +52 -0
  42. lusid/models/cash_perpetual.py +52 -0
  43. lusid/models/cds_credit_event.py +52 -0
  44. lusid/models/cds_index.py +52 -0
  45. lusid/models/cdx_credit_event.py +52 -0
  46. lusid/models/change_history.py +52 -0
  47. lusid/models/check_step.py +52 -0
  48. lusid/models/check_step_request.py +52 -0
  49. lusid/models/close_event.py +52 -0
  50. lusid/models/complete_portfolio.py +52 -0
  51. lusid/models/complex_bond.py +52 -0
  52. lusid/models/complex_market_data.py +52 -0
  53. lusid/models/compliance_parameter.py +52 -0
  54. lusid/models/compliance_step.py +52 -0
  55. lusid/models/compliance_step_request.py +52 -0
  56. lusid/models/constant_volatility_surface.py +52 -0
  57. lusid/models/contract_for_difference.py +52 -0
  58. lusid/models/contract_initialisation_event.py +52 -0
  59. lusid/models/create_data_type_request.py +156 -0
  60. lusid/models/create_derived_property_definition_request.py +52 -0
  61. lusid/models/create_derived_transaction_portfolio_request.py +52 -0
  62. lusid/models/create_identifier_definition_request.py +104 -0
  63. lusid/models/create_property_definition_request.py +104 -0
  64. lusid/models/create_simple_position_portfolio_request.py +52 -0
  65. lusid/models/create_transaction_portfolio_request.py +52 -0
  66. lusid/models/credit_default_swap.py +52 -0
  67. lusid/models/credit_premium_cash_flow_event.py +52 -0
  68. lusid/models/credit_spread_curve_data.py +52 -0
  69. lusid/models/curve_options.py +52 -0
  70. lusid/models/data_type.py +156 -0
  71. lusid/models/data_type_summary.py +156 -0
  72. lusid/models/date_time_compliance_parameter.py +52 -0
  73. lusid/models/date_time_list_compliance_parameter.py +52 -0
  74. lusid/models/decimal_compliance_parameter.py +52 -0
  75. lusid/models/decimal_list.py +52 -0
  76. lusid/models/decimal_list_compliance_parameter.py +52 -0
  77. lusid/models/deposit_close_event.py +52 -0
  78. lusid/models/deposit_interest_payment_event.py +52 -0
  79. lusid/models/discount_factor_curve_data.py +52 -0
  80. lusid/models/discounting_dependency.py +52 -0
  81. lusid/models/dividend_option_event.py +52 -0
  82. lusid/models/dividend_reinvestment_event.py +52 -0
  83. lusid/models/drawdown_event.py +52 -0
  84. lusid/models/early_redemption_event.py +52 -0
  85. lusid/models/economic_dependency.py +52 -0
  86. lusid/models/empty_model_options.py +52 -0
  87. lusid/models/equity.py +52 -0
  88. lusid/models/equity_curve_by_prices_data.py +52 -0
  89. lusid/models/equity_curve_dependency.py +52 -0
  90. lusid/models/equity_model_options.py +52 -0
  91. lusid/models/equity_option.py +52 -0
  92. lusid/models/equity_swap.py +52 -0
  93. lusid/models/equity_vol_dependency.py +52 -0
  94. lusid/models/equity_vol_surface_data.py +52 -0
  95. lusid/models/exchange_traded_option.py +52 -0
  96. lusid/models/exercise_event.py +52 -0
  97. lusid/models/exotic_instrument.py +52 -0
  98. lusid/models/expiry_event.py +52 -0
  99. lusid/models/field_schema.py +52 -0
  100. lusid/models/filter_predicate_compliance_parameter.py +52 -0
  101. lusid/models/filter_step.py +52 -0
  102. lusid/models/filter_step_request.py +52 -0
  103. lusid/models/fixed_leg.py +52 -0
  104. lusid/models/fixed_schedule.py +52 -0
  105. lusid/models/flexible_deposit.py +52 -0
  106. lusid/models/flexible_loan.py +52 -0
  107. lusid/models/float_schedule.py +52 -0
  108. lusid/models/floating_leg.py +52 -0
  109. lusid/models/forward_rate_agreement.py +52 -0
  110. lusid/models/fund_id_list.py +52 -0
  111. lusid/models/fund_share_class.py +52 -0
  112. lusid/models/funding_leg.py +52 -0
  113. lusid/models/funding_leg_options.py +52 -0
  114. lusid/models/future.py +52 -0
  115. lusid/models/future_expiry_event.py +52 -0
  116. lusid/models/future_mark_to_market_event.py +52 -0
  117. lusid/models/fx_dependency.py +52 -0
  118. lusid/models/fx_forward.py +52 -0
  119. lusid/models/fx_forward_curve_by_quote_reference.py +52 -0
  120. lusid/models/fx_forward_curve_data.py +52 -0
  121. lusid/models/fx_forward_model_options.py +156 -0
  122. lusid/models/fx_forward_pips_curve_data.py +52 -0
  123. lusid/models/fx_forward_settlement_event.py +52 -0
  124. lusid/models/fx_forward_tenor_curve_data.py +52 -0
  125. lusid/models/fx_forward_tenor_pips_curve_data.py +52 -0
  126. lusid/models/fx_forwards_dependency.py +52 -0
  127. lusid/models/fx_linked_notional_schedule.py +52 -0
  128. lusid/models/fx_option.py +52 -0
  129. lusid/models/fx_rate_schedule.py +52 -0
  130. lusid/models/fx_swap.py +52 -0
  131. lusid/models/fx_vol_dependency.py +52 -0
  132. lusid/models/fx_vol_surface_data.py +52 -0
  133. lusid/models/get_reference_portfolio_constituents_response.py +104 -0
  134. lusid/models/group_by_selector_compliance_parameter.py +52 -0
  135. lusid/models/group_by_step.py +52 -0
  136. lusid/models/group_by_step_request.py +52 -0
  137. lusid/models/group_calculation_compliance_parameter.py +52 -0
  138. lusid/models/group_filter_predicate_compliance_parameter.py +52 -0
  139. lusid/models/group_filter_step.py +52 -0
  140. lusid/models/group_filter_step_request.py +52 -0
  141. lusid/models/holdings_adjustment.py +52 -0
  142. lusid/models/holdings_adjustment_header.py +52 -0
  143. lusid/models/i_unit_definition_dto.py +52 -0
  144. lusid/models/identifier_definition.py +104 -0
  145. lusid/models/index_model_options.py +104 -0
  146. lusid/models/index_projection_dependency.py +52 -0
  147. lusid/models/inflation_fixing_dependency.py +52 -0
  148. lusid/models/inflation_leg.py +52 -0
  149. lusid/models/inflation_linked_bond.py +52 -0
  150. lusid/models/inflation_swap.py +52 -0
  151. lusid/models/informational_error_event.py +52 -0
  152. lusid/models/informational_event.py +52 -0
  153. lusid/models/instrument.py +104 -0
  154. lusid/models/instrument_event.py +52 -0
  155. lusid/models/instrument_leg.py +52 -0
  156. lusid/models/instrument_list.py +52 -0
  157. lusid/models/instrument_list_compliance_parameter.py +52 -0
  158. lusid/models/interest_rate_swap.py +52 -0
  159. lusid/models/interest_rate_swaption.py +52 -0
  160. lusid/models/intermediate_compliance_step.py +52 -0
  161. lusid/models/intermediate_compliance_step_request.py +52 -0
  162. lusid/models/intermediate_securities_distribution_event.py +52 -0
  163. lusid/models/ir_vol_cube_data.py +52 -0
  164. lusid/models/ir_vol_dependency.py +52 -0
  165. lusid/models/life_cycle_event_value.py +52 -0
  166. lusid/models/loan_facility.py +52 -0
  167. lusid/models/loan_interest_repayment_event.py +52 -0
  168. lusid/models/loan_principal_repayment_event.py +52 -0
  169. lusid/models/lusid_instrument.py +52 -0
  170. lusid/models/lusid_trade_ticket.py +52 -0
  171. lusid/models/market_data_key_rule.py +52 -0
  172. lusid/models/market_data_options.py +52 -0
  173. lusid/models/market_data_specific_rule.py +52 -0
  174. lusid/models/market_quote.py +52 -0
  175. lusid/models/mastered_instrument.py +52 -0
  176. lusid/models/match_criterion.py +52 -0
  177. lusid/models/maturity_event.py +52 -0
  178. lusid/models/mbs_coupon_event.py +52 -0
  179. lusid/models/mbs_interest_deferral_event.py +52 -0
  180. lusid/models/mbs_interest_shortfall_event.py +52 -0
  181. lusid/models/mbs_principal_event.py +52 -0
  182. lusid/models/mbs_principal_write_off_event.py +52 -0
  183. lusid/models/merger_event.py +52 -0
  184. lusid/models/model_options.py +52 -0
  185. lusid/models/model_selection.py +104 -0
  186. lusid/models/opaque_dependency.py +52 -0
  187. lusid/models/opaque_market_data.py +52 -0
  188. lusid/models/opaque_model_options.py +52 -0
  189. lusid/models/open_event.py +52 -0
  190. lusid/models/option_exercise_cash_event.py +52 -0
  191. lusid/models/option_exercise_physical_event.py +52 -0
  192. lusid/models/optionality_schedule.py +52 -0
  193. lusid/models/order_by_spec.py +52 -0
  194. lusid/models/output_transaction.py +52 -0
  195. lusid/models/percent_check_step.py +52 -0
  196. lusid/models/percent_check_step_request.py +52 -0
  197. lusid/models/portfolio.py +104 -0
  198. lusid/models/portfolio_details.py +52 -0
  199. lusid/models/portfolio_group_id_compliance_parameter.py +52 -0
  200. lusid/models/portfolio_group_id_list.py +52 -0
  201. lusid/models/portfolio_group_id_list_compliance_parameter.py +52 -0
  202. lusid/models/portfolio_id_compliance_parameter.py +52 -0
  203. lusid/models/portfolio_id_list.py +52 -0
  204. lusid/models/portfolio_id_list_compliance_parameter.py +52 -0
  205. lusid/models/portfolio_result_data_key_rule.py +52 -0
  206. lusid/models/portfolio_search_result.py +52 -0
  207. lusid/models/portfolio_without_href.py +104 -0
  208. lusid/models/property_definition.py +312 -0
  209. lusid/models/property_definition_search_result.py +312 -0
  210. lusid/models/property_filter.py +104 -0
  211. lusid/models/property_key_compliance_parameter.py +52 -0
  212. lusid/models/property_key_list_compliance_parameter.py +52 -0
  213. lusid/models/property_list.py +52 -0
  214. lusid/models/property_list_compliance_parameter.py +52 -0
  215. lusid/models/property_value_equals.py +52 -0
  216. lusid/models/property_value_in.py +52 -0
  217. lusid/models/protection_payout_cash_flow_event.py +52 -0
  218. lusid/models/quote_dependency.py +52 -0
  219. lusid/models/quote_series_id.py +104 -0
  220. lusid/models/raw_vendor_event.py +52 -0
  221. lusid/models/recombine_step.py +52 -0
  222. lusid/models/reconcile_date_time_rule.py +104 -0
  223. lusid/models/reconcile_numeric_rule.py +104 -0
  224. lusid/models/reconcile_string_rule.py +104 -0
  225. lusid/models/reconciliation_rule.py +52 -0
  226. lusid/models/reference_instrument.py +52 -0
  227. lusid/models/reference_list.py +52 -0
  228. lusid/models/repo.py +52 -0
  229. lusid/models/reset_event.py +52 -0
  230. lusid/models/resource_list_of_value_type.py +1 -1
  231. lusid/models/result_data_key_rule.py +52 -0
  232. lusid/models/result_key_rule.py +52 -0
  233. lusid/models/result_value.py +52 -0
  234. lusid/models/result_value0_d.py +52 -0
  235. lusid/models/result_value_bool.py +52 -0
  236. lusid/models/result_value_currency.py +52 -0
  237. lusid/models/result_value_date_time_offset.py +52 -0
  238. lusid/models/result_value_decimal.py +52 -0
  239. lusid/models/result_value_dictionary.py +52 -0
  240. lusid/models/result_value_int.py +52 -0
  241. lusid/models/result_value_string.py +52 -0
  242. lusid/models/reverse_stock_split_event.py +52 -0
  243. lusid/models/schedule.py +52 -0
  244. lusid/models/scrip_dividend_event.py +52 -0
  245. lusid/models/simple_cash_flow_loan.py +52 -0
  246. lusid/models/simple_instrument.py +104 -0
  247. lusid/models/spin_off_event.py +52 -0
  248. lusid/models/step_schedule.py +52 -0
  249. lusid/models/stock_dividend_event.py +52 -0
  250. lusid/models/stock_split_event.py +52 -0
  251. lusid/models/string_compliance_parameter.py +52 -0
  252. lusid/models/string_list.py +52 -0
  253. lusid/models/string_list_compliance_parameter.py +52 -0
  254. lusid/models/sub_holding_key_value_equals.py +52 -0
  255. lusid/models/swap_cash_flow_event.py +52 -0
  256. lusid/models/swap_principal_event.py +52 -0
  257. lusid/models/tender_event.py +52 -0
  258. lusid/models/term_deposit.py +52 -0
  259. lusid/models/term_deposit_interest_event.py +52 -0
  260. lusid/models/term_deposit_principal_event.py +52 -0
  261. lusid/models/total_return_swap.py +52 -0
  262. lusid/models/trade_ticket.py +52 -0
  263. lusid/models/transaction.py +52 -0
  264. lusid/models/transaction_configuration_movement_data.py +52 -0
  265. lusid/models/transaction_configuration_movement_data_request.py +52 -0
  266. lusid/models/transaction_configuration_type_alias.py +52 -0
  267. lusid/models/transaction_price.py +52 -0
  268. lusid/models/transaction_query_parameters.py +52 -0
  269. lusid/models/transition_event.py +52 -0
  270. lusid/models/trigger_event.py +52 -0
  271. lusid/models/update_deposit_amount_event.py +52 -0
  272. lusid/models/upsert_reference_portfolio_constituents_request.py +104 -0
  273. lusid/models/vendor_dependency.py +52 -0
  274. lusid/models/vendor_model_rule.py +52 -0
  275. lusid/models/weekend_mask.py +1 -1
  276. lusid/models/yield_curve_data.py +52 -0
  277. {lusid_sdk-2.1.747.dist-info → lusid_sdk-2.1.749.dist-info}/METADATA +7 -7
  278. {lusid_sdk-2.1.747.dist-info → lusid_sdk-2.1.749.dist-info}/RECORD +279 -279
  279. {lusid_sdk-2.1.747.dist-info → lusid_sdk-2.1.749.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.747
3
+ Version: 2.1.749
4
4
  Summary: LUSID API
5
5
  Home-page: https://github.com/finbourne/lusid-sdk-python
6
6
  License: MIT
@@ -225,13 +225,13 @@ Class | Method | HTTP request | Description
225
225
  *DataTypesApi* | [**update_reference_values**](docs/DataTypesApi.md#update_reference_values) | **PUT** /api/datatypes/{scope}/{code}/referencedatavalues | [EARLY ACCESS] UpdateReferenceValues: Update reference data on a data type
226
226
  *DerivedTransactionPortfoliosApi* | [**create_derived_portfolio**](docs/DerivedTransactionPortfoliosApi.md#create_derived_portfolio) | **POST** /api/derivedtransactionportfolios/{scope} | CreateDerivedPortfolio: Create derived portfolio
227
227
  *DerivedTransactionPortfoliosApi* | [**delete_derived_portfolio_details**](docs/DerivedTransactionPortfoliosApi.md#delete_derived_portfolio_details) | **DELETE** /api/derivedtransactionportfolios/{scope}/{code}/details | [EARLY ACCESS] DeleteDerivedPortfolioDetails: Delete derived portfolio details
228
- *EntitiesApi* | [**get_custom_entity_by_entity_unique_id**](docs/EntitiesApi.md#get_custom_entity_by_entity_unique_id) | **GET** /api/entities/customentities/{entityUniqueId} | [EXPERIMENTAL] GetCustomEntityByEntityUniqueId: Get a Custom Entity instance by its EntityUniqueId
229
- *EntitiesApi* | [**get_data_type_by_entity_unique_id**](docs/EntitiesApi.md#get_data_type_by_entity_unique_id) | **GET** /api/entities/datatypes/{entityUniqueId} | [EXPERIMENTAL] GetDataTypeByEntityUniqueId: Get DataType by EntityUniqueId
230
- *EntitiesApi* | [**get_entity_history**](docs/EntitiesApi.md#get_entity_history) | **GET** /api/entities/{entityType}/{entityUniqueId}/history | [EARLY ACCESS] GetEntityHistory: List an entity's history information
231
- *EntitiesApi* | [**get_instrument_by_entity_unique_id**](docs/EntitiesApi.md#get_instrument_by_entity_unique_id) | **GET** /api/entities/instruments/{entityUniqueId} | [EXPERIMENTAL] GetInstrumentByEntityUniqueId: Get instrument by EntityUniqueId
232
- *EntitiesApi* | [**get_portfolio_by_entity_unique_id**](docs/EntitiesApi.md#get_portfolio_by_entity_unique_id) | **GET** /api/entities/portfolios/{entityUniqueId} | [EXPERIMENTAL] GetPortfolioByEntityUniqueId: Get portfolio by EntityUniqueId
228
+ *EntitiesApi* | [**get_custom_entity_by_entity_unique_id**](docs/EntitiesApi.md#get_custom_entity_by_entity_unique_id) | **GET** /api/entities/customentities/{entityUniqueId} | GetCustomEntityByEntityUniqueId: Get a Custom Entity instance by its EntityUniqueId
229
+ *EntitiesApi* | [**get_data_type_by_entity_unique_id**](docs/EntitiesApi.md#get_data_type_by_entity_unique_id) | **GET** /api/entities/datatypes/{entityUniqueId} | GetDataTypeByEntityUniqueId: Get DataType by EntityUniqueId
230
+ *EntitiesApi* | [**get_entity_history**](docs/EntitiesApi.md#get_entity_history) | **GET** /api/entities/{entityType}/{entityUniqueId}/history | GetEntityHistory: List an entity's history information
231
+ *EntitiesApi* | [**get_instrument_by_entity_unique_id**](docs/EntitiesApi.md#get_instrument_by_entity_unique_id) | **GET** /api/entities/instruments/{entityUniqueId} | GetInstrumentByEntityUniqueId: Get instrument by EntityUniqueId
232
+ *EntitiesApi* | [**get_portfolio_by_entity_unique_id**](docs/EntitiesApi.md#get_portfolio_by_entity_unique_id) | **GET** /api/entities/portfolios/{entityUniqueId} | GetPortfolioByEntityUniqueId: Get portfolio by EntityUniqueId
233
233
  *EntitiesApi* | [**get_portfolio_changes**](docs/EntitiesApi.md#get_portfolio_changes) | **GET** /api/entities/changes/portfolios | GetPortfolioChanges: Get the next change to each portfolio in a scope.
234
- *EntitiesApi* | [**get_property_definition_by_entity_unique_id**](docs/EntitiesApi.md#get_property_definition_by_entity_unique_id) | **GET** /api/entities/propertydefinitions/{entityUniqueId} | [EXPERIMENTAL] GetPropertyDefinitionByEntityUniqueId: Get property definition by EntityUniqueId
234
+ *EntitiesApi* | [**get_property_definition_by_entity_unique_id**](docs/EntitiesApi.md#get_property_definition_by_entity_unique_id) | **GET** /api/entities/propertydefinitions/{entityUniqueId} | GetPropertyDefinitionByEntityUniqueId: Get property definition by EntityUniqueId
235
235
  *ExecutionsApi* | [**delete_execution**](docs/ExecutionsApi.md#delete_execution) | **DELETE** /api/executions/{scope}/{code} | [EARLY ACCESS] DeleteExecution: Delete execution
236
236
  *ExecutionsApi* | [**get_execution**](docs/ExecutionsApi.md#get_execution) | **GET** /api/executions/{scope}/{code} | [EARLY ACCESS] GetExecution: Get Execution
237
237
  *ExecutionsApi* | [**list_executions**](docs/ExecutionsApi.md#list_executions) | **GET** /api/executions | ListExecutions: List Executions