Java Structure Chart - Composite Pattern Wikipedia