All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.simpleflatmapper.map.impl.StaticMapperEnumarable Maven / Gradle / Ivy

package org.simpleflatmapper.map.impl;

import org.simpleflatmapper.map.Mapper;
import org.simpleflatmapper.map.MappingContext;
import org.simpleflatmapper.util.Enumarable;

public class StaticMapperEnumarable implements Enumarable {

    private final Mapper mapper;
    private final MappingContext mappingContext;


    private final Enumarable sourceEnumarable;

    public StaticMapperEnumarable(Mapper mapper,
                                  MappingContext mappingContext,
                                  Enumarable sourceEnumarable) {
        this.mapper = mapper;
        this.mappingContext = mappingContext;
        this.sourceEnumarable = sourceEnumarable;
    }

    @Override
    public boolean next() {
        return sourceEnumarable.next();
    }

    @Override
    public T currentValue() {
        return mapper.map(sourceEnumarable.currentValue(), mappingContext);
    }

    @Override
    public String toString() {
        return "StaticMapperEnumarable{" +
                "jdbcMapper=" + mapper +
                '}';
    }
}