BuiltDataPhenomenon.java
package eu.javaexperience.data.build;
import java.util.HashMap;
import java.util.Map;
import eu.javaexperience.data.DataPhenomenon;
import eu.javaexperience.data.DataPhenomenonClass;
import eu.javaexperience.data.DataPhenomenonEnvironment;
import eu.javaexperience.verify.EnvironmentDependValidator;
public class BuiltDataPhenomenon implements DataPhenomenon
{
protected final int fieldDataLength;
protected final DataPhenomenonClass dataClass;
protected final EnvironmentDependValidator<DataPhenomenonEnvironment, String, String> validator;
public BuiltDataPhenomenon
(
int fieldDataLength,
DataPhenomenonClass dataClass,
EnvironmentDependValidator<DataPhenomenonEnvironment, String, String> validator
)
{
this.fieldDataLength = fieldDataLength;
this.dataClass = dataClass;
this.validator = validator;
}
protected static Map<String, Object> passOrInit(Map<String, Object> map)
{
if(null != map)
{
return map;
}
return new HashMap<>();
}
protected Map<String, Object> map;
@Override
public Map<String, Object> getExtraDataMap()
{
return passOrInit(map);
}
@Override
public int getFieldDataLength()
{
return fieldDataLength;
}
@Override
public DataPhenomenonClass getDataClass()
{
return dataClass;
}
@Override
public EnvironmentDependValidator<DataPhenomenonEnvironment, String, String> getValidator()
{
return validator;
}
}