Patterns: decorator and facade, java flavour