/** * Copyright (C) 2014 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.sesame.function.scenarios; import com.opengamma.util.ArgumentChecker; /** * Abstract base class for {@link ScenarioArgument} implementations that contains a field for the function type. */ public class AbstractScenarioArgument<A extends ScenarioArgument<A, F>, F extends ScenarioFunction<A, F>> implements ScenarioArgument<A, F> { /** The type of scenario function that consumes this argument. */ private final Class<F> _functionType; /** * @param functionType the type of scenario function that consumes this argument */ protected AbstractScenarioArgument(Class<F> functionType) { _functionType = ArgumentChecker.notNull(functionType, "functionType"); } @Override public Class<F> getFunctionType() { return _functionType; } }