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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (277) 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 +52 -0
  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 +52 -0
  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_rule.py +52 -0
  224. lusid/models/reference_instrument.py +52 -0
  225. lusid/models/reference_list.py +52 -0
  226. lusid/models/repo.py +52 -0
  227. lusid/models/reset_event.py +52 -0
  228. lusid/models/resource_list_of_value_type.py +1 -1
  229. lusid/models/result_data_key_rule.py +52 -0
  230. lusid/models/result_key_rule.py +52 -0
  231. lusid/models/result_value.py +52 -0
  232. lusid/models/result_value0_d.py +52 -0
  233. lusid/models/result_value_bool.py +52 -0
  234. lusid/models/result_value_currency.py +52 -0
  235. lusid/models/result_value_date_time_offset.py +52 -0
  236. lusid/models/result_value_decimal.py +52 -0
  237. lusid/models/result_value_dictionary.py +52 -0
  238. lusid/models/result_value_int.py +52 -0
  239. lusid/models/result_value_string.py +52 -0
  240. lusid/models/reverse_stock_split_event.py +52 -0
  241. lusid/models/schedule.py +52 -0
  242. lusid/models/scrip_dividend_event.py +52 -0
  243. lusid/models/simple_cash_flow_loan.py +52 -0
  244. lusid/models/simple_instrument.py +104 -0
  245. lusid/models/spin_off_event.py +52 -0
  246. lusid/models/step_schedule.py +52 -0
  247. lusid/models/stock_dividend_event.py +52 -0
  248. lusid/models/stock_split_event.py +52 -0
  249. lusid/models/string_compliance_parameter.py +52 -0
  250. lusid/models/string_list.py +52 -0
  251. lusid/models/string_list_compliance_parameter.py +52 -0
  252. lusid/models/sub_holding_key_value_equals.py +52 -0
  253. lusid/models/swap_cash_flow_event.py +52 -0
  254. lusid/models/swap_principal_event.py +52 -0
  255. lusid/models/tender_event.py +52 -0
  256. lusid/models/term_deposit.py +52 -0
  257. lusid/models/term_deposit_interest_event.py +52 -0
  258. lusid/models/term_deposit_principal_event.py +52 -0
  259. lusid/models/total_return_swap.py +52 -0
  260. lusid/models/trade_ticket.py +52 -0
  261. lusid/models/transaction.py +52 -0
  262. lusid/models/transaction_configuration_movement_data.py +52 -0
  263. lusid/models/transaction_configuration_movement_data_request.py +52 -0
  264. lusid/models/transaction_configuration_type_alias.py +52 -0
  265. lusid/models/transaction_price.py +52 -0
  266. lusid/models/transaction_query_parameters.py +52 -0
  267. lusid/models/transition_event.py +52 -0
  268. lusid/models/trigger_event.py +52 -0
  269. lusid/models/update_deposit_amount_event.py +52 -0
  270. lusid/models/upsert_reference_portfolio_constituents_request.py +104 -0
  271. lusid/models/vendor_dependency.py +52 -0
  272. lusid/models/vendor_model_rule.py +52 -0
  273. lusid/models/weekend_mask.py +1 -1
  274. lusid/models/yield_curve_data.py +52 -0
  275. {lusid_sdk-2.1.748.dist-info → lusid_sdk-2.1.749.dist-info}/METADATA +1 -1
  276. {lusid_sdk-2.1.748.dist-info → lusid_sdk-2.1.749.dist-info}/RECORD +277 -277
  277. {lusid_sdk-2.1.748.dist-info → lusid_sdk-2.1.749.dist-info}/WHEEL +0 -0
@@ -39,6 +39,58 @@ class FxLinkedNotionalSchedule(Schedule):
39
39
  @validator('schedule_type')
40
40
  def schedule_type_validate_enum(cls, value):
41
41
  """Validates the enum"""
