@Override
 public void removeItem(final IEquipmentItem item) {
   equipmentItems.remove(item);
   equipmentItemControl.forAllDo(
       new IClosure<ICollectionListener<IEquipmentItem>>() {
         @Override
         public void execute(final ICollectionListener<IEquipmentItem> input) {
           input.itemRemoved(item);
         }
       });
   item.removeChangeListener(itemChangePropagator);
   modelChangeControl.fireChangedEvent();
 }
 private IEquipmentItem addEquipmentObjectFor(
     IEquipmentTemplate template, MagicalMaterial material) {
   IEquipmentItem item = createItem(template, material);
   equipmentItems.add(item);
   return item;
 }
 @Override
 public IEquipmentItem[] getEquipmentItems() {
   return equipmentItems.asArray();
 }