Example usage for org.hibernate.type CurrencyType INSTANCE

List of usage examples for org.hibernate.type CurrencyType INSTANCE

Introduction

In this page you can find the example usage for org.hibernate.type CurrencyType INSTANCE.

Prototype

CurrencyType INSTANCE

To view the source code for org.hibernate.type CurrencyType INSTANCE.

Click Source Link

Usage

From source file:de.bstreit.java.oscr.business.base.finance.money.MoneyType.java

License:Open Source License

@Override
public Object nullSafeGet(ResultSet rs, String[] names, SessionImplementor session, Object owner)
        throws SQLException {

    assert names.length == 2;

    // already handles null check:
    final BigDecimal amount = (BigDecimal) BigDecimalType.INSTANCE.get(rs, names[0], session);

    // already handles null check:
    final Currency currency = (Currency) CurrencyType.INSTANCE.get(rs, names[1], session);

    return amount == null || currency == null ? null : new Money(amount, currency);
}

From source file:de.bstreit.java.oscr.business.base.finance.money.MoneyType.java

License:Open Source License

@Override
public void nullSafeSet(PreparedStatement st, Object value, int index, SessionImplementor session)
        throws HibernateException, SQLException {

    if (value == null) {
        BigDecimalType.INSTANCE.set(st, null, index, session);
        CurrencyType.INSTANCE.set(st, null, index + 1, session);

    } else {//  w ww . j a va 2  s  .  c  o m
        final Money money = (Money) value;
        BigDecimalType.INSTANCE.set(st, money.getAmount(), index, session);
        CurrencyType.INSTANCE.set(st, money.getCurrency(), index + 1, session);
    }

}

From source file:de.rs.hibernate.MoneyType.java

License:Open Source License

@Override
public Type[] getPropertyTypes() {
    return new Type[] { BigDecimalType.INSTANCE, CurrencyType.INSTANCE };
}

From source file:de.rs.hibernate.MoneyType.java

License:Open Source License

@Override
public Object nullSafeGet(ResultSet rs, String[] names, SessionImplementor session, Object owner)
        throws HibernateException, SQLException {
    assert names.length == 2;
    BigDecimal amount = BigDecimalType.INSTANCE.fromString(names[0]); // already handles null check
    Currency currency = CurrencyType.INSTANCE.fromString(names[1]); // already handles null check
    return amount == null && currency == null ? null : new Money(amount, currency);
}

From source file:de.rs.hibernate.MoneyType.java

License:Open Source License

@Override
public void nullSafeSet(PreparedStatement st, Object value, int index, SessionImplementor session)
        throws HibernateException, SQLException {
    if (value == null) {
        BigDecimalType.INSTANCE.set(st, null, index, session);
        CurrencyType.INSTANCE.set(st, null, index + 1, session);
    } else {/*  w  ww  .  ja v  a2 s  . c  o m*/
        final Money money = (Money) value;
        BigDecimalType.INSTANCE.set(st, money.getAmount(), index, session);
        CurrencyType.INSTANCE.set(st, money.getCurrency(), index + 1, session);
    }
}