package org.molgenis.data.mapper.algorithmgenerator.bean;
import com.google.auto.value.AutoValue;
import org.molgenis.data.mapper.mapping.model.AttributeMapping.AlgorithmState;
import org.molgenis.data.meta.model.Attribute;
import org.molgenis.gson.AutoGson;
import javax.annotation.Nullable;
import java.util.Set;
@AutoValue
@AutoGson(autoValueClass = AutoValue_GeneratedAlgorithm.class)
public abstract class GeneratedAlgorithm
{
public abstract String getAlgorithm();
@Nullable
public abstract Set<Attribute> getSourceAttributes();
@Nullable
public abstract AlgorithmState getAlgorithmState();
public static GeneratedAlgorithm create(String algorithm, Set<Attribute> sourceAttributes,
AlgorithmState algorithmState)
{
return new AutoValue_GeneratedAlgorithm(algorithm, sourceAttributes, algorithmState);
}
}