Example usage for org.hibernate.type LongType INSTANCE

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

Introduction

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

Prototype

LongType INSTANCE

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

Click Source Link

Usage

From source file:com.exilant.GLEngine.CoaCache.java

License:Open Source License

@Transactional(propagation = Propagation.REQUIRES_NEW)
public void loadAccountData() {

    /*//from   ww  w.ja  va 2 s  . co m
     * 1.Loads all the account codes and details of that as GLAccount objects in theGLAccountCode,theGLAccountId HashMap's
     */

    // Temporary place holders
    final HashMap glAccountCodes = new HashMap();
    final HashMap glAccountIds = new HashMap();
    final HashMap accountDetailType = new HashMap();

    String sql = "select id as \"id\",name as \"name\",tableName as \"tableName\","
            + "description as \"description\",columnName as \"columnName\",attributeName as \"attributeName\""
            + ",nbrOfLevels as  \"nbrOfLevels\" from AccountDetailType";

    final Session currentSession = persistenceService.getSession();
    SQLQuery createSQLQuery = currentSession.createSQLQuery(sql);
    createSQLQuery.addScalar("id", IntegerType.INSTANCE).addScalar("name").addScalar("tableName")
            .addScalar("description").addScalar("columnName").addScalar("attributeName")
            .setResultTransformer(Transformers.aliasToBean(AccountDetailType.class));
    List<AccountDetailType> accountDetailTypeList = new ArrayList<AccountDetailType>();
    List<GLAccount> glAccountCodesList = new ArrayList<GLAccount>();
    new ArrayList<GLAccount>();

    accountDetailTypeList = createSQLQuery.list();
    for (final AccountDetailType type : accountDetailTypeList)
        accountDetailType.put(type.getAttributeName(), type);
    sql = "select ID as \"ID\", glCode as \"glCode\" ,name as \"name\" ,"
            + "isActiveForPosting as \"isActiveForPosting\" ,classification as \"classification\", functionReqd as \"functionRequired\" from chartofaccounts ";
    createSQLQuery = currentSession.createSQLQuery(sql);
    createSQLQuery.addScalar("ID", IntegerType.INSTANCE).addScalar("glCode").addScalar("name")
            .addScalar("isActiveForPosting", BooleanType.INSTANCE)
            .addScalar("classification", LongType.INSTANCE).addScalar("functionRequired", BooleanType.INSTANCE)
            .setResultTransformer(Transformers.aliasToBean(GLAccount.class));

    glAccountCodesList = createSQLQuery.list();
    for (final GLAccount type : glAccountCodesList)
        glAccountCodes.put(type.getCode(), type);
    for (final GLAccount type : glAccountCodesList)
        glAccountIds.put(type.getId(), type);
    loadParameters(glAccountCodes, glAccountIds);
    try {
        final HashMap<String, HashMap> hm = new HashMap<String, HashMap>();
        hm.put(ACCOUNTDETAILTYPENODE, accountDetailType);
        hm.put(GLACCCODENODE, glAccountCodes);
        if (LOGGER.isDebugEnabled())
            LOGGER.debug("Loading size:" + glAccountCodes.size());
        hm.put(GLACCIDNODE, glAccountIds);
        applicationCacheManager.put(ROOTNODE, hm);
    } catch (final Exception e) {
        throw e;
    }

}

From source file:com.gp.cong.lcl.common.constant.ExportUnitQueryUtils.java

