Я использую joda-time для такого рода вещей:
Maven:
<!-- Joda Time -->
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>1.6.2</version>
</dependency>
При запросе на ввод установите переменную LocalDateTime:
LocalDateTime timeOut = new LocalDateTime().plusSeconds(15);
И цикл до тех пор, пока пользователь не введет или не достигнет тайм-аута:
if (timeOut.isBefore(new LocalDateTime())) {
//throw your exception if this case happens
}
Перед тем, как получить отрицательное голосование: это просто быстрое занятие: p
ура