public void moveOff(String group, int num) { checkArgument(num > 0); checkState(finishedAdding); Integer extraCount = extraCounts.get(group); // don't wrap precondition check due to https://github.com/spotbugs/spotbugs/issues/462 String formatString = "group=%s num=%s extraCount=%s"; checkArgument(extraCount != null && extraCount >= num, formatString, group, num, extraCount); MutableInt initialCount = initialCounts.get(group); checkArgument(initialCount.intValue() >= num); initialCount.subtract(num); if (extraCount - num == 0) { extraCounts.remove(group); } else { extraCounts.put(group, extraCount - num); } }
public void moveOff(String group, int num) { checkArgument(num > 0); checkState(finishedAdding); Integer extraCount = extraCounts.get(group); // don't wrap precondition check due to https://github.com/spotbugs/spotbugs/issues/462 String formatString = "group=%s num=%s extraCount=%s"; checkArgument(extraCount != null && extraCount >= num, formatString, group, num, extraCount); MutableInt initialCount = initialCounts.get(group); checkArgument(initialCount.intValue() >= num); initialCount.subtract(num); if (extraCount - num == 0) { extraCounts.remove(group); } else { extraCounts.put(group, extraCount - num); } }