List of usage examples for org.hibernate.criterion DetachedCriteria add
public DetachedCriteria add(Criterion criterion)
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDaoImpl.java
License:Open Source License
/** * API to the batch class with respect to the given batch class id and the roles provided. * /*from ww w. j a va2s. c o m*/ * @param userRoles {@link Set<{@link String}>} * @param batchClassID {@link String} * @return {@link BatchClass} */ @Override public BatchClass getBatchClassByUserRoles(final Set<String> userRoles, String batchClassID) { DetachedCriteria criteria = criteria(); List<BatchClass> batchClassList = null; BatchClass batchClass = null; if (userRoles == null) { batchClassList = new ArrayList<BatchClass>(); } else { List<String> roleList = new ArrayList<String>(); for (String userRole : userRoles) { if (null == userRole || userRole.isEmpty()) { continue; } roleList.add(userRole); } criteria.createAlias(ASSIGNED_GROUPS, ASSIGNED_GROUPS); criteria.add(Restrictions.in(ASSIGNED_GROUPS_NAME, roleList)); criteria.add(Restrictions.eq(IDENTIFIER, batchClassID)); criteria.add(Restrictions.or(Restrictions.isNull(IS_DELETED), Restrictions.eq(IS_DELETED, false))); criteria.addOrder(org.hibernate.criterion.Order.asc(BATCH_ID)); criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); batchClassList = find(criteria); if (batchClassList != null && !batchClassList.isEmpty()) { batchClass = batchClassList.get(0); } } return batchClass; }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDynamicPluginConfigDaoImpl.java
License:Open Source License
/** * To get Dynamic Plugin Properties for Batch Class. * //from w w w.j a va 2 s. c o m * @param batchClassIdentifier String * @param pluginName String * @param pluginProperty PluginProperty * @return List<BatchClassDynamicPluginConfig> */ @Override public List<BatchClassDynamicPluginConfig> getDynamicPluginPropertiesForBatchClass(String batchClassIdentifier, String pluginName, PluginProperty pluginProperty) { DetachedCriteria criteria = criteria(); criteria.createAlias(BATCH_CLASS_PLUGIN, BATCH_CLASS_PLUGIN, JoinFragment.INNER_JOIN); criteria.createAlias(BATCH_CLASS_PLUGIN_BATCH_CLASS_MODULE, BATCH_CLASS_MODULE, JoinFragment.INNER_JOIN); criteria.createAlias("batchClassPlugin.batchClassModule.batchClass", BATCH_CLASS, JoinFragment.INNER_JOIN); criteria.createAlias("batchClassPlugin.plugin", "plugin", JoinFragment.INNER_JOIN); criteria.createAlias("batchClassPlugin.batchClassDynamicPluginConfigs", "batchClassDynamicPluginConfigs", JoinFragment.INNER_JOIN); if (pluginProperty != null) { criteria.add(Restrictions.eq("batchClassDynamicPluginConfigs.name", pluginProperty.getPropertyKey())); } criteria.add(Restrictions.eq("plugin.pluginName", pluginName)); criteria.add(Restrictions.eq("batchClass.identifier", batchClassIdentifier)); return find(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. * //w ww. j ava 2s .c o 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); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDynamicPluginConfigDaoImpl.java
License:Open Source License
/** * To get all Dynamic Plugin Properties for Batch class. * //from w ww.j a va 2 s . c o m * @param batchClassIdentifier String * @return List<BatchClassDynamicPluginConfig> */ @Override public List<BatchClassDynamicPluginConfig> getAllDynamicPluginPropertiesForBatchClass( String batchClassIdentifier) { DetachedCriteria criteria = criteria(); criteria.createAlias(BATCH_CLASS_PLUGIN, BATCH_CLASS_PLUGIN, JoinFragment.INNER_JOIN); criteria.createAlias(BATCH_CLASS_PLUGIN_BATCH_CLASS_MODULE, BATCH_CLASS_MODULE, JoinFragment.INNER_JOIN); criteria.createAlias("batchClassPlugin.batchClassModule.batchClass", BATCH_CLASS, JoinFragment.INNER_JOIN); criteria.createAlias("batchClassPlugin.plugin", "plugin", JoinFragment.INNER_JOIN); criteria.createAlias("batchClassPlugin.batchClassDynamicPluginConfigs", "batchClassDynamicPluginConfigs", JoinFragment.INNER_JOIN); criteria.add(Restrictions.eq("batchClass.identifier", batchClassIdentifier)); return find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDynamicPluginConfigDaoImpl.java
License:Open Source License
/** * To get Dynamic Plugin Properties for Batch class. * //from w w w .j ava2 s . com * @param batchClassIdentifier String * @param pluginName String * @return List<BatchClassDynamicPluginConfig> */ @Override public List<BatchClassDynamicPluginConfig> getDynamicPluginPropertiesForBatchClass(String batchClassIdentifier, String pluginName) { DetachedCriteria criteria = criteria(); criteria.createAlias(BATCH_CLASS_PLUGIN, BATCH_CLASS_PLUGIN, JoinFragment.INNER_JOIN); criteria.createAlias(BATCH_CLASS_PLUGIN_BATCH_CLASS_MODULE, BATCH_CLASS_MODULE, JoinFragment.INNER_JOIN); criteria.createAlias("batchClassPlugin.batchClassModule.batchClass", BATCH_CLASS, JoinFragment.INNER_JOIN); criteria.createAlias("batchClassPlugin.plugin", "plugin", JoinFragment.INNER_JOIN); criteria.createAlias("batchClassPlugin.batchClassDynamicPluginConfigs", "batchClassDynamicPluginConfigs", JoinFragment.INNER_JOIN); criteria.add(Restrictions.eq("plugin.pluginName", pluginName)); criteria.add(Restrictions.eq("batchClass.identifier", batchClassIdentifier)); return find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassGroupsDaoImpl.java
License:Open Source License
/** * API for getting the batch class identifiers having the user roles. * @param userRoles Set<String>// www . j a va 2 s . c o m * @param includeDeleted boolean * @return Set<String> */ @Override public Set<String> getBatchClassIdentifierForUserRoles(Set<String> userRoles, boolean includeDeleted) { boolean isValid = true; if (userRoles == null || userRoles.size() == 0) { isValid = false; } Set<String> batchClassIdentifiers = null; // New version of fetching. if (isValid) { batchClassIdentifiers = new LinkedHashSet<String>(); DetachedCriteria criteria = criteria(); Disjunction disjunction = Restrictions.disjunction(); for (String userRole : userRoles) { disjunction.add(Restrictions.eq(GROUP_NAME, userRole)); } criteria.add(disjunction); criteria.addOrder(Order.asc(BATCH_CLASS)); List<BatchClassGroups> batchClassGroups = find(criteria); for (BatchClassGroups batchClassGroup : batchClassGroups) { if (includeDeleted) { batchClassIdentifiers.add(batchClassGroup.getBatchClass().getIdentifier()); } else { if (!batchClassGroup.getBatchClass().isDeleted()) { batchClassIdentifiers.add(batchClassGroup.getBatchClass().getIdentifier()); } } } } return batchClassIdentifiers; }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassGroupsDaoImpl.java
License:Open Source License
/** * API for getting the user roles for a batch class. * @param userRoles Set<String>/*from w ww . ja va 2 s.c om*/ * @param batchClassIdentifier * @return Set<String> */ @Override public Set<String> getRolesForBatchClass(String batchClassIdentifier) { Set<String> userGroups = new HashSet<String>(); DetachedCriteria criteria = criteria(); criteria.createAlias(BATCH_CLASS, BATCH_CLASS); criteria.add(Restrictions.eq(BATCH_CLASS_IDENTIFIER, batchClassIdentifier)); List<BatchClassGroups> batchClassGroups = find(criteria); for (BatchClassGroups batchClassGroup : batchClassGroups) { userGroups.add(batchClassGroup.getGroupName()); } return userGroups; }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassModuleConfigDaoImpl.java
License:Open Source License
/** * API for getting the module config using batch class module id. * //from w w w . j a v a2 s .c o m * @param batchClassModuleId String * @return List<ModuleConfig> */ @Override public List<ModuleConfig> getModuleConfigForBatchClassModule(String batchClassModuleId) { DetachedCriteria criteria = criteria(); criteria.add(Restrictions.eq("batch_class_module_id", batchClassModuleId)); return this.findSingle(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassModuleDaoImpl.java
License:Open Source License
/** * API to get the count of modules related to a batch class. * //from w w w . j ava2 s .c o m * @param batchClassId * @return Integer (count of modules) */ @Override public Integer countModules(String batchClassIdentifier) { LOG.info("batchClassIdentifier : " + batchClassIdentifier); DetachedCriteria criteria = criteria(); criteria.createAlias(BATCH_CLASS, BATCH_CLASS); criteria.add(Restrictions.eq(BATCH_CLASS_IDENTIFIER, batchClassIdentifier)); return count(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassModuleDaoImpl.java
License:Open Source License
/** * API to fetch List of modules corresponding to a batch class. * /*from w w w . j a va2s.c om*/ * @param batchClassId * @return List<Module> */ @Override public List<Module> getBatchClassModule(String batchClassIdentifier) { DetachedCriteria criteria = criteria(); criteria.createAlias(BATCH_CLASS, BATCH_CLASS); criteria.add(Restrictions.eq(BATCH_CLASS_IDENTIFIER, batchClassIdentifier)); criteria.setProjection(Projections.property(MODULE)); return find(criteria); }