List of usage examples for org.hibernate.criterion Projections property
public static PropertyProjection property(String propertyName)
From source file:com.denimgroup.threadfix.data.dao.hibernate.VulnerabilitySearchCriteriaConstructor.java
License:Mozilla Public License
private void addChannelTypeRestrictions() { // Limit scanner if present if (parameters.getChannelTypes() != null && !parameters.getChannelTypes().isEmpty()) { List<Integer> channelTypeIds = list(); for (ChannelType channelType : parameters.getChannelTypes()) { if (channelType.getId() != null) { channelTypeIds.add(channelType.getId()); }//ww w. j a v a 2 s .c om } if (!channelTypeIds.isEmpty()) { Criteria subCriteria = session.createCriteria(Finding.class); subCriteria.createAlias("scan", "myScan"); subCriteria.createAlias("myScan.applicationChannel", "myApplicationChannel"); subCriteria.createAlias("myApplicationChannel.channelType", "myChannelType"); subCriteria.add(Restrictions.in("myChannelType.id", channelTypeIds)); subCriteria.setProjection(Projections.property("vulnerability.id")); List<Integer> ids = (List<Integer>) subCriteria.list(); if (ids.isEmpty()) { LOG.debug("Got no valid Scanner type IDs."); ids.add(0); // should yield no results // throw an exception here? } else { LOG.debug("Adding scanner restriction: " + channelTypeIds); } criteria.add(Restrictions.in("id", ids)); } } }
From source file:com.eharmony.matching.seeking.translator.hibernate.HibernateQueryTranslator.java
License:Apache License
@Override public <T, R> Projection translateProjection(Query<T, R> query) { if (query.getReturnFields().size() > 0) { ProjectionList projectionList = Projections.projectionList(); for (String returnField : query.getReturnFields()) { projectionList.add(Projections.property(returnField)); }// w w w . ja v a 2s . c o m return projectionList; } else { return null; } }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDaoImpl.java
License:Open Source License
/** * This API will fetch all the unc folder paths. * //from w w w . ja v a 2 s .com * @return List<String> */ @Override public List<String> getAllUNCFolderPaths() { DetachedCriteria criteria = criteria(); criteria.setProjection(Projections.property(UNC_FOLDER)); return find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDaoImpl.java
License:Open Source License
/** * API to get the list of Batch Classes specifying startindex, no of results and sorting if any. * /* w w w . j a v a 2 s. co m*/ * @param firstResult int * @param maxResults int * @param order List<Order> * @param userRoles Set<String> * @return List of batch class. */ @Override public List<BatchClass> getBatchClassList(final int firstResult, final int maxResults, final List<Order> order, final Set<String> userRoles) { EphesoftCriteria criteria = criteria(); List<BatchClass> batchClassList = null; if (userRoles == null) { batchClassList = new ArrayList<BatchClass>(0); } else { List<String> roleList = new ArrayList<String>(); for (String userRole : userRoles) { if (null == userRole || userRole.isEmpty()) { continue; } roleList.add(userRole); } DetachedCriteria detachedCriteria = criteria(); detachedCriteria.createAlias(ASSIGNED_GROUPS, ASSIGNED_GROUPS); detachedCriteria.add(Restrictions.in(ASSIGNED_GROUPS_NAME, roleList)); detachedCriteria.setProjection(Projections.distinct(Projections.property(BATCH_ID))); criteria.add(Subqueries.propertyIn(BATCH_ID, detachedCriteria)); criteria.add(Restrictions.or(Restrictions.isNull(IS_DELETED), Restrictions.eq(IS_DELETED, false))); batchClassList = find(criteria, firstResult, maxResults, order.toArray(new Order[order.size()])); } return batchClassList; }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDaoImpl.java
License:Open Source License
/** * API to fetch the UNC folders for a batch class by name. * //from ww w . j av a 2 s . c o m * @param batchClassName {@link String} * @return List<String> */ @Override public List<String> getAllAssociatedUNCFolders(String batchClassName) { DetachedCriteria criteria = criteria(); criteria.setProjection(Projections.property(UNC_FOLDER)); criteria.add(Restrictions.eq(NAME, batchClassName)); criteria.addOrder(org.hibernate.criterion.Order.asc(IDENTIFIER)); criteria.add(Restrictions.or(Restrictions.isNull(IS_DELETED), Restrictions.eq(IS_DELETED, false))); return this.find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDaoImpl.java
License:Open Source License
/** * API to get batch class identifier by UNC folder. * /*from w w w .j a v a 2s . c o m*/ * @param uncFolder {@link String} * @return {@link String} */ @Override public String getBatchClassIdentifierByUNCfolder(String uncFolder) { DetachedCriteria criteria = criteria(); criteria.setProjection(Projections.property(IDENTIFIER)); criteria.add(Restrictions.eq(UNC_FOLDER, uncFolder)); criteria.add(Restrictions.or(Restrictions.isNull(IS_DELETED), Restrictions.eq(IS_DELETED, false))); return this.findSingle(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDaoImpl.java
License:Open Source License
/** * This API returns list of all batch class identifiers. * /*from w w w .j av a2 s. c o m*/ * @return List<String> */ @Override public List<String> getAllBatchClassIdentifiers() { DetachedCriteria criteria = criteria(); criteria.setProjection(Projections.property(IDENTIFIER)); criteria.add(Restrictions.or(Restrictions.isNull(IS_DELETED), Restrictions.eq(IS_DELETED, false))); return this.find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDaoImpl.java
License:Open Source License
/** * API to get all the UNC folders on the basis of excluding the deleted batch class. * // w w w .j av a2s. c om * @param isExcludeDeleted {@link Boolean} * @return {@link List}<{@link String}> */ @Override public List<String> getAllUNCList(boolean isExcludeDeleted) { DetachedCriteria criteria = criteria(); if (isExcludeDeleted) { criteria.add(Restrictions.or(Restrictions.isNull(IS_DELETED), Restrictions.eq(IS_DELETED, false))); } criteria.setProjection(Projections.property(UNC_FOLDER)); return this.find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDaoImpl.java
License:Open Source License
/** * API to fetch the system folder for the given batch class identifier. * /* w w w . java2 s .c o m*/ * @param batchClassIdentifier {@link String} * @return {@link String} the system folder path. */ @Override public String getSystemFolderForBatchClassIdentifier(String batchClassIdentifier) { EphesoftCriteria criteria = criteria(); criteria.add(Restrictions.eq(IDENTIFIER, batchClassIdentifier)); criteria.setProjection(Projections.property(SYSTEM_FOLDER)); return findSingle(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDynamicPluginConfigDaoImpl.java
License:Open Source License
/** * To get all Dynamic Plugin Properties for Batch instance. * //from w ww . ja v a 2 s . co m * @param batchClassIdentifier String * @return List<BatchClassDynamicPluginConfig> */ @Override public List<BatchClassDynamicPluginConfig> getAllDynamicPluginPropertiesForBatchInstance( String batchInstanceIdentifier) { DetachedCriteria criteria = criteria(); criteria.createAlias(BATCH_CLASS_PLUGIN, BATCH_CLASS_PLUGIN); criteria.createAlias(BATCH_CLASS_PLUGIN_BATCH_CLASS_MODULE, BATCH_CLASS_MODULE); criteria.createAlias("batchClassModule.batchClass", BATCH_CLASS); DetachedCriteria subQuery = criteria(BatchInstance.class); subQuery.add(Restrictions.eq("identifier", batchInstanceIdentifier)); subQuery.setProjection(Projections.property("batchClass.id")); criteria.add(Subqueries.propertyEq("batchClass.id", subQuery)); return find(criteria); }