42
+
43
+ # Finbourne have removed enum validation on all models, except for this use case:
44
+ # Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
45
+ # During instantiation, the value of 'type' is checked against the enum values,
46
+
47
+
48
+ # check it's a class that uses the 'type' property as a discriminator
49
+ # list of classes can be found by searching for 'actual_instance: Union[' in the generated code
50
+ if 'FxLinkedNotionalSchedule' not in [
51
+ # For notification application classes
52
+ 'AmazonSqsNotificationType',
53
+ 'AmazonSqsNotificationTypeResponse',
54
+ 'AmazonSqsPrincipalAuthNotificationType',
55
+ 'AmazonSqsPrincipalAuthNotificationTypeResponse',
56
+ 'AzureServiceBusTypeResponse',
57
+ 'AzureServiceBusNotificationType',
58
+ 'EmailNotificationType',
59
+ 'EmailNotificationTypeResponse',
60
+ 'SmsNotificationType',
61
+ 'SmsNotificationTypeResponse',
62
+ 'WebhookNotificationType',
63
+ 'WebhookNotificationTypeResponse',
64
+
65
+ # For workflow application classes
66
+ 'CreateChildTasksAction',
67
+ 'RunWorkerAction',
68
+ 'TriggerParentTaskAction',
69
+ 'CreateChildTasksActionResponse',
70
+ 'RunWorkerActionResponse',
71
+ 'TriggerParentTaskActionResponse',
72
+ 'CreateNewTaskActivity',
73
+ 'UpdateMatchingTasksActivity',
74
+ 'CreateNewTaskActivityResponse',
75
+ 'UpdateMatchingTasksActivityResponse',
76
+ 'Fail',
77
+ 'GroupReconciliation',
78
+ 'HealthCheck',
79
+ 'LuminesceView',
80
+ 'SchedulerJob',
81
+ 'Sleep',
82
+ 'FailResponse',
83
+ 'GroupReconciliationResponse',
84
+ 'HealthCheckResponse',
85
+ 'LuminesceViewResponse',
86
+ 'SchedulerJobResponse',
87
+ 'SleepResponse']:
88
+ return value
89
+
90
+ # Only validate the 'type' property of the class
91
+ if "schedule_type" != "type":
92
+ return value
93
+
42
94
  if value not in ('FixedSchedule', 'FloatSchedule', 'OptionalitySchedule', 'StepSchedule', 'Exercise', 'FxRateSchedule', 'FxLinkedNotionalSchedule', 'BondConversionSchedule', 'Invalid'):
43
95
  raise ValueError("must be one of enum values ('FixedSchedule', 'FloatSchedule', 'OptionalitySchedule', 'StepSchedule', 'Exercise', 'FxRateSchedule', 'FxLinkedNotionalSchedule', 'BondConversionSchedule', 'Invalid')")
44
96
  return value
lusid/models/fx_option.py CHANGED
@@ -52,6 +52,58 @@ class FxOption(LusidInstrument):
52
52
  @validator('instrument_type')
53
53
  def instrument_type_validate_enum(cls, value):
54
54
  """Validates the enum"""
55
+
56
+ # Finbourne have removed enum validation on all models, except for this use case:
57
+ # Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
58
+ # During instantiation, the value of 'type' is checked against the enum values,
59
+
60
+
61
+ # check it's a class that uses the 'type' property as a discriminator
62
+ # list of classes can be found by searching for 'actual_instance: Union[' in the generated code
63
+ if 'FxOption' not in [
64
+ # For notification application classes
65
+ 'AmazonSqsNotificationType',
66
+ 'AmazonSqsNotificationTypeResponse',
67
+ 'AmazonSqsPrincipalAuthNotificationType',
68
+ 'AmazonSqsPrincipalAuthNotificationTypeResponse',
69
+ 'AzureServiceBusTypeResponse',
70
+ 'AzureServiceBusNotificationType',
71
+ 'EmailNotificationType',
72
+ 'EmailNotificationTypeResponse',
73
+ 'SmsNotificationType',
74
+ 'SmsNotificationTypeResponse',
75
+ 'WebhookNotificationType',
76
+ 'WebhookNotificationTypeResponse',
77
+
78
+ # For workflow application classes
79
+ 'CreateChildTasksAction',
80
+ 'RunWorkerAction',
81
+ 'TriggerParentTaskAction',
82
+ 'CreateChildTasksActionResponse',
83
+ 'RunWorkerActionResponse',
84
+ 'TriggerParentTaskActionResponse',
85
+ 'CreateNewTaskActivity',
86
+ 'UpdateMatchingTasksActivity',
87
+ 'CreateNewTaskActivityResponse',
88
+ 'UpdateMatchingTasksActivityResponse',
89
+ 'Fail',
90
+ 'GroupReconciliation',
91
+ 'HealthCheck',
92
+ 'LuminesceView',
93
+ 'SchedulerJob',
94
+ 'Sleep',
95
+ 'FailResponse',
96
+ 'GroupReconciliationResponse',
97
+ 'HealthCheckResponse',
98
+ 'LuminesceViewResponse',
99
+ 'SchedulerJobResponse',
100
+ 'SleepResponse']:
101
+ return value
102
+
103
+ # Only validate the 'type' property of the class
104
+ if "instrument_type" != "type":
105
+ return value
106
+
55
107
  if value not in ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit'):
