Example usage for org.hibernate.criterion DetachedCriteria forClass

List of usage examples for org.hibernate.criterion DetachedCriteria forClass

Introduction

In this page you can find the example usage for org.hibernate.criterion DetachedCriteria forClass.

Prototype

public static DetachedCriteria forClass(Class clazz) 

Source Link

Document

Static builder to create a DetachedCriteria for the given entity, by its Class.

Usage

From source file:com.lohika.alp.reporter.fe.dao.TestMethodDAOImpl.java

License:Open Source License

private DetachedCriteria getFilteredCriteria(TestMethodFilter filter) {
    DetachedCriteria criteria = DetachedCriteria.forClass(TestMethod.class);

    criteria.createAlias("testInstance", "testInstance").createAlias("testInstance.testClass", "testClass")
            .createAlias("testInstance.test", "test");

    if (filter.getFrom() != null && filter.getTill() != null) {
        Calendar c = Calendar.getInstance();

        c.setTime(filter.getFrom());/*from   w w  w.ja  v a 2s.c  om*/
        c.set(Calendar.HOUR_OF_DAY, c.getActualMinimum(Calendar.HOUR_OF_DAY));
        c.set(Calendar.MINUTE, c.getActualMinimum(Calendar.MINUTE));
        c.set(Calendar.SECOND, c.getActualMinimum(Calendar.SECOND));
        c.set(Calendar.MILLISECOND, c.getActualMinimum(Calendar.MILLISECOND));
        Date from = c.getTime();

        c.setTime(filter.getTill());
        c.set(Calendar.HOUR_OF_DAY, c.getActualMaximum(Calendar.HOUR_OF_DAY));
        c.set(Calendar.MINUTE, c.getActualMaximum(Calendar.MINUTE));
        c.set(Calendar.SECOND, c.getActualMaximum(Calendar.SECOND));
        c.set(Calendar.MILLISECOND, c.getActualMaximum(Calendar.MILLISECOND));
        Date till = c.getTime();

        criteria.add(Restrictions.between("startDate", from.getTime(), till.getTime()));
    }

    if (filter.getCl() != "" && filter.getCl() != null) {
        try {
            criteria.add(querytr.translate("testClass.name", filter.getCl()));
        } catch (QueryTranslatorException e) {
            // TODO Put QueryTranslatorException into log
            e.printStackTrace();
        }
    }

    if (filter.getGr() != "" && filter.getGr() != null) {
        criteria.createAlias("groups", "groups");

        try {
            criteria.add(querytr.translate("groups.name", filter.getGr()));
        } catch (QueryTranslatorException e) {
            // TODO Put QueryTranslatorException into log
            e.printStackTrace();
        }
    }

    return criteria;
}

From source file:com.lzw.work.cms.manager.PreCarRegisterManager.java

/**
 * /*from w ww  .j  a va 2s  .c  o  m*/
 */
public void getCarList() {

    Map userMap = (Map) ServletActionContext.getRequest().getSession().getAttribute("user");

    String stationCode = (String) userMap.get("StationCode");

    String userName = (String) userMap.get("UserName");

    String isAdmin = (String) userMap.get("IsAdmin");

    String clsbdh = ServletActionContext.getRequest().getParameter("clsbdh");

    Integer page = Integer.parseInt(ServletActionContext.getRequest().getParameter("page"));

    Integer rows = Integer.parseInt(ServletActionContext.getRequest().getParameter("rows"));

    DetachedCriteria dc = DetachedCriteria.forClass(bean.getClass());

    if (!"1".equals(isAdmin)) {
        dc.add(Restrictions.eq("stationCode", stationCode));
    }

    if (clsbdh != null && !"".equals(clsbdh)) {
        dc.add(Restrictions.like("clsbdh", "%" + clsbdh));
    }

    int first = (page - 1) * rows;

    dc.setProjection(Projections.rowCount());
    Long count = (Long) this.getHibernateTemplate().findByCriteria(dc).get(0);

    dc.setProjection(null);

    dc.addOrder(Order.desc("createdDate"));
    List list = this.getHibernateTemplate().findByCriteria(dc, first, rows);

    Map map = new HashMap();

    map.put("rows", list);
    map.put("total", count.intValue());

    JSONObject jo = JSONObject.fromObject(map);
    pw.print(jo);
}

From source file:com.medicfast.DAO.SenhaDAO.java

public Senha buscarProximaSenha() { // nao usado
    Session session = (Session) em.getDelegate();

    DetachedCriteria max = DetachedCriteria.forClass(Senha.class);
    max.add(Restrictions.eq("chamado", true));
    max.setProjection(Projections.max("numero"));

    Criteria c = session.createCriteria(Senha.class);
    c.add(Restrictions.eq("chamado", false));

    c.add(Property.forName("numero").eq(max));
    return (Senha) c.uniqueResult();
}

