/** * Copyright (C) 2013 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.analytics.financial.interestrate; import com.opengamma.analytics.financial.instrument.InstrumentDefinitionVisitor; import com.opengamma.analytics.financial.instrument.InstrumentDefinitionVisitorSameValueAdapter; import com.opengamma.analytics.financial.instrument.payment.CouponIborGearingDefinition; /** * Gets the gearing of each coupon. The default value returned is one. */ public final class CouponGearingVisitor extends InstrumentDefinitionVisitorSameValueAdapter<Void, Double> { /** The singleton instance */ private static final InstrumentDefinitionVisitor<Void, Double> INSTANCE = new CouponGearingVisitor(); /** * Gets the singleton instance. * @return The instance */ public static InstrumentDefinitionVisitor<Void, Double> getInstance() { return INSTANCE; } /** * Private constructor setting the default spread value to one. */ private CouponGearingVisitor() { super(1.); } @Override public Double visitCouponIborGearingDefinition(final CouponIborGearingDefinition definition) { return definition.getFactor(); } }