Example usage for org.hibernate.criterion DetachedCriteria setResultTransformer

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

Introduction

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

Prototype

public DetachedCriteria setResultTransformer(ResultTransformer resultTransformer) 

Source Link

Document

Set the result transformer to use.

Usage

From source file:sernet.gs.ui.rcp.main.service.taskcommands.LoadChildrenAndMassnahmen.java

License:Open Source License

public void execute() {
    try {/*from   ww w .  ja  v  a  2s . c  o m*/
        long start = System.currentTimeMillis();
        List<CnATreeElement> list = null;
        IBaseDao<ITVerbund, Serializable> dao = getDaoFactory().getDAO(ITVerbund.class);
        DetachedCriteria crit = DetachedCriteria.forClass(CnATreeElement.class);
        crit.add(Restrictions.eq("dbId", id));
        crit.setFetchMode("children", FetchMode.JOIN);
        crit.setFetchMode("children.children", FetchMode.JOIN);
        crit.setFetchMode("children.children.entity", FetchMode.JOIN);
        crit.setFetchMode("children.children.entity.typedPropertyLists", FetchMode.JOIN);
        crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
        list = dao.findByCriteria(crit);
        if (list != null && list.size() > 0) {
            // create display items:
            fillLists(list.get(0));
        }
        if (LOG.isDebugEnabled()) {
            long runtime = System.currentTimeMillis() - start;
            LOG.debug("FindMassnahmenForITVerbund runtime: " + runtime + " ms.");
        }
    } catch (CommandException e) {
        throw new RuntimeCommandException(e);
    }
}

From source file:sernet.verinice.bpm.gsm.GsmProcessParameterCreater.java

License:Open Source License

protected DetachedCriteria createDefaultCriteria() {
    DetachedCriteria crit = DetachedCriteria.forClass(CnATreeElement.class);
    crit.setFetchMode("entity.typedPropertyLists", FetchMode.JOIN);
    crit.setFetchMode("entity.typedPropertyLists.properties", FetchMode.JOIN);
    crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    return crit;//from  w w  w  .java2 s  . c om
}

From source file:sernet.verinice.graph.GraphService.java

License:Open Source License

private void loadLinks() {
    DetachedCriteria linkCrit = DetachedCriteria.forClass(CnALink.class);
    linkCrit.setFetchMode("dependant", FetchMode.JOIN);
    linkCrit.setFetchMode("dependency", FetchMode.JOIN);
    if (getRelationIds() != null && getRelationIds().length > 0) {
        linkCrit.add(Restrictions.in("id.typeId", getRelationIds()));
    }//from ww w . j ava2  s. c  o m
    linkCrit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    List<CnALink> linkList = getCnaLinkDao().findByCriteria(linkCrit);
    if (LOG.isInfoEnabled()) {
        LOG.info(linkList.size() + " relevant links found");
    }
    for (CnALink link : linkList) {
        CnATreeElement source = uuidMap.get(link.getDependant().getUuid());
        CnATreeElement target = uuidMap.get(link.getDependency().getUuid());
        if (source != null && target != null) {
            graph.addEdge(source, target, link.getRelationId());
            if (LOG.isDebugEnabled()) {
                LOG.debug("Edge added: " + source.getTitle() + " - " + target.getTitle() + ", "
                        + link.getRelationId());
            }
        }
    }
}

From source file:sernet.verinice.hibernate.AttachmentDao.java

License:Open Source License

@Override
public List<Attachment> loadAttachmentList(Integer cnAElementId) {
    DetachedCriteria crit = DetachedCriteria.forClass(Attachment.class);
    if (cnAElementId != null) {
        crit.add(Restrictions.eq("cnATreeElementId", cnAElementId));
    }/*w ww.  j  a  va2s .  c  o  m*/
    crit.setFetchMode("entity", FetchMode.JOIN);
    crit.setFetchMode("entity.typedPropertyLists", FetchMode.JOIN);
    crit.setFetchMode("entity.typedPropertyLists.properties", FetchMode.JOIN);
    crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    return findByCriteria(crit);
}

From source file:sernet.verinice.hibernate.HibernateDao.java

License:Open Source License

@Override
public List<T> findByCriteria(DetachedCriteria criteria) {
    criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    return getHibernateTemplate().findByCriteria(criteria);
}

