Skip to content

7.0.0-dev.110

Choose a tag to compare

@ReleaseManagement-BP ReleaseManagement-BP released this 27 May 10:17
cc1bc13

CDM Event Common - Creation of 'ContingentTransfer' and 'ContingentTransferEnum' and transfer of values

Background

The ScheduledTransferEnum contains values that are not scheduled, but rather contingent on an external event. These values are:

  • CorporateAction
  • CreditEvent
  • Exercise

What is being released?

The addition of the following:

  • Add a new enumeration called ContingentTransferEnum which contains the values specified above (removed from ScheduledTransferEnum)
  • Add a new type called ContingentTransfer which contains the enum and the corporateActionTransferType that currently exists in ScheduledTransfer
  • Add settlementOrigin attribute to ContingentTransfer

Review Directions

Changes can be reviewed in PR: #4697

Event Model - Support for Rate Changes on Securities Lending trades

Background

The processing of the QuantityChange primitive instruction is being enhanced to support the entry and maintenance of a schedule of interest rates in a PriceSchedule using the datedValue list.

What is being released?

The key changes are as follows:

Function UpdatePriceAmountForEachMatchingQuantity

  • Now expects a PriceQuantity rather than a Priceas input
  • Calls a new UpdateDatedValue function to update a datedValue entry if one already exists for the effective date of the price change
  • Calls a new InsertDatedValue function to insert a new entry in the datedValue list if one does not exist already for the given effective date
  • The original functionality to update the value in a PriceSchedule remains unchanged

Function PriceUnitEquals

  • Has been enhanced to take the priceSubType into account when comparing two PriceSchedule instances

Function UpdateDatedValue

  • New function to update only those entries in a datedValue list that have a date that matches the effectiveDate passed in.
  • Note: There is an existing function UpdateDatedValues which will update any entries in datedValue whose date is greater than or equal to the effectiveDate. This is not the required processing for price (rate) changes so it was felt that creating a separate function would have less impact on existing use cases.

Function InsertDatedValue

  • New function to insert a new entry into a datedValue list based upon the effectiveDate that was passed in.
  • Supports prefixing where the effectiveDate is prior to the earliest date in the datedValue list, and appending where the effectiveDate is after the latest date in the datedValue list
  • Note: as per the comment on the type, the datedValue list is expected to be maintained in ascending date order

Review Directions

Changes can be reviewed in PR: #4690

Infrastructure - Improve CDM Builds

Background

Several improvements have been identified for the CDM build process:

  • Rosetta sources are currently compiled twice
  • Javadocs are generated for every build, even though they are only required for releases

For more details, see GitHub issue: #4717.

What is being released?

The Maven POM has been updated to:

  • Remove the duplicate compilation step
  • Configure Javadoc generation to run only for release builds

These changes typically reduce Maven build times for contributors by approximately 60%.

Review directions

Changes can be reviewed in PR: #4748