56
108
  raise ValueError("must be one of enum values ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit')")
57
109
  return value
@@ -38,6 +38,58 @@ class FxRateSchedule(Schedule):
38
38
  @validator('schedule_type')
39
39
  def schedule_type_validate_enum(cls, value):
40
40
  """Validates the enum"""
41
+
42
+ # Finbourne have removed enum validation on all models, except for this use case:
43
+ # Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
44
+ # During instantiation, the value of 'type' is checked against the enum values,
45
+
46
+
47
+ # check it's a class that uses the 'type' property as a discriminator
48
+ # list of classes can be found by searching for 'actual_instance: Union[' in the generated code
49
+ if 'FxRateSchedule' not in [
50
+ # For notification application classes
51
+ 'AmazonSqsNotificationType',
52
+ 'AmazonSqsNotificationTypeResponse',
53
+ 'AmazonSqsPrincipalAuthNotificationType',
54
+ 'AmazonSqsPrincipalAuthNotificationTypeResponse',
55
+ 'AzureServiceBusTypeResponse',
56
+ 'AzureServiceBusNotificationType',
57
+ 'EmailNotificationType',
58
+ 'EmailNotificationTypeResponse',
59
+ 'SmsNotificationType',
60
+ 'SmsNotificationTypeResponse',
61
+ 'WebhookNotificationType',
62
+ 'WebhookNotificationTypeResponse',
63
+
64
+ # For workflow application classes
65
+ 'CreateChildTasksAction',
66
+ 'RunWorkerAction',
67
+ 'TriggerParentTaskAction',
68
+ 'CreateChildTasksActionResponse',
69
+ 'RunWorkerActionResponse',
70
+ 'TriggerParentTaskActionResponse',
71
+ 'CreateNewTaskActivity',
72
+ 'UpdateMatchingTasksActivity',
73
+ 'CreateNewTaskActivityResponse',
74
+ 'UpdateMatchingTasksActivityResponse',
75
+ 'Fail',
76
+ 'GroupReconciliation',
77
+ 'HealthCheck',
78
+ 'LuminesceView',
79
+ 'SchedulerJob',
80
+ 'Sleep',
81
+ 'FailResponse',
82
+ 'GroupReconciliationResponse',
83
+ 'HealthCheckResponse',
84
+ 'LuminesceViewResponse',
85
+ 'SchedulerJobResponse',
86
+ 'SleepResponse']:
87
+ return value
88
+
89
+ # Only validate the 'type' property of the class
90
+ if "schedule_type" != "type":
91
+ return value
92
+
41
93
  if value not in ('FixedSchedule', 'FloatSchedule', 'OptionalitySchedule', 'StepSchedule', 'Exercise', 'FxRateSchedule', 'FxLinkedNotionalSchedule', 'BondConversionSchedule', 'Invalid'):
42
94
  raise ValueError("must be one of enum values ('FixedSchedule', 'FloatSchedule', 'OptionalitySchedule', 'StepSchedule', 'Exercise', 'FxRateSchedule', 'FxLinkedNotionalSchedule', 'BondConversionSchedule', 'Invalid')")
43
95
  return value
lusid/models/fx_swap.py CHANGED
@@ -37,6 +37,58 @@ class FxSwap(LusidInstrument):
37
37
  @validator('instrument_type')
38
38
  def instrument_type_validate_enum(cls, value):
39
39
  """Validates the enum"""