public List<ManifestBean> getUnitViewDrList(Long unitSSId, HttpServletRequest request) throws Exception { // to show DR or Bl list in View Dr page
    User user = (User) request.getSession().getAttribute("loginuser");
    StringBuilder queryBuilder = new StringBuilder();
    queryBuilder//  w  ww  . j  ava 2 s.  co  m
            .append(" SELECT fn.fileId AS fileId, fn.fileNo AS fileNo, fn.STATUS AS STATUS,fn.state as state,");
    queryBuilder.append(
            "(SELECT CONCAT_WS('~~~',ar.invoice_number,ar.status) FROM ar_red_invoice ar WHERE ar.bl_number = fn.fileNo ORDER BY ar.id DESC LIMIT 1) AS arInvoiceNumber,");
    queryBuilder.append(
            " getDisposion_UnLoc(fn.fileId) AS disposition, IF(fn.state ='BL' , BlNumberSystemForLclExports(bl.file_number_id),'') AS blNo,");
    queryBuilder.append(
            " piece.total_piece as totalPieceCount, piece.total_weight_imperial as totalWeightImperial ,piece.total_volume_imperial as totalVolumeImperial, ");
    queryBuilder.append(
            " blPiece.blCft as blCft ,blPiece.blCbm as blCbm,blPiece.blLbs as blLbs ,blPiece.blKgs as blKgs, ");
    queryBuilder.append(" IF(fn.state = 'BL',bl.rate_type,'') AS rateType,  ");
    queryBuilder.append(
            " (SELECT SUM(chg.ap_amount) FROM lcl_booking_ac chg WHERE chg.file_number_id = fn.fileId AND deleted = '0' AND chg.ap_gl_mapping_id IN (SELECT id FROM gl_mapping WHERE charge_code = 'FFCOMM' AND shipment_type='LCLE')) AS ffComm,  ");
    queryBuilder.append(
            " IF(fn.state = 'BL',TradingPartnerAcctName(bl.ship_acct_no),TradingPartnerAcctName(b.ship_acct_no)) AS shipperName,  ");
    queryBuilder.append(
            " IF(fn.state = 'BL',TradingPartnerAcctName(bl.cons_acct_no),TradingPartnerAcctName(b.cons_acct_no)) AS consigneeName,  ");
    queryBuilder.append(
            " IF(fn.state = 'BL',TradingPartnerAcctName(bl.fwd_acct_no),TradingPartnerAcctName(b.fwd_acct_no)) AS forwarderName,  ");
    queryBuilder.append(" UnLocationGetCodeByID(b.poo_id) AS origin,");
    queryBuilder.append(" UnLocationGetCodeByID (b.fd_id) AS destination,");
    queryBuilder.append(" UnLocationGetCodeByID (b.pol_id) AS pol,");
    queryBuilder.append(" UnLocationGetCodeByID (b.pod_id) AS pod,");
    queryBuilder.append(
            " IF(fn.state = 'BL',TerminalGetLocationByNo(bl.billing_terminal),TerminalGetLocationByNo(b.billing_terminal))AS terminalLocation,");
    queryBuilder.append(
            " IF(b.poo_pickup,(SELECT pickup_city FROM lcl_booking_pad WHERE file_number_id =fn.fileId),'')  AS pickupCity, ");
    queryBuilder
            .append(" UnLocationGetNameByID(b.poo_id) AS originName,getStateCode(b.poo_id) AS originState,");
    queryBuilder.append(
            " UnLocationGetNameByID(b.pol_id) AS polName,getStateCode(b.pol_id) AS polState,UnLocationGetNameByID(b.pod_id) AS podName,");
    queryBuilder.append(
            " getStateCode(b.pod_id) AS podCountry,UnLocationGetNameByID(b.fd_id) AS destinationName,getStateCode(b.fd_id) AS destinationCountry,");
    queryBuilder.append(
            " bl.billing_type AS billingType,IF(b.client_pwk_recvd = 1, 'Y', '') AS doc,(SELECT invoice_number FROM TRANSACTION WHERE drcpt = fn.fileNo LIMIT 1) AS blInvoiceNo,");
    queryBuilder.append(
            "(SELECT schedule_no FROM lcl_ss_header WHERE id = b.booked_ss_header_id) AS bookedVoyageNo,bl.posted_by_user_id AS postedByUserId,fn.haz AS hazmat,");
    queryBuilder.append(
            "(SELECT CONCAT_WS('~~~',GROUP_CONCAT(htc.code SEPARATOR '<br>'),COUNT(htc.code),GROUP_CONCAT(LEFT(htc.code, INSTR(htc.code, '/') - 1)))");
    queryBuilder.append(" FROM lcl_booking_hot_code htc WHERE htc.file_number_id = fn.fileId) AS hotCodes, ");
    queryBuilder.append(
            " IF(bl.file_number_id != fn.fileId , null ,IF(fn.state = 'BL',(SELECT SUM(chg.ar_amount)+ SUM(chg.adjustment_amount) FROM lcl_bl_ac chg WHERE chg.file_number_id = bl.file_number_id AND chg.ar_bill_to_party = 'A'),(SELECT SUM(chg.ar_amount)+ SUM(chg.adjustment_amount) FROM lcl_booking_ac chg WHERE chg.file_number_id = fn.fileId AND chg.ar_bill_to_party = 'A'))) AS colCharge, ");
    queryBuilder.append(
            " IF(bl.file_number_id != fn.fileId , null ,IF(fn.state = 'BL',(SELECT SUM(chg.ar_amount)+ SUM(chg.adjustment_amount) FROM lcl_bl_ac chg WHERE chg.file_number_id = bl.file_number_id AND chg.ar_bill_to_party != 'A'),(SELECT SUM(chg.ar_amount)+ SUM(chg.adjustment_amount) FROM lcl_booking_ac chg WHERE chg.file_number_id = fn.fileId AND chg.ar_bill_to_party != 'A'))) AS ppdCharge, ");
    queryBuilder.append(
            " IF(bl.file_number_id != fn.fileId , '' ,IF(fn.state = 'BL',(SELECT GROUP_CONCAT(DISTINCT chg.ar_bill_to_party SEPARATOR '/') FROM lcl_bl_ac chg WHERE chg.file_number_id = bl.file_number_id AND chg.ar_bill_to_party != 'A'),(SELECT GROUP_CONCAT(DISTINCT chg.ar_bill_to_party SEPARATOR '/') FROM lcl_booking_ac chg WHERE chg.file_number_id = fn.fileId AND chg.ar_bill_to_party != 'A'))) AS ppdParties, ");
    // checking condition for  status and classname label in list
    queryBuilder.append(" CASE   ");
    Boolean isManifest_Posted_Bl = new RoleDutyDAO().getRoleDetails("lcl_manifest_postedbl",
            user.getRole().getRoleId());
    if (isManifest_Posted_Bl) {
        queryBuilder.append(" WHEN fn.state <> 'BL' AND lbe.no_bl_required ='1'  THEN 'purpleBold'  ");
    }
    queryBuilder.append(" WHEN fn.state <> 'BL' THEN 'fileNo' ");
    queryBuilder.append(" WHEN bl.file_number_id != fn.fileId THEN 'greenBold14px' ");
    queryBuilder.append(
            " WHEN (bl.posted_by_user_id <> '' OR  bl.posted_by_user_id IS NOT NULL ) AND  fn.status <> 'M' THEN  'purpleBold' ");
    queryBuilder.append(" WHEN fn.status ='M' THEN 'greenBold14px' ");
    queryBuilder.append(
            " WHEN fn.state = 'BL' AND (bl.posted_by_user_id='' OR  bl.posted_by_user_id IS NULL) THEN 'fileNo' END  AS className, ");
    // ---------------------------------------------------------------STATUS LABEL-----------------------------------------------------------------------------
    queryBuilder.append(" CASE  ");
    if (isManifest_Posted_Bl) {
        queryBuilder.append("  WHEN fn.state <> 'BL' AND lbe.no_bl_required ='1'  THEN 'NO B/L Required'   ");
    }
    queryBuilder.append(" WHEN fn.state <> 'BL' THEN 'NoBL'");
    queryBuilder.append(" WHEN bl.file_number_id != fn.fileId THEN 'CONS'");
    queryBuilder.append(
            " WHEN (bl.posted_by_user_id <> '' OR  bl.posted_by_user_id IS NOT NULL ) AND  fn.status <> 'M' THEN  'POSTED' ");
    queryBuilder.append(" WHEN fn.status ='M' THEN 'MANIFESTED' ");
    queryBuilder.append(
            " WHEN fn.state = 'BL' AND (bl.posted_by_user_id = '' OR  bl.posted_by_user_id IS NULL) THEN 'POOL' END  AS statusLabel,");
    queryBuilder.append(" IF(lc.id IS NOT NULL,TRUE,FALSE) AS isCorrection, ");
    queryBuilder.append(" IF(lc.id IS NOT NULL,(SELECT SUM(ch.new_amount) FROM lcl_correction_Charge ch  ");
    queryBuilder.append(" JOIN gl_mapping gl ON gl.id = ch.gl_mapping_id WHERE  ");
    queryBuilder.append(" ch.correction_id=lc.id AND gl.charge_code='FTFFEE'),  ");
    queryBuilder.append(
            " (SELECT SUM(blac.ar_amount) FROM lcl_bl_Ac blac JOIN gl_mapping gl ON gl.id = blac.ar_gl_mapping_id  ");
    queryBuilder.append(" WHERE file_number_id = bl.file_number_id AND gl.charge_code='FTFFEE')) AS ftfFee  ");

    // --------------------------------------------------------MAIN SUB QUERY------------------------------------------------------------------------------------
    queryBuilder.append(" from ( ");
    queryBuilder.append(
            " SELECT f.id AS fileId, f.file_number AS fileNo, f.state AS state, f.status AS STATUS, lbp.hazmat AS haz ");
    queryBuilder.append(
            " FROM lcl_file_number f JOIN lcl_booking_piece lbp ON lbp.file_number_id = f.id JOIN lcl_booking_piece_unit u ON u.booking_piece_id = lbp.id ");
    queryBuilder.append(" WHERE u.lcl_unit_ss_id =:unitSdId ) fn");
    // ---------------------------------------------------------JOIN STATS HERE-----------------------------------------------------------------------------------
    queryBuilder.append(" LEFT JOIN lcl_booking b  ON fn.fileId = b.file_number_id ");
    // ------------------------------------- Conslidation logic is applied please verify ----------------------------------------------------------------
    queryBuilder
            .append("  LEFT JOIN lcl_bl bl  ON (bl.file_number_id = getHouseBLForConsolidateDr(fn.fileId))");
    queryBuilder.append(
            "  LEFT JOIN lcl_correction lc ON (lc.file_number_id = bl.file_number_id AND lc.status = 'A') ");

    if (isManifest_Posted_Bl) {
        queryBuilder.append(" JOIN lcl_booking_export lbe ON fn.fileId = lbe.file_number_id  ");
    }
    queryBuilder.append(getSumOfCommodityValues());
    queryBuilder.append(getSumOfBlCommodityValues());
    queryBuilder.append(" GROUP BY fn.fileId ");
    queryBuilder.append(" ORDER BY fn.fileNo ");

    SQLQuery query = getCurrentSession().createSQLQuery(queryBuilder.toString());
    query.setParameter("unitSdId", unitSSId);
    query.setResultTransformer(Transformers.aliasToBean(ManifestBean.class));
    query.addScalar("fileId", LongType.INSTANCE);
    query.addScalar("fileNo", StringType.INSTANCE);
    query.addScalar("status", StringType.INSTANCE);
    query.addScalar("state", StringType.INSTANCE);
    query.addScalar("arInvoiceNumber", StringType.INSTANCE);
    query.addScalar("disposition", StringType.INSTANCE);
    query.addScalar("blNo", StringType.INSTANCE);
    query.addScalar("totalPieceCount", IntegerType.INSTANCE);
    query.addScalar("totalWeightImperial", BigDecimalType.INSTANCE);
    query.addScalar("totalVolumeImperial", BigDecimalType.INSTANCE);
    query.addScalar("blCft", BigDecimalType.INSTANCE);
    query.addScalar("blCbm", BigDecimalType.INSTANCE);
    query.addScalar("blKgs", BigDecimalType.INSTANCE);
    query.addScalar("blLbs", BigDecimalType.INSTANCE);
    query.addScalar("rateType", StringType.INSTANCE);
    query.addScalar("ffComm", BigDecimalType.INSTANCE);
    query.addScalar("shipperName", StringType.INSTANCE);
    query.addScalar("consigneeName", StringType.INSTANCE);
    query.addScalar("forwarderName", StringType.INSTANCE);
    query.addScalar("origin", StringType.INSTANCE);
    query.addScalar("destination", StringType.INSTANCE);
    query.addScalar("pol", StringType.INSTANCE);
    query.addScalar("pod", StringType.INSTANCE);
    query.addScalar("terminalLocation", StringType.INSTANCE);
    query.addScalar("pickupCity", StringType.INSTANCE);
    query.addScalar("originName", StringType.INSTANCE);
    query.addScalar("originState", StringType.INSTANCE);
    query.addScalar("polName", StringType.INSTANCE);
    query.addScalar("polState", StringType.INSTANCE);
    query.addScalar("podName", StringType.INSTANCE);
    query.addScalar("podCountry", StringType.INSTANCE);
    query.addScalar("destinationName", StringType.INSTANCE);
    query.addScalar("destinationCountry", StringType.INSTANCE);
    query.addScalar("billingType", StringType.INSTANCE);
    query.addScalar("doc", StringType.INSTANCE);
    query.addScalar("blInvoiceNo", StringType.INSTANCE);
    query.addScalar("bookedVoyageNo", StringType.INSTANCE);
    query.addScalar("hotCodes", StringType.INSTANCE);
    query.addScalar("postedByUserId", IntegerType.INSTANCE);
    query.addScalar("hazmat", BooleanType.INSTANCE);
    query.addScalar("colCharge", BigDecimalType.INSTANCE);
    query.addScalar("ppdCharge", BigDecimalType.INSTANCE);
    query.addScalar("ppdParties", StringType.INSTANCE);
    query.addScalar("className", StringType.INSTANCE);
    query.addScalar("statusLabel", StringType.INSTANCE);
    query.addScalar("isCorrection", BooleanType.INSTANCE);
    query.addScalar("ftfFee", BigDecimalType.INSTANCE);
    List<ManifestBean> drList = query.list();
    return drList;
}

