Example usage for org.hibernate.type DateType INSTANCE

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

Introduction

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

Prototype

DateType INSTANCE

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

Click Source Link

Usage

From source file:com.manydesigns.portofino.persistence.hibernate.HibernateConfig.java

License:Open Source License

public boolean setHibernateType(@Nullable SimpleValue value,
        com.manydesigns.portofino.model.database.Column column, Class javaType, final int jdbcType) {
    String typeName;/*www. j a v a 2 s .co  m*/
    Properties typeParams = null;
    if (javaType == null) {
        return false;
    }
    if (javaType == Long.class) {
        typeName = LongType.INSTANCE.getName();
    } else if (javaType == Short.class) {
        typeName = ShortType.INSTANCE.getName();
    } else if (javaType == Integer.class) {
        typeName = IntegerType.INSTANCE.getName();
    } else if (javaType == Byte.class) {
        typeName = ByteType.INSTANCE.getName();
    } else if (javaType == Float.class) {
        typeName = FloatType.INSTANCE.getName();
    } else if (javaType == Double.class) {
        typeName = DoubleType.INSTANCE.getName();
    } else if (javaType == Character.class) {
        typeName = CharacterType.INSTANCE.getName();
    } else if (javaType == String.class) {
        typeName = StringType.INSTANCE.getName();
    } else if (java.util.Date.class.isAssignableFrom(javaType)) {
        switch (jdbcType) {
        case Types.DATE:
            typeName = DateType.INSTANCE.getName();
            break;
        case Types.TIME:
            typeName = TimeType.INSTANCE.getName();
            break;
        case Types.TIMESTAMP:
            typeName = TimestampType.INSTANCE.getName();
            break;
        default:
            typeName = null;
        }
    } else if (javaType == Boolean.class) {
        if (jdbcType == Types.BIT || jdbcType == Types.BOOLEAN) {
            typeName = BooleanType.INSTANCE.getName();
        } else if (jdbcType == Types.NUMERIC || jdbcType == Types.DECIMAL || jdbcType == Types.INTEGER
                || jdbcType == Types.SMALLINT || jdbcType == Types.TINYINT || jdbcType == Types.BIGINT) {
            typeName = NumericBooleanType.INSTANCE.getName();
        } else if (jdbcType == Types.CHAR || jdbcType == Types.VARCHAR) {
            typeName = StringBooleanType.class.getName();
            typeParams = new Properties();
            typeParams.setProperty("true", trueString != null ? trueString : StringBooleanType.NULL);
            typeParams.setProperty("false", falseString != null ? falseString : StringBooleanType.NULL);
            typeParams.setProperty("sqlType", String.valueOf(jdbcType));
        } else {
            typeName = null;
        }
    } else if (javaType == BigDecimal.class) {
        typeName = BigDecimalType.INSTANCE.getName();
    } else if (javaType == BigInteger.class) {
        typeName = BigIntegerType.INSTANCE.getName();
    } else if (javaType == byte[].class) {
        typeName = BlobType.INSTANCE.getName();
    } else {
        typeName = null;
    }

    if (typeName == null) {
        logger.error("Unsupported type (java type: {}, jdbc type: {}) " + "for column '{}'.",
                new Object[] { javaType, jdbcType, column.getColumnName() });
        return false;
    }

    if (value != null) {
        value.setTypeName(typeName);
        if (typeParams != null) {
            value.setTypeParameters(typeParams);
        }
    }
    return true;
}

From source file:com.mercatis.lighthouse3.persistence.events.hibernate.EventRegistryImplementation.java

License:Apache License

/**
 * This method generates criteria for a given event template that also
 * contain an ordering clause on the date of occurrence.
 * // ww w . j  a va2 s .c o  m
 * @param session
 *            the Hibernate session to use for criteria generation
 * @param entityTemplate
 *            the template for which to generate the criteria
 * @param descending
 *            <code>true</code> if descending order is wanted (the default)
 *            or <code>false</code> for ascending order.
 * @return
 */
