/* ParameterIterationSettings.java created 2007-12-05 * */ package org.signalml.method.iterator; import java.io.Serializable; import org.springframework.context.MessageSourceResolvable; /** ParameterIterationSettings * * * @author Michal Dobaczewski © 2007-2008 CC Otwarte Systemy Komputerowe Sp. z o.o. */ public class ParameterIterationSettings implements Serializable, MessageSourceResolvable { private static final long serialVersionUID = 1L; private IterableParameter parameter; private boolean iterated; private Object startValue; private Object endValue; public ParameterIterationSettings(IterableParameter parameter) { if (parameter == null) { throw new NullPointerException("No parameter"); } this.parameter = parameter; } public boolean isIterated() { return iterated; } public void setIterated(boolean iterated) { this.iterated = iterated; } public Object getStartValue() { return startValue; } public void setStartValue(Object startValue) { this.startValue = startValue; } public Object getEndValue() { return endValue; } public void setEndValue(Object endValue) { this.endValue = endValue; } public IterableParameter getParameter() { return parameter; } public Object setupForIteration(int iteration, int totalIterations) { if (iterated) { return parameter.setIterationValue(startValue, endValue, iteration, totalIterations); } else { return parameter.getValue(); } } @Override public Object[] getArguments() { return parameter.getArguments(); } @Override public String[] getCodes() { return parameter.getCodes(); } @Override public String getDefaultMessage() { return parameter.getDefaultMessage(); } }