40
+
41
+ # Finbourne have removed enum validation on all models, except for this use case:
42
+ # Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
43
+ # During instantiation, the value of 'type' is checked against the enum values,
44
+
45
+
46
+ # check it's a class that uses the 'type' property as a discriminator
47
+ # list of classes can be found by searching for 'actual_instance: Union[' in the generated code
48
+ if 'FxSwap' not in [
49
+ # For notification application classes
50
+ 'AmazonSqsNotificationType',
51
+ 'AmazonSqsNotificationTypeResponse',
52
+ 'AmazonSqsPrincipalAuthNotificationType',
53
+ 'AmazonSqsPrincipalAuthNotificationTypeResponse',
54
+ 'AzureServiceBusTypeResponse',
55
+ 'AzureServiceBusNotificationType',
56
+ 'EmailNotificationType',
57
+ 'EmailNotificationTypeResponse',
58
+ 'SmsNotificationType',
59
+ 'SmsNotificationTypeResponse',
60
+ 'WebhookNotificationType',
61
+ 'WebhookNotificationTypeResponse',
62
+
63
+ # For workflow application classes
64
+ 'CreateChildTasksAction',
65
+ 'RunWorkerAction',
66
+ 'TriggerParentTaskAction',
67
+ 'CreateChildTasksActionResponse',
68
+ 'RunWorkerActionResponse',
69
+ 'TriggerParentTaskActionResponse',
70
+ 'CreateNewTaskActivity',
71
+ 'UpdateMatchingTasksActivity',
72
+ 'CreateNewTaskActivityResponse',
73
+ 'UpdateMatchingTasksActivityResponse',
74
+ 'Fail',
75
+ 'GroupReconciliation',
76
+ 'HealthCheck',
77
+ 'LuminesceView',
78
+ 'SchedulerJob',
79
+ 'Sleep',
80
+ 'FailResponse',
81
+ 'GroupReconciliationResponse',
82
+ 'HealthCheckResponse',
83
+ 'LuminesceViewResponse',
84
+ 'SchedulerJobResponse',
85
+ 'SleepResponse']:
86
+ return value
87
+
88
+ # Only validate the 'type' property of the class
89
+ if "instrument_type" != "type":
90
+ return value
91
+
40
92
  if value not in ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit'):
41
93
  raise ValueError("must be one of enum values ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit')")
42
94
  return value
@@ -37,6 +37,58 @@ class FxVolDependency(EconomicDependency):
37
37
  @validator('dependency_type')
38
38
  def dependency_type_validate_enum(cls, value):
39
39
  """Validates the enum"""
40
+
41
+ # Finbourne have removed enum validation on all models, except for this use case:
42
+ # Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
43
+ # During instantiation, the value of 'type' is checked against the enum values,
44
+
45
+
46
+ # check it's a class that uses the 'type' property as a discriminator
47
+ # list of classes can be found by searching for 'actual_instance: Union[' in the generated code
48
+ if 'FxVolDependency' not in [
49
+ # For notification application classes
50
+ 'AmazonSqsNotificationType',
51
+ 'AmazonSqsNotificationTypeResponse',
52
+ 'AmazonSqsPrincipalAuthNotificationType',
53
+ 'AmazonSqsPrincipalAuthNotificationTypeResponse',
54
+ 'AzureServiceBusTypeResponse',
55
+ 'AzureServiceBusNotificationType',
56
+ 'EmailNotificationType',
57
+ 'EmailNotificationTypeResponse',
58
+ 'SmsNotificationType',
59
+ 'SmsNotificationTypeResponse',
60
+ 'WebhookNotificationType',
61
+ 'WebhookNotificationTypeResponse',
62
+
63
+ # For workflow application classes
64
+ 'CreateChildTasksAction',
65
+ 'RunWorkerAction',
66
+ 'TriggerParentTaskAction',
67
+ 'CreateChildTasksActionResponse',
68
+ 'RunWorkerActionResponse',
69
+ 'TriggerParentTaskActionResponse',
70
+ 'CreateNewTaskActivity',
71
+ 'UpdateMatchingTasksActivity',
72
+ 'CreateNewTaskActivityResponse',
73
+ 'UpdateMatchingTasksActivityResponse',
74
+ 'Fail',
75
+ 'GroupReconciliation',
76
+ 'HealthCheck',
77
+ 'LuminesceView',
78
+ 'SchedulerJob',
79
+ 'Sleep',
80
+ 'FailResponse',
81
+ 'GroupReconciliationResponse',
82
+ 'HealthCheckResponse',
83
+ 'LuminesceViewResponse',
84
+ 'SchedulerJobResponse',
85
+ 'SleepResponse']:
86
+ return value
87
+
88
+ # Only validate the 'type' property of the class
89
+ if "dependency_type" != "type":
90
+ return value
91
+
40
92
  if value not in ('OpaqueDependency', 'CashDependency', 'DiscountingDependency', 'EquityCurveDependency', 'EquityVolDependency', 'FxDependency', 'FxForwardsDependency', 'FxVolDependency', 'IndexProjectionDependency', 'IrVolDependency', 'QuoteDependency', 'Vendor', 'CalendarDependency', 'InflationFixingDependency'):
