if (id.getDataField() != null) {
final ComputedValue value = inputs.getComputedValue(new ValueRequirement(id.getDataField(), ComputationTargetType.PRIMITIVE, id.getIdentifier()));
if (value != null) {
final ExternalIdBundle identifiers = value.getSpecification().getTargetSpecification().accept(resolver);
if (id instanceof PointsCurveNodeWithIdentifier) {
final PointsCurveNodeWithIdentifier pointsId = (PointsCurveNodeWithIdentifier) id;
final ComputedValue base = inputs.getComputedValue(new ValueRequirement(pointsId.getUnderlyingDataField(), ComputationTargetType.PRIMITIVE, pointsId.getUnderlyingIdentifier()));
if (base != null) {
final ExternalIdBundle spreadIdentifiers = value.getSpecification().getTargetSpecification().accept(resolver);
if (value.getValue() == null || base.getValue() == null) {
marketData.setDataPoint(spreadIdentifiers, null);
} else {
marketData.setDataPoint(spreadIdentifiers, (Double) value.getValue() + (Double) base.getValue());
}
} else {
s_logger.info("Could not get market data for {}", pointsId.getUnderlyingIdentifier());
}
} else {
marketData.setDataPoint(identifiers, (Double) value.getValue());
}
} else {