public Decimal add(Decimal decimal){
  assertDefined();
  if (null == m_value) {
    if (null == decimal.getBigDecimalValue()) {
      return new Decimal(SCALE);
    }
 else {
      return new Decimal(decimal.getBigDecimalValue(),SCALE);
    }
  }
  BigDecimal value=m_value.add(decimal.getBigDecimalValue());
  return new Decimal(value,SCALE);
}

public Decimal add ( Decimal decimal ) { assertDefined ( ) ; if ( null == m_value ) { if ( null == decimal . getBigDecimalValue ( ) ) { return new Decimal ( SCALE ) ; } else { return new Decimal ( decimal . getBigDecimalValue ( ) , SCALE ) ; } } BigDecimal value = m_value . add ( decimal . getBigDecimalValue ( ) ) ; return new Decimal ( value , SCALE ) ; }
adds two money objects
