Changed observer/subscriber methods to protected