public Criteria generateOrderingCriteria(Session session, Event entityTemplate, boolean descending) {
    Criteria criteria = super.entityToCriteria(session, entityTemplate);

    if (entityTemplate.getContext() != null) {
        if (!Ranger.isEnumerationRange(entityTemplate.getContext()))
            criteria.add(Restrictions.eq("context", entityTemplate.getContext()));
        else
            criteria.add(Restrictions.in("context",
                    Ranger.castToEnumerationRange(entityTemplate.getContext()).getEnumeration()));

    }

    if (entityTemplate.getCode() != null) {
        if (!Ranger.isEnumerationRange(entityTemplate.getCode()))
            criteria.add(Restrictions.eq("code", entityTemplate.getCode()));
        else
            criteria.add(Restrictions.in("code",
                    Ranger.castToEnumerationRange(entityTemplate.getCode()).getEnumeration()));

    }

    if (entityTemplate.getLevel() != null) {
        if (!Ranger.isEnumerationRange(entityTemplate.getLevel()))
            criteria.add(Restrictions.eq("level", entityTemplate.getLevel()));
        else
            criteria.add(Restrictions.in("level",
                    Ranger.castToEnumerationRange(entityTemplate.getLevel()).getEnumeration()));
    }

    if (entityTemplate.getMachineOfOrigin() != null)
        criteria.add(Restrictions.eq("machineOfOrigin", entityTemplate.getMachineOfOrigin()));

    if (entityTemplate.getMessage() != null) {
        criteria.add(Restrictions.ilike("message", "%" + entityTemplate.getMessage() + "%"));
    }

    if (entityTemplate.getStackTrace() != null) {
        if (this.unitOfWork.getSqlDialect() instanceof org.hibernate.dialect.MySQL5InnoDBDialect)
            criteria.add(Restrictions.sqlRestriction("match ({alias}.STACK_TRACE) against (?)",
                    entityTemplate.getStackTrace(), StringType.INSTANCE));
        else
            criteria.add(Restrictions.ilike("stackTrace", "%" + entityTemplate.getStackTrace() + "%"));
    }

    if (entityTemplate.getDateOfOccurrence() != null) {
        if (!Ranger.isIntervalRange(entityTemplate.getDateOfOccurrence())) {
            criteria.add(Restrictions.eq("dateOfOccurrence", entityTemplate.getDateOfOccurrence()));
        } else {
            Date lowerBound = Ranger.castToIntervalRange(entityTemplate.getDateOfOccurrence()).getLowerBound();
            Date upperBound = Ranger.castToIntervalRange(entityTemplate.getDateOfOccurrence()).getUpperBound();

            if ((lowerBound == null) && (upperBound != null))
                criteria.add(Restrictions.le("dateOfOccurrence", upperBound));
            else if ((lowerBound != null) && (upperBound == null))
                criteria.add(Restrictions.ge("dateOfOccurrence", lowerBound));
            else if ((lowerBound != null) && (upperBound != null)) {
                criteria.add(Restrictions.le("dateOfOccurrence", upperBound));
                criteria.add(Restrictions.ge("dateOfOccurrence", lowerBound));
            }
        }
    }

    if (!entityTemplate.getTransactionIds().isEmpty()) {
        Set<Criterion> transactionRestrictions = new HashSet<Criterion>();
        for (String transactionId : entityTemplate.getTransactionIds())
            transactionRestrictions.add(Restrictions.sqlRestriction(
                    "exists (select lti.* from EVENT_TRANSACTION_IDS lti where {alias}.EVT_ID = lti.EVT_ID and lti.TRANSACTION_ID = ?)",
                    transactionId, StringType.INSTANCE));

        if (transactionRestrictions.size() == 1) {
            criteria.add(transactionRestrictions.iterator().next());
        } else {
            Iterator<Criterion> restrictions = transactionRestrictions.iterator();
            Criterion orCriterion = restrictions.next();

            while (restrictions.hasNext()) {
                orCriterion = Restrictions.or(orCriterion, restrictions.next());
            }

            criteria.add(orCriterion);
        }
    }

    for (String tag : entityTemplate.getTags())
        criteria.add(Restrictions.sqlRestriction(
                "exists (select lt.* from EVENT_TAGS lt where {alias}.EVT_ID = lt.EVT_ID and lt.TAG = ?)", tag,
                StringType.INSTANCE));

    for (String udf : entityTemplate.getUdfs().keySet()) {
        Object value = entityTemplate.getUdf(udf);

        if (udf.equals("eventRESTResourceLimitRestriction")) {
            criteria.setMaxResults((Integer) value);
            break;
        }

        String columnName = "";
        Type valueType = StringType.INSTANCE;

        if (value instanceof Boolean) {
            columnName = "BOOLEAN_VAL";
            valueType = BooleanType.INSTANCE;
        }

        if (value instanceof Integer) {
            columnName = "INTEGER_VAL";
            valueType = IntegerType.INSTANCE;
        }

        if (value instanceof Long) {
            columnName = "LONG_VAL";
            valueType = LongType.INSTANCE;
        }

        if (value instanceof Float) {
            columnName = "FLOAT_VAL";
            valueType = FloatType.INSTANCE;
        }

        if (value instanceof Double) {
            columnName = "DOUBLE_VAL";
            valueType = DoubleType.INSTANCE;
        }

        if (value instanceof Date) {
            columnName = "DATE_VAL";
            valueType = DateType.INSTANCE;
        }

        if (value instanceof byte[]) {
            columnName = "BINARY_VAL";
            valueType = BlobType.INSTANCE;
        }

        if (value instanceof String) {
            columnName = "STRING_VAL";
            valueType = StringType.INSTANCE;
        }

        criteria.add(Restrictions.sqlRestriction(
                "exists (select lu.* from EVENT_UDFS lu where {alias}.EVT_ID = lu.EVT_ID and lu.UDF = ? and lu."
                        + columnName + " = ?)",
                new Object[] { udf, value }, new Type[] { StringType.INSTANCE, valueType }));

    }

    if (descending)
        criteria.addOrder(Order.desc("dateOfOccurrence"));
    else
        criteria.addOrder(Order.asc("dateOfOccurrence"));

    return criteria;
}

