/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package project.latex.balloon;
import java.io.IOException;
/**
* Each time we request an ID, the generator increments a count and returns the
* next value.
*/
public class IncrementalSentenceIdGenerator implements SentenceIdGenerator {
private int count = 0;
private final FlightInfo flightInfo;
public IncrementalSentenceIdGenerator(FlightInfoManager flightInfoManager) {
this.flightInfo = flightInfoManager.getFlightInfo();
// Increment the flight number
int lastFlightNumber = flightInfo.getFlightNumber();
flightInfo.setFlightNumber(++lastFlightNumber);
flightInfoManager.updateFlightInfo(flightInfo);
}
@Override
public String generateId() {
StringBuilder idBuilder = new StringBuilder();
idBuilder.append(flightInfo.getFlightNumber()).append("_").append(count);
++count;
return idBuilder.toString();
}
}