41
93
  raise ValueError("must be one of enum values ('OpaqueDependency', 'CashDependency', 'DiscountingDependency', 'EquityCurveDependency', 'EquityVolDependency', 'FxDependency', 'FxForwardsDependency', 'FxVolDependency', 'IndexProjectionDependency', 'IrVolDependency', 'QuoteDependency', 'Vendor', 'CalendarDependency', 'InflationFixingDependency')")
42
94
  return value
@@ -39,6 +39,58 @@ class FxVolSurfaceData(ComplexMarketData):
39
39
  @validator('market_data_type')
40
40
  def market_data_type_validate_enum(cls, value):
41
41
  """Validates the enum"""
42
+
43
+ # Finbourne have removed enum validation on all models, except for this use case:
44
+ # Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
45
+ # During instantiation, the value of 'type' is checked against the enum values,
46
+
47
+
48
+ # check it's a class that uses the 'type' property as a discriminator
49
+ # list of classes can be found by searching for 'actual_instance: Union[' in the generated code
50
+ if 'FxVolSurfaceData' not in [
51
+ # For notification application classes
52
+ 'AmazonSqsNotificationType',
53
+ 'AmazonSqsNotificationTypeResponse',
54
+ 'AmazonSqsPrincipalAuthNotificationType',
55
+ 'AmazonSqsPrincipalAuthNotificationTypeResponse',
56
+ 'AzureServiceBusTypeResponse',
57
+ 'AzureServiceBusNotificationType',
58
+ 'EmailNotificationType',
59
+ 'EmailNotificationTypeResponse',
60
+ 'SmsNotificationType',
61
+ 'SmsNotificationTypeResponse',
62
+ 'WebhookNotificationType',
63
+ 'WebhookNotificationTypeResponse',
64
+
65
+ # For workflow application classes
66
+ 'CreateChildTasksAction',
67
+ 'RunWorkerAction',
68
+ 'TriggerParentTaskAction',
69
+ 'CreateChildTasksActionResponse',
70
+ 'RunWorkerActionResponse',
71
+ 'TriggerParentTaskActionResponse',
72
+ 'CreateNewTaskActivity',
73
+ 'UpdateMatchingTasksActivity',
74
+ 'CreateNewTaskActivityResponse',
75
+ 'UpdateMatchingTasksActivityResponse',
76
+ 'Fail',
77
+ 'GroupReconciliation',
78
+ 'HealthCheck',
79
+ 'LuminesceView',
80
+ 'SchedulerJob',
81
+ 'Sleep',
82
+ 'FailResponse',
83
+ 'GroupReconciliationResponse',
84
+ 'HealthCheckResponse',
85
+ 'LuminesceViewResponse',
86
+ 'SchedulerJobResponse',
87
+ 'SleepResponse']:
88
+ return value
89
+
90
+ # Only validate the 'type' property of the class
91
+ if "market_data_type" != "type":
92
+ return value
93
+
42
94
  if value not in ('DiscountFactorCurveData', 'EquityVolSurfaceData', 'FxVolSurfaceData', 'IrVolCubeData', 'OpaqueMarketData', 'YieldCurveData', 'FxForwardCurveData', 'FxForwardPipsCurveData', 'FxForwardTenorCurveData', 'FxForwardTenorPipsCurveData', 'FxForwardCurveByQuoteReference', 'CreditSpreadCurveData', 'EquityCurveByPricesData', 'ConstantVolatilitySurface'):
43
95
  raise ValueError("must be one of enum values ('DiscountFactorCurveData', 'EquityVolSurfaceData', 'FxVolSurfaceData', 'IrVolCubeData', 'OpaqueMarketData', 'YieldCurveData', 'FxForwardCurveData', 'FxForwardPipsCurveData', 'FxForwardTenorCurveData', 'FxForwardTenorPipsCurveData', 'FxForwardCurveByQuoteReference', 'CreditSpreadCurveData', 'EquityCurveByPricesData', 'ConstantVolatilitySurface')")