From source file:com.timesoft.kaitoo.ws.common.CoreContent.java

public static void fildHibernateParameter(final SQLQuery sqlQuery, final Map<String, Object> paramMap)
        throws HibernateException {

    Set<String> set = paramMap.keySet();
    for (Iterator<String> iter = set.iterator(); iter.hasNext();) {
        String paramName = iter.next();
        Object paramValue = paramMap.get(paramName);
        if (paramValue != null) {
            if (paramValue instanceof java.lang.String) {
                sqlQuery.setParameter(paramName, paramValue.toString().trim(), StringType.INSTANCE);
            } else if (paramValue instanceof java.lang.Character) {
                sqlQuery.setParameter(paramName, paramValue, CharacterType.INSTANCE);
            } else if (paramValue instanceof java.lang.Integer) {
                sqlQuery.setParameter(paramName, paramValue, IntegerType.INSTANCE);
            } else if (paramValue instanceof java.util.Date) {
                sqlQuery.setParameter(paramName, paramValue, DateType.INSTANCE);
            } else if (paramValue instanceof java.lang.Long) {
                sqlQuery.setParameter(paramName, paramValue, LongType.INSTANCE);
            } else if (paramValue instanceof java.sql.Timestamp) {
                sqlQuery.setParameter(paramName, paramValue, TimestampType.INSTANCE);
            } else if (paramValue instanceof java.lang.Boolean) {
                sqlQuery.setParameter(paramName, paramValue, BooleanType.INSTANCE);
            } else if (paramValue instanceof java.lang.Float) {
                sqlQuery.setParameter(paramName, paramValue, FloatType.INSTANCE);
            } else if (paramValue instanceof java.lang.Double) {
                sqlQuery.setParameter(paramName, paramValue, DoubleType.INSTANCE);
            } else if (paramValue instanceof java.lang.Byte) {
                sqlQuery.setParameter(paramName, paramValue, ByteType.INSTANCE);
            } else if (paramValue instanceof java.util.Calendar) {
                sqlQuery.setParameter(paramName, paramValue, CalendarType.INSTANCE);
            }/*from w  w  w. ja  v a2  s.c  o m*/
        }
    }
}