From source file:com.mydlp.ui.dao.LicenseInformationDAOImpl.java

License:Open Source License

@Override
public LicenseInformation getLicense() {
    DetachedCriteria criteria = DetachedCriteria.forClass(LicenseInformation.class);
    @SuppressWarnings("unchecked")
    List<LicenseInformation> list = getHibernateTemplate().findByCriteria(criteria);
    return DAOUtil.getSingleResult(list);
}

From source file:com.nowgroup.scsee.geo.state.HibernateStateRepository.java

License:MIT License

@SuppressWarnings("unchecked")
@Override/*from  ww w.jav  a 2s .  c o m*/
public List<GeoState> getStatesByCountryId(int countryId) {
    DetachedCriteria dc = DetachedCriteria.forClass(GeoState.class);
    DetachedCriteria countryCriteria = dc.createCriteria("country");
    countryCriteria.add(Restrictions.eq("id", countryId));
    countryCriteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);

    return (List<GeoState>) getHibernateTemplate().findByCriteria(dc);
}

From source file:com.npower.dm.core.selector.CriteriaModelSelector.java

License:Open Source License

/**
 * /*from w  w  w . ja  v  a  2s  . c o m*/
 */
public CriteriaModelSelector() {
    super();
    this.detachedCriteria = DetachedCriteria.forClass(ModelEntity.class);
    this.detachedCriteria.createAlias("characters", "character");
}

From source file:com.opengamma.masterdb.batch.DbBatchMaster.java

License:Open Source License

@Override
@SuppressWarnings("unchecked")
public Pair<List<MarketData>, Paging> getMarketData(final PagingRequest pagingRequest) {
    s_logger.info("Getting markte datas: ", pagingRequest);

    return getTransactionTemplateRetrying(getMaxRetries())
            .execute(new TransactionCallback<Pair<List<MarketData>, Paging>>() {
                @Override//w ww  .jav  a 2s  .com
                public Pair<List<MarketData>, Paging> doInTransaction(final TransactionStatus status) {
                    final DetachedCriteria criteria = DetachedCriteria.forClass(MarketData.class);

                    List<MarketData> results = Collections.emptyList();
                    if (!pagingRequest.equals(PagingRequest.NONE)) {
                        results = getHibernateTemplate().findByCriteria(criteria, pagingRequest.getFirstItem(),
                                pagingRequest.getPagingSize());
                    }
                    //
                    Paging paging;
                    if (pagingRequest.equals(PagingRequest.ALL)) {
                        paging = Paging.of(pagingRequest, results);
                    } else {
                        criteria.setProjection(Projections.rowCount());
                        final Long totalCount = (Long) getHibernateTemplate().findByCriteria(criteria).get(0);
                        paging = Paging.of(pagingRequest, totalCount.intValue());
                    }
                    //     
                    return Pair.of(results, paging);
                }
            });
}

From source file:com.opengamma.masterdb.batch.DbBatchMaster.java

License:Open Source License

@Override
@SuppressWarnings("unchecked")
public Pair<List<MarketDataValue>, Paging> getMarketDataValues(final ObjectId marketDataId,
        final PagingRequest pagingRequest) {
    s_logger.info("Getting the batch data snapshot: {}", marketDataId);

    final Long marketDataPK = extractOid(marketDataId);

    return getTransactionTemplateRetrying(getMaxRetries())
            .execute(new TransactionCallback<Pair<List<MarketDataValue>, Paging>>() {
                @Override/*w  w  w . j  av  a2  s  . co m*/
                public Pair<List<MarketDataValue>, Paging> doInTransaction(final TransactionStatus status) {

                    final DetachedCriteria criteria = DetachedCriteria.forClass(MarketDataValue.class);
                    criteria.add(Restrictions.eq("marketDataId", marketDataPK));
                    //
                    List<MarketDataValue> results = Collections.emptyList();
                    if (!pagingRequest.equals(PagingRequest.NONE)) {
                        results = getHibernateTemplate().findByCriteria(criteria, pagingRequest.getFirstItem(),
                                pagingRequest.getPagingSize());
                    }
                    //
                    Paging paging;
                    if (pagingRequest.equals(PagingRequest.ALL)) {
                        paging = Paging.of(pagingRequest, results);
                    } else {
                        criteria.setProjection(Projections.rowCount());
                        final Long totalCount = (Long) getHibernateTemplate().findByCriteria(criteria).get(0);
                        paging = Paging.of(pagingRequest, totalCount.intValue());
                    }
                    //
                    return Pair.of(results, paging);
                }
            });
}

