## Interface Resolvable<T>

• Type Parameters:
T - the type of the resolved result
All Known Subinterfaces:
ResolvableTrade<T>, SwapLeg
All Known Implementing Classes:
AdjustablePayment, Bill, BillPosition, BillTrade, BondFuture, BondFutureOption, BondFutureOptionPosition, BondFutureOptionTrade, BondFuturePosition, BondFutureTrade, BulletPayment, BulletPaymentTrade, BusinessDayAdjustment, CapitalIndexedBond, CapitalIndexedBondPosition, CapitalIndexedBondTrade, Cds, CdsIndex, CdsIndexTrade, CdsTrade, Cms, CmsLeg, CmsTrade, DaysAdjustment, Dsf, DsfPosition, DsfTrade, FixedCouponBond, FixedCouponBondPosition, FixedCouponBondTrade, Fra, FraTrade, FxNdf, FxNdfTrade, FxSingle, FxSingleBarrierOption, FxSingleBarrierOptionTrade, FxSingleTrade, FxSwap, FxSwapTrade, FxVanillaOption, FxVanillaOptionTrade, HolidayCalendarId, IborCapFloor, IborCapFloorLeg, IborCapFloorTrade, IborFixingDeposit, IborFixingDepositTrade, IborFuture, IborFutureOption, IborFutureOptionPosition, IborFutureOptionTrade, IborFuturePosition, IborFutureTrade, KnownAmountSwapLeg, OvernightFuture, OvernightFuturePosition, OvernightFutureTrade, PeriodAdjustment, RateCalculationSwapLeg, RatePeriodSwapLeg, Swap, Swaption, SwaptionTrade, SwapTrade, TenorAdjustment, TermDeposit, TermDepositTrade

public interface Resolvable<T>
An object that can be resolved against reference data.

Interface marking those objects that can be resolved using ReferenceData. Implementations of this interface will use identifiers to refer to key concepts, such as holiday calendars and securities.

When the resolve(ReferenceData) method is called, the identifiers are resolved. The resolving process will take each identifier, look it up using the ReferenceData, and return a new "resolved" instance. Typically the result is of a type that is optimized for pricing.

Resolved objects may be bound to data that changes over time, such as holiday calendars. If the data changes, such as the addition of a new holiday, the resolved form will not be updated. Care must be taken when placing the resolved form in a cache or persistence layer.

Implementations must be immutable and thread-safe beans.

• ### Method Summary

All Methods
Modifier and Type Method Description
T resolve​(ReferenceData refData)
Resolves this object using the specified reference data.
• ### Method Detail

• #### resolve

T resolve​(ReferenceData refData)
Resolves this object using the specified reference data.

This converts the object implementing this interface to the equivalent resolved form. All ReferenceDataId identifiers in this instance will be resolved. The resolved form will typically be a type that is optimized for pricing.

Resolved objects may be bound to data that changes over time, such as holiday calendars. If the data changes, such as the addition of a new holiday, the resolved form will not be updated. Care must be taken when placing the resolved form in a cache or persistence layer.

Parameters:
refData - the reference data to use when resolving
Returns:
the resolved instance
Throws:
ReferenceDataNotFoundException - if an identifier cannot be resolved in the reference data
java.lang.RuntimeException - if unable to resolve due to an invalid definition