From source file:com.gp.cong.lcl.common.constant.ExportUnitQueryUtils.java

public List<ManifestBean> getPickedDrList(Long unitSSId) throws Exception {
    StringBuilder queryStr = new StringBuilder();
    queryStr.append(// ww  w .  ja  va 2s  . co  m
            " SELECT DISTINCT fn.fileId as fileId,fn.fileNo as fileNo,fn.blNumber AS blNo,fn.bkgPieceId AS bkgPieceId  FROM  ");
    queryStr.append(" (SELECT DISTINCT bkp.file_number_id AS fileId,lfn.file_number AS fileNo,  ");
    queryStr.append(" CONCAT_WS('-',(SELECT IF(t.unlocationcode1 <> '',RIGHT(t.unlocationcode1,3),t.trmnum)  ");
    queryStr.append(" AS terminal FROM terminal t WHERE t.trmnum=lb.billing_terminal),  ");
    queryStr.append(
            " IF(dest.bl_numbering = 'Y',RIGHT(dest.un_loc_code, 3),dest.un_loc_code),lfn.file_number) AS blNumber,bkp.id as bkgPieceId   ");
    queryStr.append(
            "  FROM lcl_booking_piece bkp JOIN  lcl_booking_piece_unit bpu ON  bpu.booking_piece_id = bkp.id ");
    queryStr.append(
            " JOIN lcl_file_number lfn ON lfn.id=bkp.file_number_id  JOIN lcl_booking lb ON lb.file_number_id=lfn.id  ");
    queryStr.append(" JOIN un_location dest ON dest.id=lb.fd_id ");
    queryStr.append(
            " JOIN lcl_unit_ss luss ON luss.id = bpu.lcl_unit_ss_id WHERE luss.id =:unitSSId GROUP BY bkp.file_number_id) fn ");
    SQLQuery query = getCurrentSession().createSQLQuery(queryStr.toString());
    query.setLong("unitSSId", unitSSId);
    query.setResultTransformer(Transformers.aliasToBean(ManifestBean.class));
    query.addScalar("fileId", LongType.INSTANCE);
    query.addScalar("fileNo", StringType.INSTANCE);
    query.addScalar("blNo", StringType.INSTANCE);
    query.addScalar("bkgPieceId", LongType.INSTANCE);
    return query.list();
}

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;// w  ww .ja  v a2s .com
    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.commons.hibernate.ValueObjectUserType.java