From source file:com.opengamma.masterdb.batch.DbBatchMaster.java

License:Open Source License

@Override
@SuppressWarnings("unchecked")
public Pair<List<RiskRun>, Paging> searchRiskRun(final BatchRunSearchRequest request) {
    s_logger.info("Searching BatchDocuments: ", request);

    final DetachedCriteria criteria = DetachedCriteria.forClass(RiskRun.class);

    if (request.getValuationTime() != null) {
        criteria.add(Restrictions.eq("valuationTime", request.getValuationTime()));
    }// ww w.ja  v a  2  s .  co  m
    if (request.getVersionCorrection() != null) {
        criteria.add(Restrictions.eq("versionCorrection", request.getVersionCorrection()));
    }

    if (request.getMarketDataUid() != null) {
        criteria.createCriteria("marketData")
                .add(Restrictions.eq("baseUidScheme", request.getMarketDataUid().getScheme()))
                .add(Restrictions.eq("baseUidValue", request.getMarketDataUid().getValue()))
                .add(eqOrIsNull("baseUidVersion", request.getMarketDataUid().getVersion()));
        //.addOrder(Order.asc("baseUid"));
    }

    if (request.getViewDefinitionUid() != null) {
        criteria.add(Restrictions.eq("viewDefinitionUidScheme", request.getViewDefinitionUid().getScheme()))
                .add(Restrictions.eq("viewDefinitionUidValue", request.getViewDefinitionUid().getValue()))
                .add(eqOrIsNull("viewDefinitionUidVersion", request.getViewDefinitionUid().getVersion()));
        //.addOrder(Order.asc("viewDefinitionUid"));
    }

    return getTransactionTemplateRetrying(getMaxRetries())
            .execute(new TransactionCallback<Pair<List<RiskRun>, Paging>>() {
                @Override
                public Pair<List<RiskRun>, Paging> doInTransaction(final TransactionStatus status) {
                    //
                    final PagingRequest pagingRequest = request.getPagingRequest();
                    List<RiskRun> results = Collections.emptyList();
                    Paging paging;
                    if (!pagingRequest.equals(PagingRequest.NONE)) {
                        if (pagingRequest.equals(PagingRequest.ALL)) {
                            criteria.addOrder(Order.asc("valuationTime"));
                            results = getHibernateTemplate().findByCriteria(criteria,
                                    pagingRequest.getFirstItem(), pagingRequest.getPagingSize());
                            //
                            paging = Paging.of(pagingRequest, results);
                        } else {
                            criteria.setProjection(Projections.rowCount());
                            final Long totalCount = (Long) getHibernateTemplate().findByCriteria(criteria)
                                    .get(0);
                            paging = Paging.of(pagingRequest, totalCount.intValue());
                            //
                            criteria.setProjection(null);
                            criteria.setResultTransformer(Criteria.ROOT_ENTITY);
                            criteria.addOrder(Order.asc("valuationTime"));
                            results = getHibernateTemplate().findByCriteria(criteria,
                                    pagingRequest.getFirstItem(), pagingRequest.getPagingSize());
                        }
                    } else {
                        paging = Paging.of(PagingRequest.NONE, 0);
                    }
                    return Pair.of(results, paging);
                }
            });
}

From source file:com.opengamma.masterdb.batch.DbBatchWriter.java

License:Open Source License

public MarketData createOrGetMarketDataInTransaction(final UniqueId baseUid) {
    s_logger.info("Creating Market Data {} ", baseUid);
    MarketData marketData = getHibernateTemplate().execute(new HibernateCallback<MarketData>() {
        @Override//w  w w . j a  v  a  2 s.co  m
        public MarketData doInHibernate(Session session) throws HibernateException, SQLException {

            final DetachedCriteria criteria = DetachedCriteria.forClass(MarketData.class);
            criteria.add(Restrictions.eq("baseUidScheme", baseUid.getScheme()))
                    .add(Restrictions.eq("baseUidValue", baseUid.getValue()))
                    .add(eqOrIsNull("baseUidVersion", baseUid.getVersion()));

            @SuppressWarnings("unchecked")
            List<MarketData> datas = getHibernateTemplate().findByCriteria(criteria, 0, 1);
            if (datas.size() > 0) {
                return datas.get(0);
            } else {
                return null;
            }
        }
    });
    if (marketData != null) {
        s_logger.info("Snapshot " + baseUid + " already exists. No need to create.");
    } else {
        marketData = new MarketData();
        marketData.setBaseUid(baseUid);
        getHibernateTemplate().save(marketData);
        getHibernateTemplate().flush();
    }
    return marketData;
}