added refresh method to player as observer