44
96
  return value
@@ -39,6 +39,58 @@ class GetReferencePortfolioConstituentsResponse(BaseModel):
39
39
  @validator('weight_type')
40
40
  def weight_type_validate_enum(cls, value):
41
41
  """Validates the enum"""
42
+
43
+ # Finbourne have removed enum validation on all models, except for this use case:
44
+ # Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
45
+ # During instantiation, the value of 'type' is checked against the enum values,
46
+
47
+
48
+ # check it's a class that uses the 'type' property as a discriminator
49
+ # list of classes can be found by searching for 'actual_instance: Union[' in the generated code
50
+ if 'GetReferencePortfolioConstituentsResponse' not in [
51
+ # For notification application classes
52
+ 'AmazonSqsNotificationType',
53
+ 'AmazonSqsNotificationTypeResponse',
54
+ 'AmazonSqsPrincipalAuthNotificationType',
55
+ 'AmazonSqsPrincipalAuthNotificationTypeResponse',
56
+ 'AzureServiceBusTypeResponse',
57
+ 'AzureServiceBusNotificationType',
58
+ 'EmailNotificationType',
59
+ 'EmailNotificationTypeResponse',
60
+ 'SmsNotificationType',
61
+ 'SmsNotificationTypeResponse',
62
+ 'WebhookNotificationType',
63
+ 'WebhookNotificationTypeResponse',
64
+
65
+ # For workflow application classes
66
+ 'CreateChildTasksAction',
67
+ 'RunWorkerAction',
68
+ 'TriggerParentTaskAction',
69
+ 'CreateChildTasksActionResponse',
70
+ 'RunWorkerActionResponse',
71
+ 'TriggerParentTaskActionResponse',
72
+ 'CreateNewTaskActivity',
73
+ 'UpdateMatchingTasksActivity',
74
+ 'CreateNewTaskActivityResponse',
75
+ 'UpdateMatchingTasksActivityResponse',
76
+ 'Fail',
77
+ 'GroupReconciliation',
78
+ 'HealthCheck',
79
+ 'LuminesceView',
80
+ 'SchedulerJob',
81
+ 'Sleep',
82
+ 'FailResponse',
83
+ 'GroupReconciliationResponse',
84
+ 'HealthCheckResponse',
85
+ 'LuminesceViewResponse',
86
+ 'SchedulerJobResponse',
87
+ 'SleepResponse']:
88
+ return value
89
+
90
+ # Only validate the 'type' property of the class
91
+ if "weight_type" != "type":
92
+ return value
93
+
42
94
  if value not in ('Static', 'Floating', 'Periodical'):
43
95
  raise ValueError("must be one of enum values ('Static', 'Floating', 'Periodical')")
44
96
  return value
@@ -46,6 +98,58 @@ class GetReferencePortfolioConstituentsResponse(BaseModel):
46
98
  @validator('period_type')
47
99
  def period_type_validate_enum(cls, value):
48
100
  """Validates the enum"""
