OpenBCM.Server.TrialDisbursement.ArrearsInterest 0.1.0
OpenBCM.Server.TrialDisbursement.ArrearsInterest
The arrears and interest recalculation step of an OpenBCM trial disbursement
run, as a dependency-injection seam. The legacy engine shelled out to
RecalcArrearsAndInterest.exe here; no source for that program survives, so
this package ships the contract and a no-op that warns rather than an
implementation.
// Program.cs — the default until a real port exists.
builder.Services.AddSingleton<IArrearsInterestRecalculator, NoOpArrearsInterestRecalculator>();
Singleton, not scoped: the singleton TrialDisbursementJobService holds this seam, so a
scoped registration would be a captive dependency. A real implementation that needs
scoped state should inject IServiceScopeFactory and open a scope per call.
// In the engine, on the RecalcArrearsandInterest = 'Y' path only.
string? warning = _arrearsInterest.Run(parameters);
if (warning != null) warnings.Add(warning);
Run returns null when the step ran, and warning text otherwise. parameters
is the command-line string the legacy executable would have been given, built by
the engine exactly as before.
To supply a real implementation, implement IArrearsInterestRecalculator and
register it in place of NoOpArrearsInterestRecalculator.
See the solution README for the call site, the parameter shapes and what skipping the step costs.
Showing the top 20 packages that depend on OpenBCM.Server.TrialDisbursement.ArrearsInterest.
| Packages | Downloads |
|---|---|
|
OpenBCM.Server.TrialDisbursement
The trial disbursement calculation engine for OpenBCM: the port of the
Delphi TTWTrialDisburse (uTWTrialDisburse.pas), retargeted from a Windows
desktop application to a cross-platform server library.
|
14 |
Initial release. The seam only: the IArrearsInterestRecalculator contract and the no-op implementation that warns instead of running. No port of RecalcArrearsAndInterest.exe exists yet.
.NET 10.0
- No dependencies.
| Version | Downloads | Last updated |
|---|---|---|
| 0.1.0 | 20 | 08/26/2026 |