Skip to content

PeriodRatingInfoExtensions

PeriodRatingInfoExtensions is a VB extension-method module that supplies shared, reusable behavior for any iPeriodRatingInfo implementation: market-type convenience checks (IsVoluntary, IsAssignedRisk) and base implementations of value equality and hash-code computation (BaseEquals, BaseGetHashCode) over all eight rating attributes. Implementers of iPeriodRatingInfo call these extension methods from their own Equals/GetHashCode overrides rather than re-implementing the comparison logic.

Purpose

  • Provide IsVoluntary/IsAssignedRisk convenience checks against iPeriodRatingInfo.MarketType so callers do not repeat the enum comparison.
  • Provide BaseEquals, comparing AnniversaryRatingDate, RatingEffectiveDate, IsARDExtended, IsREDExtended, EffectiveDate, ExpirationDate, RateTierCode, and MarketType, so that equality requires all eight rating attributes to match, per BR-POL-015.
  • Provide BaseGetHashCode, computing a hash from the concatenated string representation of the same eight attributes, so implementers get a hash code consistent with BaseEquals.

Context

  • Namespace: SAIF.Business.Policy
  • Assembly/package: SAIF.Business.Policy

Public members

Member Signature Purpose
IsVoluntary <Extension()> Function IsVoluntary(ByVal target As iPeriodRatingInfo) As Boolean Returns True when target.MarketType is Enums.MarketTypes.Voluntary.
IsAssignedRisk <Extension()> Function IsAssignedRisk(ByVal target As iPeriodRatingInfo) As Boolean Returns True when target.MarketType is Enums.MarketTypes.AssignedRisk.
BaseEquals <Extension()> Function BaseEquals(ByVal target As iPeriodRatingInfo, ByVal inObject As iPeriodRatingInfo) As Boolean Compares all eight rating attributes between target and inObject, returning True only if every attribute matches, per BR-POL-015.
BaseGetHashCode <Extension()> Function BaseGetHashCode(ByVal target As iPeriodRatingInfo) As Integer Computes a hash code from the concatenated string values of all eight rating attributes, consistent with BaseEquals.

Behavioral notes

  • Source declaration: Business\SAIF.Business.Policy\iPeriodRatingInfo.vb.
  • Related operations, rules, and SQL are cross-referenced from the library-level documentation.

Constraints and usage notes

  • Consumers should rely on the declared public surface rather than internal implementation details.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • Business\SAIF.Business.Policy\iPeriodRatingInfo.vb