Pattern: Chain of Responsibility, java flavour