
org.opentripplanner.ext.emissions.DefaultEmissionsService Maven / Gradle / Ivy
The newest version!
package org.opentripplanner.ext.emissions;
import jakarta.inject.Inject;
import java.util.Optional;
import org.opentripplanner.framework.model.Grams;
import org.opentripplanner.model.plan.Emissions;
import org.opentripplanner.transit.model.framework.FeedScopedId;
import org.opentripplanner.utils.lang.Sandbox;
@Sandbox
public class DefaultEmissionsService implements EmissionsService {
private final EmissionsDataModel emissionsDataModel;
@Inject
public DefaultEmissionsService(EmissionsDataModel emissionsDataModel) {
this.emissionsDataModel = emissionsDataModel;
}
@Override
public Optional getEmissionsPerMeterForRoute(FeedScopedId feedScopedRouteId) {
Optional co2Emissions = this.emissionsDataModel.getCO2EmissionsById(feedScopedRouteId);
return co2Emissions.isPresent()
? Optional.of(new Emissions(new Grams(co2Emissions.get())))
: Optional.empty();
}
@Override
public Optional getEmissionsPerMeterForCar() {
Optional co2Emissions = this.emissionsDataModel.getCarAvgCo2PerMeter();
return co2Emissions.isPresent()
? Optional.of(new Emissions(new Grams(co2Emissions.get())))
: Optional.empty();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy