com.kenshoo.pl.simulation.internal.InitialStateRecorder Maven / Gradle / Ivy
                 Go to download
                
        
                    Show more of this group  Show more artifacts with this name
Show all versions of persistence-layer Show documentation
                Show all versions of persistence-layer Show documentation
A Java persistence layer based on JOOQ for high performance and business flow support.
                
             The newest version!
        
        package com.kenshoo.pl.simulation.internal;
import com.google.common.collect.Maps;
import com.kenshoo.pl.entity.*;
import com.kenshoo.pl.entity.spi.OutputGenerator;
import java.util.Collection;
import java.util.Map;
import java.util.stream.Stream;
import static java.util.stream.Collectors.toMap;
public class InitialStateRecorder> implements OutputGenerator {
    private final Collection> fields;
    private Map, CurrentEntityState> entities = Maps.newHashMap();
    public InitialStateRecorder(Collection> fields) {
        this.fields = fields;
    }
    @Override
    public void generate(Collection extends EntityChange> commands, ChangeOperation op, ChangeContext ctx) {
        this.entities = commands.stream().collect(toMap(EntityChange::getIdentifier, ctx::getEntity));
    }
    @Override
    public Stream extends EntityField, ?>> requiredFields(Collection extends EntityField> fieldsToUpdate, ChangeOperation changeOperation) {
        return requiredFields();
    }
    public Entity get(Identifier id) {
        return entities.get(id);
    }
    private Stream extends EntityField, ?>> requiredFields() {
        return fields.stream();
    }
}
            © 2015 - 2025 Weber Informatics LLC | Privacy Policy