From source file:sernet.verinice.hibernate.TreeElementDao.java

License:Open Source License

private void configureCriteria(DetachedCriteria criteria, IRetrieveInfo ri) {
    if (ri.isProperties()) {
        criteria.setFetchMode("entity", FetchMode.JOIN);
        criteria.setFetchMode("entity.typedPropertyLists", FetchMode.JOIN);
        criteria.setFetchMode("entity.typedPropertyLists.properties", FetchMode.JOIN);
    }//from  w ww . java 2  s  .  c  o m
    if (ri.isPermissions()) {
        criteria.setFetchMode("permissions", FetchMode.JOIN);
    }

    if (ri.isLinksDown()) {
        criteria.setFetchMode("linksDown", FetchMode.JOIN);
        criteria.setFetchMode("linksDown.dependency", FetchMode.JOIN);
        if (ri.isLinksDownProperties()) {
            criteria.setFetchMode("linksDown.dependency.entity", FetchMode.JOIN);
            criteria.setFetchMode("linksDown.dependency.entity.typedPropertyLists", FetchMode.JOIN);
            criteria.setFetchMode("linksDown.dependency.entity.typedPropertyLists.properties", FetchMode.JOIN);
        }
    }
    if (ri.isLinksUp()) {
        criteria.setFetchMode("linksUp", FetchMode.JOIN);
        criteria.setFetchMode("linksUp.dependant", FetchMode.JOIN);
        if (ri.isLinksUpProperties()) {
            criteria.setFetchMode("linksUp.dependant.entity", FetchMode.JOIN);
            criteria.setFetchMode("linksUp.dependant.entity.typedPropertyLists", FetchMode.JOIN);
            criteria.setFetchMode("linksUp.dependant.entity.typedPropertyLists.properties", FetchMode.JOIN);
        }
    }
    if (ri.isParent()) {
        criteria.setFetchMode("parent", FetchMode.JOIN);
        if (ri.isSiblings()) {
            criteria.setFetchMode("parent.children", FetchMode.JOIN);
        }
        if (ri.isParentPermissions()) {
            criteria.setFetchMode("parent.permissions", FetchMode.JOIN);
        }
    }
    if (ri.isChildren()) {
        criteria.setFetchMode("children", FetchMode.JOIN);
        DetachedCriteria criteriaChildren = null, criteriaEntity = null;
        if (ri.isInnerJoin()) {
            criteriaChildren = criteria.createCriteria("children");
        }
        if (ri.isChildrenProperties()) {
            criteria.setFetchMode("children.entity", FetchMode.JOIN);
            if (ri.isInnerJoin()) {
                criteriaEntity = criteriaChildren.createCriteria("entity");
            }
            criteria.setFetchMode("children.entity.typedPropertyLists", FetchMode.JOIN);
            if (ri.isInnerJoin()) {
                criteriaEntity.createCriteria("typedPropertyLists");
            }
            criteria.setFetchMode("children.entity.typedPropertyLists.properties", FetchMode.JOIN);
        }
        if (ri.isChildrenPermissions()) {
            criteria.setFetchMode("children.permissions", FetchMode.JOIN);
            if (ri.isInnerJoin()) {
                criteriaChildren.createCriteria("permissions");
            }
        }
    }
    if (ri.isGrandchildren()) {
        criteria.setFetchMode("children.children", FetchMode.JOIN);
    }
    criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
}

From source file:sernet.verinice.interfaces.graph.GraphElementLoader.java

License:Open Source License

private DetachedCriteria createDefaultCriteria() {
    DetachedCriteria crit = DetachedCriteria.forClass(CnATreeElement.class);
    crit.setFetchMode("entity.typedPropertyLists", FetchMode.JOIN);
    crit.setFetchMode("entity.typedPropertyLists.properties", FetchMode.JOIN);
    crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    return crit;/*from ww  w .  ja  v a  2 s  . co  m*/
}

From source file:sernet.verinice.service.commands.LoadCnAElementByEntityTypeId.java

License:Open Source License

