diff --git a/Sequence-Generator/src/main/java/org/training/sequence/generator/service/implementation/SequenceServiceImpl.java b/Sequence-Generator/src/main/java/org/training/sequence/generator/service/implementation/SequenceServiceImpl.java index abad2c5..be2e557 100644 --- a/Sequence-Generator/src/main/java/org/training/sequence/generator/service/implementation/SequenceServiceImpl.java +++ b/Sequence-Generator/src/main/java/org/training/sequence/generator/service/implementation/SequenceServiceImpl.java @@ -25,6 +25,17 @@ public Sequence create() { log.info("creating a account number"); return sequenceRepository.findById(1L) .map(sequence -> { + long currentValue = sequence.getAccountNumber(); + int totalSequences = sequenceRepository.countAll(); + + if (totalSequences > 0) { + try { + Thread.sleep(50); + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + } + } + sequence.setAccountNumber(sequence.getAccountNumber() + 1); return sequenceRepository.save(sequence); }).orElseGet(() -> sequenceRepository.save(Sequence.builder().accountNumber(1L).build()));