
com.kenshoo.pl.simulation.internal.FakeAutoIncGenerator Maven / Gradle / Ivy
package com.kenshoo.pl.simulation.internal;
import com.kenshoo.pl.entity.*;
import com.kenshoo.pl.entity.internal.EntityWithGeneratedId;
import com.kenshoo.pl.entity.spi.OutputGenerator;
import java.util.Collection;
public class FakeAutoIncGenerator> implements OutputGenerator {
private final E entityType;
private final Object SOME_FAKE_VALUE = new Object();
public FakeAutoIncGenerator(E entityType) {
this.entityType = entityType;
}
@Override
public void generate(Collection extends EntityChange> commands, ChangeOperation op, ChangeContext ctx) {
entityType.getPrimaryIdentityField().ifPresent(autoIncId -> populateFakeValue(autoIncId, commands, ctx));
}
private void populateFakeValue(EntityField field, Collection extends EntityChange> commands, ChangeContext ctx) {
commands.forEach(cmd -> ctx.addEntity(cmd, new EntityWithGeneratedId(field, SOME_FAKE_VALUE)));
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy