DataPhenomenonInstanceBuilder.java
package eu.javaexperience.data.build;
import eu.javaexperience.data.DataPhenomenon;
import eu.javaexperience.data.DataPhenomenonEnvironment;
import eu.javaexperience.data.DataPhenomenonInstance;
import eu.javaexperience.data.DataPhenomenonUnit;
import eu.javaexperience.interfaces.simple.getBy.GetBy1;
import eu.javaexperience.patterns.creational.builder.unit.InstanceBuilder;
import eu.javaexperience.verify.EnvironmentDependValidator;
public class DataPhenomenonInstanceBuilder extends InstanceBuilder<DataPhenomenonInstanceFields, DataPhenomenonInstance>
{
public static final GetBy1<DataPhenomenonInstance, InstanceBuilder<DataPhenomenonInstanceFields, DataPhenomenonInstance>> CREATOR = new GetBy1<DataPhenomenonInstance, InstanceBuilder<DataPhenomenonInstanceFields, DataPhenomenonInstance>>()
{
@Override
public DataPhenomenonInstance getBy
(
InstanceBuilder<DataPhenomenonInstanceFields, DataPhenomenonInstance> a
)
{
return new BuiltDataPhenomenonInstance
(
(DataPhenomenon) a.get(DataPhenomenonInstanceFields.phenomenon),
(String) a.get(DataPhenomenonInstanceFields.name),
(Boolean) a.get(DataPhenomenonInstanceFields.required),
(EnvironmentDependValidator<DataPhenomenonEnvironment, DataPhenomenonUnit, String>) a.get(DataPhenomenonInstanceFields.validator)
);
}
};
public DataPhenomenonInstanceBuilder()
{
super(DataPhenomenonInstanceFields.class, CREATOR);
}
}