add a new pattern about the java observer pattern