- Design a Juke Box that allows customers to select songs they want played or to submit a play list that they have already created previously. If a request is made for song that is not contained by a local Juke Box, it will query for that song from other Jukeboxes elsewhere in the country - thus they are networked. Although reminiscent of Napster, like the original jukebox, we want to provide a mechanism for owners, record companies and artists to earn a profit. Therefore, for this Juke Box we want to provide not only a coin drop and cash feed mechanism, but also a card swipe mechanism and a cell dial payment capability.
Allow customers to
- select songs they want to play.
- submit a play list that they have already created previously.
The Juke Box can search other Juke Boxes from Internet for songs that are not contained by a local Juke Box. To provide a mechanism for owners, record companies and artists to earn a profit. The Juke Box contains
- A coin drop
- Cash feed mechanism
- A card swipe mechanism
- A cell dial payment capability.
- The unit tests are designed as the following simple diagram
+-----------------------+ +-----------------------+ +---------------------+
| Database Module | | Song Module | | Jukebox Module |
+-----------------------+ +-----------------------+ +---------------------+
+-----------------------+ +-----------------------+ +---------------------+
| Test Database Moduel | | Test Song Module | | Test Jukebox Module |
+-----------------------+ +-----------------------+ +---------------------+
+----------------------+
| Test Suite |
+----------------------+
+----------------------+
| Test Suite Runner |
+----------------------+
- All the tests file can be found under Tests folder
- Add javazoom package the classpath
export CLASSPATH=$CLASSPATH:path/to/Jukebox/JLayer1.0.1/jl1.0.1.jar
- Run
javac *.java
on your root directory - Add the project to java CLASSPATH
export CLASSPATH=$CLASSPATH:path/to/Jukebox/
- Run
java Jukebox
to see the output
- cd to Tests folder
cd Tests
- Run
javac *.java
to compile the tests - Run
java JBTestSuiteRunner
to see the output