/**
*
*/
package de.urszeidler.shr5.ecp.binding;
import java.math.BigDecimal;
import org.eclipse.core.databinding.observable.list.IObservableList;
import org.eclipse.core.databinding.observable.value.ComputedValue;
import de.urszeidler.eclipse.shr5.GeldWert;
public final class ComputedListWertValue extends ComputedValue {
private final IObservableList observeValue;
public ComputedListWertValue(IObservableList observeValue) {
this.observeValue = observeValue;
}
@Override
protected Object calculate() {
return calcListenNormWert(observeValue);
}
private Object calcListenNormWert(IObservableList observeValue) {
BigDecimal summ = new BigDecimal(0);
for (int i = 0; i < observeValue.size(); i++) {
GeldWert abstaktGegenstand = (GeldWert)observeValue.get(i);
if (abstaktGegenstand.getWert() != null)
summ = summ.add(abstaktGegenstand.getWert());
}
return summ;
}
}