@SuppressWarnings("unchecked")
@Override/*from  w  w w .  j av  a 2 s. c o m*/
public void execute() {
    IBaseDao<? extends CnATreeElement, Serializable> dao = getDaoFactory().getDAO(CnATreeElement.class);

    DetachedCriteria crit = DetachedCriteria.forClass(CnATreeElement.class);
    crit.setFetchMode("entity", FetchMode.JOIN);
    crit.setFetchMode("entity.typedPropertyLists", FetchMode.JOIN);
    crit.setFetchMode("entity.typedPropertyLists.properties", FetchMode.JOIN);
    crit.add(Restrictions.eq("objectType", typeId));
    if (scopeId != null) {
        crit.add(Restrictions.eq("scopeId", scopeId));
    }
    if (groupId != null) {
        crit.add(Restrictions.eq("parentId", groupId));
    }
    crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    list = dao.findByCriteria(crit);
}

From source file:sernet.verinice.service.commands.LoadCnAElementByExternalID.java

License:Open Source License

@Override
public void execute() {
    IBaseDao<CnATreeElement, Serializable> dao = getDaoFactory().getDAO(CnATreeElement.class);
    DetachedCriteria criteria = DetachedCriteria.forClass(CnATreeElement.class);
    criteria.add(Restrictions.eq("sourceId", sourceID));
    criteria.add(Restrictions.eq("extId", id));
    criteria.setFetchMode("children", FetchMode.JOIN);
    if (fetchLinksDown) {
        criteria.setFetchMode("linksDown", FetchMode.JOIN);
        criteria.setFetchMode("linksDown.dependency", FetchMode.JOIN);
    }// w ww  .  j  a v a 2 s.co  m
    if (fetchLinksUp) {
        criteria.setFetchMode("linksUp", FetchMode.JOIN);
        criteria.setFetchMode("linksUp.dependant", FetchMode.JOIN);
    }
    if (parent) {
        criteria.setFetchMode("parent", FetchMode.JOIN);
        criteria.setFetchMode("parent.permissions", FetchMode.JOIN);
    }
    if (properties) {
        criteria.setFetchMode("entity", FetchMode.JOIN);
        criteria.setFetchMode("entity.typedPropertyLists", FetchMode.JOIN);
        criteria.setFetchMode("entity.typedPropertyLists.properties", FetchMode.JOIN);
    }
    criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    list = dao.findByCriteria(criteria);
}

From source file:sernet.verinice.service.XmlRightsService.java

License:Open Source License

private void loadUserAndGroupNames(String username) {
    Integer scopeId = getConfigurationService().getScopeId(username);

    String hql = "from CnATreeElement c " + //$NON-NLS-1$           
            "where c.scopeId = ? " + //$NON-NLS-1$
            "and (c.objectType = ? or c.objectType = ?)"; //$NON-NLS-1$
    Object[] params = new Object[] { scopeId, PersonIso.TYPE_ID, Person.TYPE_ID };
    List<CnATreeElement> elementList = getPropertyDao().findByQuery(hql, params);
    Object[] idList = new Object[elementList.size()];
    int i = 0;/*from   w w  w  .java 2 s.  co m*/
    for (CnATreeElement person : elementList) {
        idList[i] = person.getDbId();
        i++;
    }
    DetachedCriteria crit = DetachedCriteria.forClass(Configuration.class);
    crit.setFetchMode("entity", FetchMode.JOIN); //$NON-NLS-1$
    crit.setFetchMode("entity.typedPropertyLists", FetchMode.JOIN); //$NON-NLS-1$
    crit.setFetchMode("entity.typedPropertyLists.properties", FetchMode.JOIN); //$NON-NLS-1$
    crit.setFetchMode("person", FetchMode.JOIN); //$NON-NLS-1$
    crit.add(Restrictions.in("person.id", idList)); //$NON-NLS-1$
    crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);

    List<Configuration> confList = getPropertyDao().findByCriteria(crit);
    Set<String> usernameList = new HashSet<String>(confList.size());
    Set<String> groupnameList = new HashSet<String>(confList.size());
    for (Configuration configuration : confList) {
        if (configuration.getUser() != null && !configuration.getUser().trim().isEmpty()) {
            usernameList.add(configuration.getUser());
        }
        groupnameList.addAll(configuration.getRoles());
    }
    this.usernameMap.put(username, new ArrayList<String>(usernameList));
    this.groupnameMap.put(username, new ArrayList<String>(groupnameList));
}