Skip to content
Snippets Groups Projects

Draft: Add sequence generators

Open Bernhard Johannes Berger requested to merge 160-new-generator-type-sequencer into develop
2 unresolved threads
Files
6
package de.evoal.pipeline.components;
import java.util.Iterator;
import javax.enterprise.context.Dependent;
import org.eclipse.emf.ecore.EStructuralFeature;
import de.evoal.pipeline.api.model.TypedEObject;
import de.evoal.pipeline.api.model.ComponentImpl;
import lombok.extern.slf4j.Slf4j;
import javax.inject.Named;
import lombok.NonNull;
//import net.objecthunter.exp4j.Expression;
//import net.objecthunter.exp4j.ExpressionBuilder;
@Dependent
@Named("de.evoal.pipeline.components.Sequence")
@Slf4j
+3
public class Sequence extends ComponentImpl implements Visitable{
private double start_value;
private String sequence;
private String params;
private double step_size;
private double current_value;
public double getNextValueOfSequence()
{
System.out.println("Next calculated Value of "+ this.sequence + " we started at "+ this.start_value +" the new value we plugged in is "+ this.current_value +" the result is " + (this.current_value+1.0));
current_value = current_value+1.0;
return current_value;
}
@Override
public void accept(Visitor visitor)
{
visitor.visit(this);
}
@Override
public @NonNull TypedEObject apply(@NonNull TypedEObject object) {
//Currently I want to do the BEAR MINIMUM just get a number back
final Iterator<EStructuralFeature> iterator = getWrites().iterator(); //iterator that lets us walk over variable that we need to write
while(iterator.hasNext())
{
final EStructuralFeature feature = iterator.next();
double value= this.getNextValueOfSequence();
object.eSet(feature, value);
}
return object;
}
}
\ No newline at end of file
Loading