This is my graduate project written in java using nio