Design Pattern In Java Medium Chain