From source file:kr.debop4j.data.hibernate.usertype.TimeRangeUserType.java

License:Apache License

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

From source file:org.egov.egf.web.actions.payment.BankEntriesNotInBankBookAction.java

License:Open Source License

@SkipValidation
@Action(value = "/payment/bankEntriesNotInBankBook-search")
public String search() {
    Query query = null;/*from ww w  .  java  2s .com*/
    query = persistenceService.getSession().createSQLQuery(getQuery()).addScalar("refNum", StringType.INSTANCE)
            .addScalar("type", StringType.INSTANCE).addScalar("date", DateType.INSTANCE)
            .addScalar("amount", BigDecimalType.INSTANCE).addScalar("remarks", StringType.INSTANCE)
            .addScalar("glcodeDetail", StringType.INSTANCE).addScalar("beId", LongType.INSTANCE)
            .setResultTransformer(Transformers.aliasToBean(BankEntriesNotInBankBook.class));
    bankEntriesNotInBankBookList = query.list();
    List<BankEntriesNotInBankBook> tempList = new ArrayList<BankEntriesNotInBankBook>();
    for (BankEntriesNotInBankBook bean : bankEntriesNotInBankBookList) {
        bean.setDateId(FORMATDDMMYYYY.format(bean.getDate()));
        tempList.add(bean);
    }
    bankEntriesNotInBankBookList = tempList;
    if (bankEntriesNotInBankBookList.size() == 0)
        bankEntriesNotInBankBookList.add(new BankEntriesNotInBankBook());
    prepareNewform();
    addDropdownData("bankList", bankHibernateDAO.getAllBanksByFund(voucherHeader.getFundId().getId()));
    addDropdownData("bankBranchList", bankBranchHibernateDAO.getAllBankBranchsByBank(bank));
    addDropdownData("bankAccountList", bankaccountHibernateDAO.getBankAccountByBankBranch(bank_branch));
    mode = "save";
    return NEW;
}

From source file:org.jasig.ssp.util.hibernate.ConfigurableDateType.java

License:Apache License

public String getName() {
    return DateType.INSTANCE.getName();
}

From source file:org.jasig.ssp.util.hibernate.ConfigurableDateType.java

License:Apache License

@Override
public String[] getRegistrationKeys() {
    return DateType.INSTANCE.getRegistrationKeys();
}

From source file:org.jasig.ssp.util.hibernate.ConfigurableDateType.java

License:Apache License

public String objectToSQLString(Date value, Dialect dialect) throws Exception {
    return DateType.INSTANCE.objectToSQLString(value, dialect);
}

From source file:org.jasig.ssp.util.hibernate.ConfigurableDateType.java

License:Apache License

public Date stringToObject(String xml) {
    return DateType.INSTANCE.stringToObject(xml);
}

From source file:org.openbravo.costing.CostingMigrationProcess.java

License:Open Source License

