Decorator OO Design Pattern implemented in Java