101
+
102
+ # Finbourne have removed enum validation on all models, except for this use case:
103
+ # Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
104
+ # During instantiation, the value of 'type' is checked against the enum values,
105
+
106
+
107
+ # check it's a class that uses the 'type' property as a discriminator
108
+ # list of classes can be found by searching for 'actual_instance: Union[' in the generated code
109
+ if 'GetReferencePortfolioConstituentsResponse' not in [
110
+ # For notification application classes
111
+ 'AmazonSqsNotificationType',
112
+ 'AmazonSqsNotificationTypeResponse',
113
+ 'AmazonSqsPrincipalAuthNotificationType',
114
+ 'AmazonSqsPrincipalAuthNotificationTypeResponse',
115
+ 'AzureServiceBusTypeResponse',
116
+ 'AzureServiceBusNotificationType',
117
+ 'EmailNotificationType',
118
+ 'EmailNotificationTypeResponse',
119
+ 'SmsNotificationType',
120
+ 'SmsNotificationTypeResponse',
121
+ 'WebhookNotificationType',
122
+ 'WebhookNotificationTypeResponse',
123
+
124
+ # For workflow application classes
125
+ 'CreateChildTasksAction',
126
+ 'RunWorkerAction',
127
+ 'TriggerParentTaskAction',
128
+ 'CreateChildTasksActionResponse',
129
+ 'RunWorkerActionResponse',
130
+ 'TriggerParentTaskActionResponse',
131
+ 'CreateNewTaskActivity',
132
+ 'UpdateMatchingTasksActivity',
133
+ 'CreateNewTaskActivityResponse',
134
+ 'UpdateMatchingTasksActivityResponse',
135
+ 'Fail',
136
+ 'GroupReconciliation',
137
+ 'HealthCheck',
138
+ 'LuminesceView',
139
+ 'SchedulerJob',
140
+ 'Sleep',
141
+ 'FailResponse',
142
+ 'GroupReconciliationResponse',
143
+ 'HealthCheckResponse',
144
+ 'LuminesceViewResponse',
145
+ 'SchedulerJobResponse',
146
+ 'SleepResponse']:
147
+ return value
148
+
149
+ # Only validate the 'type' property of the class
150
+ if "period_type" != "type":
151
+ return value
152
+
49
153
  if value is None:
50
154
  return value
51
155
 
@@ -34,6 +34,58 @@ class GroupBySelectorComplianceParameter(ComplianceParameter):
34
34
  @validator('compliance_parameter_type')
35
35
  def compliance_parameter_type_validate_enum(cls, value):
36
36
  """Validates the enum"""
37
+
38
+ # Finbourne have removed enum validation on all models, except for this use case:
39
+ # Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
40
+ # During instantiation, the value of 'type' is checked against the enum values,
41
+
42
+
43
+ # check it's a class that uses the 'type' property as a discriminator
44
+ # list of classes can be found by searching for 'actual_instance: Union[' in the generated code
45
+ if 'GroupBySelectorComplianceParameter' not in [
46
+ # For notification application classes
47
+ 'AmazonSqsNotificationType',
48
+ 'AmazonSqsNotificationTypeResponse',
49
+ 'AmazonSqsPrincipalAuthNotificationType',
50
+ 'AmazonSqsPrincipalAuthNotificationTypeResponse',
51
+ 'AzureServiceBusTypeResponse',
52
+ 'AzureServiceBusNotificationType',
53
+ 'EmailNotificationType',
54
+ 'EmailNotificationTypeResponse',
55
+ 'SmsNotificationType',
56
+ 'SmsNotificationTypeResponse',
57
+ 'WebhookNotificationType',
58
+ 'WebhookNotificationTypeResponse',
59
+
60
+ # For workflow application classes
61
+ 'CreateChildTasksAction',
62
+ 'RunWorkerAction',
63
+ 'TriggerParentTaskAction',
64
+ 'CreateChildTasksActionResponse',
65
+ 'RunWorkerActionResponse',
66
+ 'TriggerParentTaskActionResponse',
67
+ 'CreateNewTaskActivity',
68
+ 'UpdateMatchingTasksActivity',
69
+ 'CreateNewTaskActivityResponse',
70
+ 'UpdateMatchingTasksActivityResponse',
71
+ 'Fail',
72
+ 'GroupReconciliation',
73
+ 'HealthCheck',
74
+ 'LuminesceView',
75
+ 'SchedulerJob',
76
+ 'Sleep',
77
+ 'FailResponse',
78
+ 'GroupReconciliationResponse',
79
+ 'HealthCheckResponse',
80
+ 'LuminesceViewResponse',
81
+ 'SchedulerJobResponse',
82
+ 'SleepResponse']:
83
+ return value
84
+
85
+ # Only validate the 'type' property of the class
86
+ if "compliance_parameter_type" != "type":
87
+ return value
88
+
37
89
  if value not in ('BoolComplianceParameter', 'StringComplianceParameter', 'DecimalComplianceParameter', 'DateTimeComplianceParameter', 'PropertyKeyComplianceParameter', 'AddressKeyComplianceParameter', 'PortfolioIdComplianceParameter', 'PortfolioGroupIdComplianceParameter', 'StringListComplianceParameter', 'BoolListComplianceParameter', 'DateTimeListComplianceParameter', 'DecimalListComplianceParameter', 'PropertyKeyListComplianceParameter', 'AddressKeyListComplianceParameter', 'PortfolioIdListComplianceParameter', 'PortfolioGroupIdListComplianceParameter', 'InstrumentListComplianceParameter', 'FilterPredicateComplianceParameter', 'GroupFilterPredicateComplianceParameter', 'GroupBySelectorComplianceParameter', 'PropertyListComplianceParameter', 'GroupCalculationComplianceParameter'):