private void doChecks() {
    // Check all transactions have a legacy cost available.
    AlertRule legacyCostAvailableAlert = getLegacyCostAvailableAlert();
    if (legacyCostAvailableAlert == null) {
        Organization org0 = OBDal.getInstance().get(Organization.class, "0");
        Client client0 = OBDal.getInstance().get(Client.class, "0");

        legacyCostAvailableAlert = OBProvider.getInstance().get(AlertRule.class);
        legacyCostAvailableAlert.setClient(client0);
        legacyCostAvailableAlert.setOrganization(org0);
        legacyCostAvailableAlert.setName(alertRuleName);
        // Header tab of Product window
        legacyCostAvailableAlert.setTab(OBDal.getInstance().get(org.openbravo.model.ad.ui.Tab.class, "180"));
        StringBuffer sql = new StringBuffer();
        sql.append("select t.m_product_id as referencekey_id, '0' as ad_role_id, null as ad_user_id,");
        sql.append("\n    'Product ' || p.name || ' has transactions on dates without available");
        sql.append(" costs. Min date ' || min(t.movementdate) || '. Max date ' || max(t.movementdate)");
        sql.append(" as description,");
        sql.append("\n    'Y' as isactive, p.ad_org_id, p.ad_client_id,");
        sql.append("\n    now() as created, '0' as createdby, now() as updated, '0' as updatedby,");
        sql.append("\n    p.name as record_id");
        sql.append("\nfrom m_transaction t join m_product p on t.m_product_id = p.m_product_id");
        sql.append("\nwhere not exists (select 1 from m_costing c ");
        sql.append("\n                  where t.isactive = 'Y'");
        sql.append("\n                    and t.m_product_id = c.m_product_id");
        sql.append("\n                    and t.movementdate >= c.datefrom");
        sql.append("\n                    and t.movementdate < c.dateto");
        sql.append("\n                    and c.cost is not null)");
        sql.append("\ngroup by t.m_product_id, p.ad_org_id, p.ad_client_id, p.name");
        legacyCostAvailableAlert.setSql(sql.toString());

        OBDal.getInstance().save(legacyCostAvailableAlert);
        OBDal.getInstance().flush();/* w w w.java 2s  .  c  o m*/

        insertAlertRecipients(legacyCostAvailableAlert);
    }

    // Delete previous alerts
    StringBuffer delete = new StringBuffer();
    delete.append("delete from " + Alert.ENTITY_NAME);
    delete.append(" where " + Alert.PROPERTY_ALERTRULE + " = :alertRule ");
    Query queryDelete = OBDal.getInstance().getSession().createQuery(delete.toString());
    queryDelete.setEntity("alertRule", legacyCostAvailableAlert);
    queryDelete.executeUpdate();

    if (legacyCostAvailableAlert.isActive()) {

        SQLQuery alertQry = OBDal.getInstance().getSession().createSQLQuery(legacyCostAvailableAlert.getSql());
        alertQry.addScalar("REFERENCEKEY_ID", StringType.INSTANCE);
        alertQry.addScalar("AD_ROLE_ID", StringType.INSTANCE);
        alertQry.addScalar("AD_USER_ID", StringType.INSTANCE);
        alertQry.addScalar("DESCRIPTION", StringType.INSTANCE);
        alertQry.addScalar("ISACTIVE", StringType.INSTANCE);
        alertQry.addScalar("AD_ORG_ID", StringType.INSTANCE);
        alertQry.addScalar("AD_CLIENT_ID", StringType.INSTANCE);
        alertQry.addScalar("CREATED", DateType.INSTANCE);
        alertQry.addScalar("CREATEDBY", StringType.INSTANCE);
        alertQry.addScalar("UPDATED", DateType.INSTANCE);
        alertQry.addScalar("UPDATEDBY", StringType.INSTANCE);
        alertQry.addScalar("RECORD_ID", StringType.INSTANCE);
        List<?> rows = alertQry.list();
        for (final Object row : rows) {
            final Object[] values = (Object[]) row;
            Alert alert = OBProvider.getInstance().get(Alert.class);
            alert.setCreatedBy(OBDal.getInstance().get(User.class, "0"));
            alert.setUpdatedBy(OBDal.getInstance().get(User.class, "0"));
            alert.setClient(OBDal.getInstance().get(Client.class, values[6]));
            alert.setOrganization(OBDal.getInstance().get(Organization.class, values[5]));
            alert.setAlertRule(legacyCostAvailableAlert);
            alert.setRecordID((String) values[11]);
            alert.setReferenceSearchKey((String) values[0]);
            alert.setDescription((String) values[3]);
            alert.setUserContact(null);
            alert.setRole(OBDal.getInstance().get(org.openbravo.model.ad.access.Role.class, "0"));
            OBDal.getInstance().save(alert);
        }
        if (SessionHandler.isSessionHandlerPresent()) {
            SessionHandler.getInstance().commitAndStart();
        }
        if (rows.size() > 0) {
            throw new OBException("@TrxWithNoCost@");
        }
    }
}