public void incrementBonus(final AptitudeBonusView bonus) {
   if (!bonus.canBeIncreased()) {
     return;
   }
   this.m_inventory.addLevel(bonus.getId(), (short) 1);
   this.m_inventory.removePointsFor(bonus.getId(), (short) 1);
   this.m_modifications.adjustOrPutValue(bonus.getId(), (short) 1, (short) 1);
   bonus.fireLevelChanged();
   final AptitudeBonusCategoryView category =
       this.m_categoriesById.get(
           AptitudeCategoryModelManager.INSTANCE.getBonusCategoryId(bonus.getId()));
   category.fireAvailablePointsChanged();
 }
 public void decrementBonus(final AptitudeBonusView bonus) {
   if (!bonus.canBeDecreased()) {
     return;
   }
   final int categoryId = AptitudeCategoryModelManager.INSTANCE.getBonusCategoryId(bonus.getId());
   this.m_inventory.addLevel(bonus.getId(), (short) (-1));
   this.m_inventory.incPointFor(categoryId);
   final short previousValue = this.m_modifications.get(bonus.getId());
   if (previousValue == 1) {
     this.m_modifications.remove(bonus.getId());
   } else {
     this.m_modifications.put(bonus.getId(), (short) (previousValue - 1));
   }
   bonus.fireLevelChanged();
   final AptitudeBonusCategoryView category = this.m_categoriesById.get(categoryId);
   category.fireAvailablePointsChanged();
 }