License:Apache License

public Type[] getPropertyTypes() {
    return new Type[] { BooleanType.INSTANCE, IntegerType.INSTANCE, LongType.INSTANCE, FloatType.INSTANCE,
            DoubleType.INSTANCE, TimestampType.INSTANCE, BlobType.INSTANCE, StringType.INSTANCE,
            ClobType.INSTANCE };//from  w w  w  .jav  a 2 s.c o m
}

From source file:com.mercatis.lighthouse3.persistence.commons.hibernate.ValueObjectUserType.java

License:Apache License

public void nullSafeSet(PreparedStatement statement, Object value, int index, SessionImplementor session)
        throws HibernateException, SQLException {
    Dialect d = session.getFactory().getDialect();
    boolean isSqlServer = d instanceof org.hibernate.dialect.SQLServerDialect
            || d instanceof org.hibernate.dialect.SQLServer2008Dialect
            || d instanceof org.hibernate.dialect.SQLServer2008Dialect;
    @SuppressWarnings("deprecation")
    boolean isOracle = d instanceof org.hibernate.dialect.OracleDialect
            || d instanceof org.hibernate.dialect.Oracle8iDialect
            || d instanceof org.hibernate.dialect.Oracle9Dialect
            || d instanceof org.hibernate.dialect.Oracle9iDialect
            || d instanceof org.hibernate.dialect.Oracle10gDialect;

    if (value instanceof Boolean)
        statement.setBoolean(index, (Boolean) value);
    else//from www .  j  av  a 2s .c  o  m
        statement.setNull(index, BooleanType.INSTANCE.sqlType());

    if (value instanceof Integer)
        statement.setInt(index + 1, (Integer) value);
    else
        statement.setNull(index + 1, IntegerType.INSTANCE.sqlType());

    if (value instanceof Long)
        statement.setLong(index + 2, (Long) value);
    else
        statement.setNull(index + 2, LongType.INSTANCE.sqlType());

    if (value instanceof Float)
        statement.setFloat(index + 3, (Float) value);
    else
        statement.setNull(index + 3, FloatType.INSTANCE.sqlType());

    if (value instanceof Double)
        statement.setDouble(index + 4, (Double) value);
    else
        statement.setNull(index + 4, DoubleType.INSTANCE.sqlType());

    if (value instanceof java.sql.Timestamp)
        statement.setTimestamp(index + 5, (java.sql.Timestamp) value);
    else if (value instanceof java.util.Date)
        statement.setTimestamp(index + 5, new java.sql.Timestamp(((java.util.Date) value).getTime()));
    else
        statement.setNull(index + 5, TimestampType.INSTANCE.sqlType());

    if (value instanceof byte[] && isOracle)
        statement.setObject(index + 6, (byte[]) value);
    else if (value instanceof byte[])
        statement.setBlob(index + 6, new SerialBlob((byte[]) value));
    else
        statement.setNull(index + 6, java.sql.Types.BLOB);

    if (value instanceof String)
        statement.setString(index + 7, (String) value);
    else
        statement.setNull(index + 7, StringType.INSTANCE.sqlType());

    if (value instanceof char[] && (isOracle || isSqlServer))
        statement.setObject(index + 8, new String((char[]) value).getBytes());
    else if (value instanceof char[])
        statement.setClob(index + 8, new SerialClob((char[]) value));
    else
        statement.setNull(index + 8, java.sql.Types.CLOB);
}

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.
 * //w  w w  . ja  v a2s  .  c  om
 * @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.mercatis.lighthouse3.persistence.status.hibernate.StatusRegistryImplementation.java

