From bfd2ad525c70cf65a0b4bea00a360fd5a24d8dd5 Mon Sep 17 00:00:00 2001 From: Concourse Date: Fri, 1 Mar 2024 13:48:31 +0000 Subject: [PATCH] Updates for v2.0.535 --- sdk/api/openapi.yaml | 194 ++++++++--- sdk/docs/FlexibleLoan.md | 17 + sdk/docs/InstrumentType.md | 2 + sdk/docs/LusidInstrument.md | 3 +- sdk/pom.xml | 2 +- .../java/com/finbourne/lusid/ApiClient.java | 2 +- .../com/finbourne/lusid/Configuration.java | 2 +- .../main/java/com/finbourne/lusid/JSON.java | 11 + .../finbourne/lusid/model/FlexibleLoan.java | 306 ++++++++++++++++++ .../finbourne/lusid/model/InstrumentType.java | 4 +- .../lusid/model/LusidInstrument.java | 11 +- 11 files changed, 510 insertions(+), 44 deletions(-) create mode 100644 sdk/docs/FlexibleLoan.md create mode 100644 sdk/src/main/java/com/finbourne/lusid/model/FlexibleLoan.java diff --git a/sdk/api/openapi.yaml b/sdk/api/openapi.yaml index e412e1c25af..c9ccd529d53 100644 --- a/sdk/api/openapi.yaml +++ b/sdk/api/openapi.yaml @@ -347,7 +347,7 @@ info: | 886|Cannot lock the period.| | termsOfService: https://www.finbourne.com/legal/terms-conditions title: LUSID API - version: 0.11.6319 + version: 0.11.6320 x-logo: url: https://www.lusid.com/app/assets/logo_white.png backgroundColor: '#415464' @@ -89317,7 +89317,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -89356,6 +89356,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - basketName @@ -91244,7 +91245,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -91283,6 +91284,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - couponRate @@ -92339,7 +92341,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -92378,6 +92380,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - capFloorType @@ -92748,7 +92751,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -92787,6 +92790,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - domCcy @@ -92968,7 +92972,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -93007,6 +93011,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - couponRate @@ -94205,7 +94210,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -94244,6 +94249,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - instrumentType @@ -96707,7 +96713,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -96746,6 +96752,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - code @@ -99113,7 +99120,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -99152,6 +99159,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - couponRate @@ -102679,7 +102687,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -102718,6 +102726,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - domCcy @@ -102944,7 +102953,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -102983,6 +102992,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - code @@ -103062,7 +103072,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -103101,6 +103111,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - code @@ -103313,7 +103324,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -103352,6 +103363,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - contractDetails @@ -103888,7 +103900,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -103927,6 +103939,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - content @@ -104659,7 +104672,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -104698,6 +104711,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - instrumentType @@ -104775,6 +104789,92 @@ components: - startDate type: object description: Schedule for fixed coupon payments + FlexibleLoan: + allOf: + - $ref: '#/components/schemas/LusidInstrument' + - properties: + startDate: + description: The start date of the instrument. This is normally synonymous + with the trade-date. + format: date-time + type: string + maturityDate: + description: "The final maturity date of the instrument. This means the\ + \ last date on which the instruments makes a payment of any amount.\r\ + \nFor the avoidance of doubt, that is not necessarily prior to its last\ + \ sensitivity date for the purposes of risk; e.g. instruments such as\r\ + \nConstant Maturity Swaps (CMS) often have sensitivities to rates that\ + \ may well be observed or set prior to the maturity date, but refer\ + \ to a termination date beyond it." + format: date-time + type: string + domCcy: + description: The domestic currency of the instrument. + type: string + schedules: + description: Repayment schedules for the loan. + items: + $ref: '#/components/schemas/Schedule' + type: array + instrumentType: + description: "The available values are: 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" + enum: + - 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 + type: string + required: + - domCcy + - instrumentType + - maturityDate + - schedules + - startDate + type: object + description: "LUSID flexible loan instrument. Represents the basic building\ + \ block of a more complex loan structure that\r\ncan handle deferred interest\ + \ payments." FloatingLeg: allOf: - $ref: '#/components/schemas/InstrumentLeg' @@ -104820,7 +104920,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -104859,6 +104959,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - instrumentType @@ -105152,7 +105253,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -105191,6 +105292,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - domCcy @@ -105256,7 +105358,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -105295,6 +105397,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - instrumentType @@ -105381,7 +105484,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -105420,6 +105523,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - distributionPaymentType @@ -105507,7 +105611,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -105546,6 +105650,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - contractDetails @@ -105794,7 +105899,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -105833,6 +105938,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - domAmount @@ -106562,7 +106668,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -106601,6 +106707,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - domCcy @@ -106684,7 +106791,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -106723,6 +106830,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - farFxForward @@ -109593,7 +109701,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -109632,6 +109740,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - calculationType @@ -109768,7 +109877,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -109807,6 +109916,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - couponRate @@ -109849,7 +109959,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -109888,6 +109998,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - fixedLeg @@ -111208,7 +111319,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -111247,6 +111358,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - instrumentType @@ -111906,6 +112018,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string InterestRateSwap: allOf: @@ -111957,7 +112070,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -111996,6 +112109,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - instrumentType @@ -112047,7 +112161,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -112086,6 +112200,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - deliveryMethod @@ -113359,7 +113474,7 @@ components: \ CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -113398,6 +113513,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - instrumentType @@ -130601,7 +130717,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -130640,6 +130756,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - instrumentId @@ -131407,7 +131524,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -131446,6 +131563,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - accrualBasis @@ -141747,7 +141865,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -141786,6 +141904,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - domCcy @@ -141844,7 +141963,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -141883,6 +142002,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - assetClass @@ -142584,7 +142704,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -142623,6 +142743,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - contractSize @@ -142664,7 +142785,7 @@ components: \ CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement,\ \ SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument,\ \ ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan,\ - \ TotalReturnSwap, InflationLeg, FundShareClass" + \ TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan" enum: - QuotedSecurity - InterestRateSwap @@ -142703,6 +142824,7 @@ components: - TotalReturnSwap - InflationLeg - FundShareClass + - FlexibleLoan type: string required: - assetLeg diff --git a/sdk/docs/FlexibleLoan.md b/sdk/docs/FlexibleLoan.md new file mode 100644 index 00000000000..41f48660763 --- /dev/null +++ b/sdk/docs/FlexibleLoan.md @@ -0,0 +1,17 @@ + + +# FlexibleLoan + +LUSID flexible loan instrument. Represents the basic building block of a more complex loan structure that can handle deferred interest payments. + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**startDate** | **OffsetDateTime** | The start date of the instrument. This is normally synonymous with the trade-date. | | +|**maturityDate** | **OffsetDateTime** | The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates that may well be observed or set prior to the maturity date, but refer to a termination date beyond it. | | +|**domCcy** | **String** | The domestic currency of the instrument. | | +|**schedules** | [**List<Schedule>**](Schedule.md) | Repayment schedules for the loan. | | + + + diff --git a/sdk/docs/InstrumentType.md b/sdk/docs/InstrumentType.md index c41bffb08b6..5791c2a0892 100644 --- a/sdk/docs/InstrumentType.md +++ b/sdk/docs/InstrumentType.md @@ -79,5 +79,7 @@ * `FUNDSHARECLASS` (value: `"FundShareClass"`) +* `FLEXIBLELOAN` (value: `"FlexibleLoan"`) + diff --git a/sdk/docs/LusidInstrument.md b/sdk/docs/LusidInstrument.md index 68109cf3f68..5eac9e38235 100644 --- a/sdk/docs/LusidInstrument.md +++ b/sdk/docs/LusidInstrument.md @@ -8,7 +8,7 @@ Base class in the hierarchy for representing the full economic definition of ins | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**instrumentType** | [**InstrumentTypeEnum**](#InstrumentTypeEnum) | The available values are: 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 | | +|**instrumentType** | [**InstrumentTypeEnum**](#InstrumentTypeEnum) | The available values are: 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 | | @@ -53,6 +53,7 @@ Base class in the hierarchy for representing the full economic definition of ins | TOTALRETURNSWAP | "TotalReturnSwap" | | INFLATIONLEG | "InflationLeg" | | FUNDSHARECLASS | "FundShareClass" | +| FLEXIBLELOAN | "FlexibleLoan" | diff --git a/sdk/pom.xml b/sdk/pom.xml index 0f91b30393c..4ed1cafbed2 100644 --- a/sdk/pom.xml +++ b/sdk/pom.xml @@ -5,7 +5,7 @@ lusid-sdk jar lusid-sdk - 2.0.534 + 2.0.535 https://github.com/finbourne/lusid-sdk-java lusid diff --git a/sdk/src/main/java/com/finbourne/lusid/ApiClient.java b/sdk/src/main/java/com/finbourne/lusid/ApiClient.java index 827aaaa1132..5c560174c64 100644 --- a/sdk/src/main/java/com/finbourne/lusid/ApiClient.java +++ b/sdk/src/main/java/com/finbourne/lusid/ApiClient.java @@ -208,7 +208,7 @@ private void init() { json = new JSON(); // Set default User-Agent. - setUserAgent("OpenAPI-Generator/2.0.534/java"); + setUserAgent("OpenAPI-Generator/2.0.535/java"); authentications = new HashMap(); } diff --git a/sdk/src/main/java/com/finbourne/lusid/Configuration.java b/sdk/src/main/java/com/finbourne/lusid/Configuration.java index 0193a0dc7c1..15db40e0723 100644 --- a/sdk/src/main/java/com/finbourne/lusid/Configuration.java +++ b/sdk/src/main/java/com/finbourne/lusid/Configuration.java @@ -12,7 +12,7 @@ @jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class Configuration { - public static final String VERSION = "2.0.534"; + public static final String VERSION = "2.0.535"; private static ApiClient defaultApiClient = new ApiClient(); diff --git a/sdk/src/main/java/com/finbourne/lusid/JSON.java b/sdk/src/main/java/com/finbourne/lusid/JSON.java index ad86af2f3a9..4ea1a2078a8 100644 --- a/sdk/src/main/java/com/finbourne/lusid/JSON.java +++ b/sdk/src/main/java/com/finbourne/lusid/JSON.java @@ -640,6 +640,15 @@ public Class getClassForEleme return getClassByDiscriminator(classByDiscriminatorValue, getDiscriminatorValue(readElement, "scheduleType")); } + }) + .registerTypeSelector(com.finbourne.lusid.model.FlexibleLoan.class, new TypeSelector() { + @Override + public Class getClassForElement(JsonElement readElement) { + Map classByDiscriminatorValue = new HashMap(); + classByDiscriminatorValue.put("FlexibleLoan", com.finbourne.lusid.model.FlexibleLoan.class); + return getClassByDiscriminator(classByDiscriminatorValue, + getDiscriminatorValue(readElement, "instrumentType")); + } }) .registerTypeSelector(com.finbourne.lusid.model.FloatSchedule.class, new TypeSelector() { @Override @@ -1097,6 +1106,7 @@ public Class getClassForEle classByDiscriminatorValue.put("ExchangeTradedOption", com.finbourne.lusid.model.ExchangeTradedOption.class); classByDiscriminatorValue.put("ExoticInstrument", com.finbourne.lusid.model.ExoticInstrument.class); classByDiscriminatorValue.put("FixedLeg", com.finbourne.lusid.model.FixedLeg.class); + classByDiscriminatorValue.put("FlexibleLoan", com.finbourne.lusid.model.FlexibleLoan.class); classByDiscriminatorValue.put("FloatingLeg", com.finbourne.lusid.model.FloatingLeg.class); classByDiscriminatorValue.put("ForwardRateAgreement", com.finbourne.lusid.model.ForwardRateAgreement.class); classByDiscriminatorValue.put("FundShareClass", com.finbourne.lusid.model.FundShareClass.class); @@ -1979,6 +1989,7 @@ private static Class getClassByDiscriminator(Map classByDiscriminatorValue, Stri gsonBuilder.registerTypeAdapterFactory(new com.finbourne.lusid.model.FixedLeg.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.finbourne.lusid.model.FixedLegAllOfOverrides.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.finbourne.lusid.model.FixedSchedule.CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory(new com.finbourne.lusid.model.FlexibleLoan.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.finbourne.lusid.model.FloatSchedule.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.finbourne.lusid.model.FloatingLeg.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory(new com.finbourne.lusid.model.FlowConventionName.CustomTypeAdapterFactory()); diff --git a/sdk/src/main/java/com/finbourne/lusid/model/FlexibleLoan.java b/sdk/src/main/java/com/finbourne/lusid/model/FlexibleLoan.java new file mode 100644 index 00000000000..05d92bd9bcc --- /dev/null +++ b/sdk/src/main/java/com/finbourne/lusid/model/FlexibleLoan.java @@ -0,0 +1,306 @@ +/* + * LUSID API + * + * Contact: info@finbourne.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +package com.finbourne.lusid.model; + +import java.util.Objects; +import com.finbourne.lusid.model.LusidInstrument; +import com.finbourne.lusid.model.Schedule; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; +import java.time.OffsetDateTime; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonArray; +import com.google.gson.JsonDeserializationContext; +import com.google.gson.JsonDeserializer; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParseException; +import com.google.gson.TypeAdapterFactory; +import com.google.gson.reflect.TypeToken; +import com.google.gson.TypeAdapter; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import java.io.IOException; + +import java.lang.reflect.Type; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; + +import com.finbourne.lusid.JSON; + +/** + * LUSID flexible loan instrument. Represents the basic building block of a more complex loan structure that can handle deferred interest payments. + */ +@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class FlexibleLoan extends LusidInstrument { + public static final String SERIALIZED_NAME_START_DATE = "startDate"; + @SerializedName(SERIALIZED_NAME_START_DATE) + private OffsetDateTime startDate; + + public static final String SERIALIZED_NAME_MATURITY_DATE = "maturityDate"; + @SerializedName(SERIALIZED_NAME_MATURITY_DATE) + private OffsetDateTime maturityDate; + + public static final String SERIALIZED_NAME_DOM_CCY = "domCcy"; + @SerializedName(SERIALIZED_NAME_DOM_CCY) + private String domCcy; + + public static final String SERIALIZED_NAME_SCHEDULES = "schedules"; + @SerializedName(SERIALIZED_NAME_SCHEDULES) + private List schedules = new ArrayList<>(); + + public FlexibleLoan() { + // this.instrumentType = this.getClass().getSimpleName(); + } + + public FlexibleLoan startDate(OffsetDateTime startDate) { + + this.startDate = startDate; + return this; + } + + /** + * The start date of the instrument. This is normally synonymous with the trade-date. + * @return startDate + **/ + @jakarta.annotation.Nonnull + public OffsetDateTime getStartDate() { + return startDate; + } + + + public void setStartDate(OffsetDateTime startDate) { + this.startDate = startDate; + } + + + public FlexibleLoan maturityDate(OffsetDateTime maturityDate) { + + this.maturityDate = maturityDate; + return this; + } + + /** + * The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates that may well be observed or set prior to the maturity date, but refer to a termination date beyond it. + * @return maturityDate + **/ + @jakarta.annotation.Nonnull + public OffsetDateTime getMaturityDate() { + return maturityDate; + } + + + public void setMaturityDate(OffsetDateTime maturityDate) { + this.maturityDate = maturityDate; + } + + + public FlexibleLoan domCcy(String domCcy) { + + this.domCcy = domCcy; + return this; + } + + /** + * The domestic currency of the instrument. + * @return domCcy + **/ + @jakarta.annotation.Nonnull + public String getDomCcy() { + return domCcy; + } + + + public void setDomCcy(String domCcy) { + this.domCcy = domCcy; + } + + + public FlexibleLoan schedules(List schedules) { + + this.schedules = schedules; + return this; + } + + public FlexibleLoan addSchedulesItem(Schedule schedulesItem) { + if (this.schedules == null) { + this.schedules = new ArrayList<>(); + } + this.schedules.add(schedulesItem); + return this; + } + + /** + * Repayment schedules for the loan. + * @return schedules + **/ + @jakarta.annotation.Nonnull + public List getSchedules() { + return schedules; + } + + + public void setSchedules(List schedules) { + this.schedules = schedules; + } + + + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + FlexibleLoan flexibleLoan = (FlexibleLoan) o; + return Objects.equals(this.startDate, flexibleLoan.startDate) && + Objects.equals(this.maturityDate, flexibleLoan.maturityDate) && + Objects.equals(this.domCcy, flexibleLoan.domCcy) && + Objects.equals(this.schedules, flexibleLoan.schedules) && + super.equals(o); + } + + @Override + public int hashCode() { + return Objects.hash(startDate, maturityDate, domCcy, schedules, super.hashCode()); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class FlexibleLoan {\n"); + sb.append(" ").append(toIndentedString(super.toString())).append("\n"); + sb.append(" startDate: ").append(toIndentedString(startDate)).append("\n"); + sb.append(" maturityDate: ").append(toIndentedString(maturityDate)).append("\n"); + sb.append(" domCcy: ").append(toIndentedString(domCcy)).append("\n"); + sb.append(" schedules: ").append(toIndentedString(schedules)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + + public static HashSet openapiFields; + public static HashSet openapiRequiredFields; + + static { + // a set of all properties/fields (JSON key names) + openapiFields = new HashSet(); + openapiFields.add("instrumentType"); + openapiFields.add("startDate"); + openapiFields.add("maturityDate"); + openapiFields.add("domCcy"); + openapiFields.add("schedules"); + + // a set of required properties/fields (JSON key names) + openapiRequiredFields = new HashSet(); + openapiRequiredFields.add("startDate"); + openapiRequiredFields.add("maturityDate"); + openapiRequiredFields.add("domCcy"); + openapiRequiredFields.add("schedules"); + openapiRequiredFields.add("instrumentType"); + } + + /** + * Validates the JSON Element and throws an exception if issues found + * + * @param jsonElement JSON Element + * @throws IOException if the JSON Element is invalid with respect to FlexibleLoan + */ + public static void validateJsonElement(JsonElement jsonElement) throws IOException { + if (jsonElement == null) { + if (!FlexibleLoan.openapiRequiredFields.isEmpty()) { // has required fields but JSON element is null + throw new IllegalArgumentException(String.format("The required field(s) %s in FlexibleLoan is not found in the empty JSON string", FlexibleLoan.openapiRequiredFields.toString())); + } + } + + // check to make sure all required properties/fields are present in the JSON string + for (String requiredField : FlexibleLoan.openapiRequiredFields) { + if (jsonElement.getAsJsonObject().get(requiredField) == null) { + throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonElement.toString())); + } + } + } + + public static class CustomTypeAdapterFactory implements TypeAdapterFactory { + @SuppressWarnings("unchecked") + @Override + public TypeAdapter create(Gson gson, TypeToken type) { + if (!FlexibleLoan.class.isAssignableFrom(type.getRawType())) { + return null; // this class only serializes 'FlexibleLoan' and its subtypes + } + final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class); + final TypeAdapter thisAdapter + = gson.getDelegateAdapter(this, TypeToken.get(FlexibleLoan.class)); + + return (TypeAdapter) new TypeAdapter() { + @Override + public void write(JsonWriter out, FlexibleLoan value) throws IOException { + JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject(); + elementAdapter.write(out, obj); + } + + @Override + public FlexibleLoan read(JsonReader in) throws IOException { + JsonElement jsonElement = elementAdapter.read(in); + validateJsonElement(jsonElement); + return thisAdapter.fromJsonTree(jsonElement); + } + + }.nullSafe(); + } + } + + /** + * Create an instance of FlexibleLoan given an JSON string + * + * @param jsonString JSON string + * @return An instance of FlexibleLoan + * @throws IOException if the JSON string is invalid with respect to FlexibleLoan + */ + public static FlexibleLoan fromJson(String jsonString) throws IOException { + return JSON.getGson().fromJson(jsonString, FlexibleLoan.class); + } + + /** + * Convert an instance of FlexibleLoan to an JSON string + * + * @return JSON string + */ + public String toJson() { + return JSON.getGson().toJson(this); + } +} diff --git a/sdk/src/main/java/com/finbourne/lusid/model/InstrumentType.java b/sdk/src/main/java/com/finbourne/lusid/model/InstrumentType.java index cd709cd91e4..43cf85f02e1 100644 --- a/sdk/src/main/java/com/finbourne/lusid/model/InstrumentType.java +++ b/sdk/src/main/java/com/finbourne/lusid/model/InstrumentType.java @@ -97,7 +97,9 @@ public enum InstrumentType { INFLATIONLEG("InflationLeg"), - FUNDSHARECLASS("FundShareClass"); + FUNDSHARECLASS("FundShareClass"), + + FLEXIBLELOAN("FlexibleLoan"); private String value; diff --git a/sdk/src/main/java/com/finbourne/lusid/model/LusidInstrument.java b/sdk/src/main/java/com/finbourne/lusid/model/LusidInstrument.java index a8cb3c830da..2d13cd61ca0 100644 --- a/sdk/src/main/java/com/finbourne/lusid/model/LusidInstrument.java +++ b/sdk/src/main/java/com/finbourne/lusid/model/LusidInstrument.java @@ -50,7 +50,7 @@ @jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") public class LusidInstrument { /** - * The available values are: 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 + * The available values are: 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 */ @JsonAdapter(InstrumentTypeEnum.Adapter.class) public enum InstrumentTypeEnum { @@ -126,7 +126,9 @@ public enum InstrumentTypeEnum { INFLATIONLEG("InflationLeg"), - FUNDSHARECLASS("FundShareClass"); + FUNDSHARECLASS("FundShareClass"), + + FLEXIBLELOAN("FlexibleLoan"); private String value; @@ -180,7 +182,7 @@ public LusidInstrument instrumentType(InstrumentTypeEnum instrumentType) { } /** - * The available values are: 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 + * The available values are: 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 * @return instrumentType **/ @jakarta.annotation.Nonnull @@ -303,6 +305,9 @@ public static void validateJsonElement(JsonElement jsonElement) throws IOExcepti case "FixedLeg": FixedLeg.validateJsonElement(jsonElement); break; + case "FlexibleLoan": + FlexibleLoan.validateJsonElement(jsonElement); + break; case "FloatingLeg": FloatingLeg.validateJsonElement(jsonElement); break;