----------[[ STAGE ]]----------
---------------------------------
sssssssssssssssssssssssssssssssss
sssssssssssssssssssssssssssssssss
sssssssssssssssssssssssssssssssss
sssssssssssssssssssssssssssssssss
sssssssssssssssssssssssssssssssss
sssssssssssssssssssssssssssssssss
sssssssssssssssssssssssssssssssss
sssssssssssssssssssssssssssssssss
sssssssssssssssssssssssssssssssss
Ticket Service that provides the following functions:
· Find the number of seats available within the venue
Note: available seats are seats that are neither held nor reserved.
· Find and hold the best available seats on behalf of a customer
Note: each ticket hold should expire within a set number of seconds.
· Reserve and commit a specific group of held seats for a customer
- Solution solves for exactly above auditorium structure (seating arrangement), which means 8 rows and 34 seats each
- Algorithm only solves for horizontal contiguous seats grouping for finding best available seats for customer
- No persistent seat state management implemented. It is all in-memory.
- No rest end point nor UI interface implemented
- Reservation is not modeled/managed in the solution. we can have it baked in easily if we have an interface to offer functions on it
- junit4 is used as external dependency to implement tests
- java8 is used to build/run the code
- To build the package and run tests
mvn package
- To run tests alone
mvn test