38
90
  raise ValueError("must be one of enum values ('BoolComplianceParameter', 'StringComplianceParameter', 'DecimalComplianceParameter', 'DateTimeComplianceParameter', 'PropertyKeyComplianceParameter', 'AddressKeyComplianceParameter', 'PortfolioIdComplianceParameter', 'PortfolioGroupIdComplianceParameter', 'StringListComplianceParameter', 'BoolListComplianceParameter', 'DateTimeListComplianceParameter', 'DecimalListComplianceParameter', 'PropertyKeyListComplianceParameter', 'AddressKeyListComplianceParameter', 'PortfolioIdListComplianceParameter', 'PortfolioGroupIdListComplianceParameter', 'InstrumentListComplianceParameter', 'FilterPredicateComplianceParameter', 'GroupFilterPredicateComplianceParameter', 'GroupBySelectorComplianceParameter', 'PropertyListComplianceParameter', 'GroupCalculationComplianceParameter')")
39
91
  return value
@@ -36,6 +36,58 @@ class GroupByStep(ComplianceStep):
36
36
  @validator('compliance_step_type')
37
37
  def compliance_step_type_validate_enum(cls, value):
38
38
  """Validates the enum"""
39
+
40
+ # Finbourne have removed enum validation on all models, except for this use case:
41
+ # Workflow and notification application SDK use the property name 'type' as the discriminator on a number of classes.
42
+ # During instantiation, the value of 'type' is checked against the enum values,
43
+
44
+
45
+ # check it's a class that uses the 'type' property as a discriminator
46
+ # list of classes can be found by searching for 'actual_instance: Union[' in the generated code
47
+ if 'GroupByStep' not in [
48
+ # For notification application classes
49
+ 'AmazonSqsNotificationType',
50
+ 'AmazonSqsNotificationTypeResponse',
51
+ 'AmazonSqsPrincipalAuthNotificationType',
52
+ 'AmazonSqsPrincipalAuthNotificationTypeResponse',
53
+ 'AzureServiceBusTypeResponse',
54
+ 'AzureServiceBusNotificationType',
55
+ 'EmailNotificationType',
56
+ 'EmailNotificationTypeResponse',
57
+ 'SmsNotificationType',
58
+ 'SmsNotificationTypeResponse',
59
+ 'WebhookNotificationType',
60
+ 'WebhookNotificationTypeResponse',
61
+
62
+ # For workflow application classes
63
+ 'CreateChildTasksAction',
64
+ 'RunWorkerAction',
65
+ 'TriggerParentTaskAction',
66
+ 'CreateChildTasksActionResponse',
67
+ 'RunWorkerActionResponse',
68
+ 'TriggerParentTaskActionResponse',
69
+ 'CreateNewTaskActivity',
70
+ 'UpdateMatchingTasksActivity',
71
+ 'CreateNewTaskActivityResponse',
72
+ 'UpdateMatchingTasksActivityResponse',
73
+ 'Fail',
74
+ 'GroupReconciliation',
75
+ 'HealthCheck',
76
+ 'LuminesceView',
77
+ 'SchedulerJob',
78
+ 'Sleep',
79
+ 'FailResponse',
80
+ 'GroupReconciliationResponse',
81
+ 'HealthCheckResponse',
82
+ 'LuminesceViewResponse',
83
+ 'SchedulerJobResponse',
84
+ 'SleepResponse']:
85
+ return value
86
+
87
+ # Only validate the 'type' property of the class
88
+ if "compliance_step_type" != "type":
89
+ return value
90
+
39
91
  if value not in ('FilterStep', 'GroupByStep', 'GroupFilterStep', 'BranchStep', 'RecombineStep', 'CheckStep', 'PercentCheckStep'):
40
92
  raise ValueError("must be one of enum values ('FilterStep', 'GroupByStep', 'GroupFilterStep', 'BranchStep', 'RecombineStep', 'CheckStep', 'PercentCheckStep')")
41
93
  return value