package org.magenta.example; import org.magenta.example.generators.CarSpecification; import org.magenta.example.generators.ColorSpecification; import org.magenta.example.generators.TripSpecification; import com.google.common.collect.Range; public class ExampleDataSpecification implements ColorSpecification,CarSpecification, TripSpecification { private static Range<Integer> FULL_RANGE = Range.closed(0, 255); private static Range<Integer> EMPTY = Range.closed(0, 0); private Range<Integer> reds = FULL_RANGE; private Range<Integer> greens = FULL_RANGE; private Range<Integer> blues = FULL_RANGE; private Range<Integer> years = Range.closed(1996,2014); private Range<Integer> distanceInKm = Range.closed(10,400); private Range<Integer> numberOfTripsByCar = Range.closed(1,5); public ExampleDataSpecification(){ } @Override public int getDefaultNumberOfItems() { return 5; } @Override public Range<Integer> getReds() { return reds; } @Override public Range<Integer> getGreens() { return greens; } @Override public Range<Integer> getBlues() { return blues; } public ExampleDataSpecification noReds() { this.reds = EMPTY; return this; } public ExampleDataSpecification noGreens() { this.greens = EMPTY; return this; } public ExampleDataSpecification noBlues() { this.blues = EMPTY; return this; } @Override public Range<Integer> getYearRange() { return this.years; } @Override public Range<Integer> getNumberOfTripsByCar() { return numberOfTripsByCar; } @Override public Range<Integer> getTripDistanceInKm() { return distanceInKm; } }