License:Apache License

@SuppressWarnings("unchecked")
public List<Status> getStatusForCarrier(StatusCarrier carrier) {
    List<Status> result = this.unitOfWork.getCurrentSession().createCriteria(Status.class)
            .add(Restrictions.sqlRestriction("{alias}.STA_CONTEXT_ID = ?", carrier.getId(), LongType.INSTANCE))
            .list();/*from  w w  w  . j  ava2 s  .  co m*/

    return result;
}

From source file:com.soft.primerproyecto.Dao.BaseDaoHibernate.java

@Override
public List<T> executeNamedQuery(final Method method, final Object[] queryArgs) {
    final String queryName = queryNameFromMethod(method);
    final Query namedQuery = getSessionFactory().getCurrentSession().getNamedQuery(queryName);
    //String[] namedParameters = namedQuery.getNamedParameters();
    if (queryArgs != null) {
        for (int i = 0; i < queryArgs.length; i++) {
            Object arg = queryArgs[i];
            if (arg instanceof String)
                namedQuery.setParameter("param" + i, arg, StringType.INSTANCE);
            else if (arg instanceof Integer)
                namedQuery.setParameter("param" + i, arg, IntegerType.INSTANCE);
            else if (arg instanceof Date)
                namedQuery.setParameter("param" + i, arg, TimestampType.INSTANCE);
            else if (arg instanceof Long)
                namedQuery.setParameter("param" + i, arg, LongType.INSTANCE);
            else if (arg instanceof Float)
                namedQuery.setParameter("param" + i, arg, FloatType.INSTANCE);
            else// w  ww  .j ava 2 s  . c  om
                namedQuery.setParameter("param" + i, arg);
        }
    }
    return (List) namedQuery.list();
}

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  .j a v a2 s .co m
        }
    }
}