List of usage examples for org.hibernate.criterion Subqueries propertyEq
public static Criterion propertyEq(String propertyName, DetachedCriteria dc)
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 www. ja v a 2s . 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); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassPluginConfigDaoImpl.java
License:Open Source License
/** * API to get plugin properties for Batch. * // w ww . j a v a2 s. c o m * @param batchInstanceIdentifier {@link String} * @param pluginName {@link String} * @return List<BatchClassPluginConfig> */ @Override public List<BatchClassPluginConfig> getPluginPropertiesForBatch(String batchInstanceIdentifier, 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(BATCH_CLASS_PLUGIN_BATCH_CLASS_MODULE_BATCH_CLASS, BATCH_CLASS, JoinFragment.INNER_JOIN); criteria.createAlias(BATCH_CLASS_PLUGIN_PLUGIN, PLUGIN, JoinFragment.INNER_JOIN); criteria.add(Restrictions.eq(PLUGIN_PLUGIN_NAME, pluginName)); DetachedCriteria subQuery = criteria(BatchInstance.class); subQuery.add(Restrictions.eq("identifier", batchInstanceIdentifier)); subQuery.createAlias(BATCH_CLASS, "batchClass1", JoinFragment.INNER_JOIN); subQuery.setProjection(Projections.property("batchClass1.identifier")); criteria.add(Subqueries.propertyEq(BATCH_CLASS_IDENTIFIER, subQuery)); return find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassPluginConfigDaoImpl.java
License:Open Source License
/** * API to get all plugin properties for Batch instance. * /*from w w w . jav a2 s . co m*/ * @param batchInstanceIdentifier {@link String} * @return List<BatchClassPluginConfig> */ @Override public List<BatchClassPluginConfig> getAllPluginPropertiesForBatchInstance(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.FieldTypeDaoImpl.java
License:Open Source License
/** * An API to fetch all Field types by document type name. * //from w ww. j ava 2 s. co m * @param docTypeName String * @param batchInstanceIdentifierIdentifier String * @return List<FieldType> */ @Override public List<FieldType> getFdTypeByDocTypeNameForBatchInstance(String docTypeName, String batchInstanceIdentifier) { LOG.info("batchInstanceID : " + batchInstanceIdentifier); DetachedCriteria criteria = criteria(); criteria.createAlias(DOC_TYPE, DOC_TYPE, JoinFragment.INNER_JOIN); criteria.add(Restrictions.eq(DOC_TYPE_NAME, docTypeName)); criteria.createAlias(DOC_TYPE_BATCH_CLASS, BATCH_CLASS1, JoinFragment.INNER_JOIN); DetachedCriteria subQuery = criteria(BatchInstance.class); subQuery.add(Restrictions.eq(IDENTIFIER, batchInstanceIdentifier)); subQuery.createAlias(BATCH_CLASS, BATCH_CLASS2, JoinFragment.INNER_JOIN); subQuery.setProjection(Projections.property(BATCH_CLASS2_IDENTIFIER)); criteria.add(Subqueries.propertyEq(BATCH_CLASS1_IDENTIFIER, subQuery)); criteria.addOrder(org.hibernate.criterion.Order.asc(FIELD_ORDER_NUMBER)); return find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.FieldTypeDaoImpl.java
License:Open Source License
/** * An API to get field type for a batch for a particular document. * // w ww . j a va2 s . c o m * @param fieldTypeName String * @param docTypeName String * @param batchInstanceIdentifier String * @return FieldType */ @Override public FieldType getFieldType(String fieldTypeName, String docTypeName, String batchInstanceIdentifier) { LOG.info("batchInstanceID : " + batchInstanceIdentifier); DetachedCriteria criteria = criteria(); criteria.add(Restrictions.eq(NAME, fieldTypeName)); criteria.createAlias(DOC_TYPE, DOC_TYPE, JoinFragment.INNER_JOIN); criteria.add(Restrictions.eq(DOC_TYPE_NAME, docTypeName)); criteria.createAlias(DOC_TYPE_BATCH_CLASS, BATCH_CLASS1, JoinFragment.INNER_JOIN); DetachedCriteria subQuery = criteria(BatchInstance.class); subQuery.add(Restrictions.eq(IDENTIFIER, batchInstanceIdentifier)); subQuery.createAlias(BATCH_CLASS, BATCH_CLASS2, JoinFragment.INNER_JOIN); subQuery.setProjection(Projections.property(BATCH_CLASS2_IDENTIFIER)); criteria.add(Subqueries.propertyEq(BATCH_CLASS1_IDENTIFIER, subQuery)); return findSingle(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.FieldTypeDaoImpl.java
License:Open Source License
/** * An API to fetch all Field types by document type name. * //from w ww. ja v a2s . c o m * @param docTypeName String * @param batchInstanceIdentifier String * @param isKVExtraction boolean * @return List<FieldType> */ @Override public List<FieldType> getFdTypeByDocumentTypeName(String docTypeName, String batchInstanceIdentifier, boolean isKVExtraction) { LOG.info("batchInstanceID ID : " + batchInstanceIdentifier); DetachedCriteria criteria = criteria(); criteria.createAlias(DOC_TYPE, DOC_TYPE, JoinFragment.INNER_JOIN); criteria.add(Restrictions.eq(DOC_TYPE_NAME, docTypeName)); criteria.createAlias(DOC_TYPE_BATCH_CLASS, BATCH_CLASS1, JoinFragment.INNER_JOIN); if (isKVExtraction) { criteria.setFetchMode("kvExtraction", FetchMode.JOIN); criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); } DetachedCriteria subQuery = criteria(BatchInstance.class); subQuery.add(Restrictions.eq(IDENTIFIER, batchInstanceIdentifier)); subQuery.createAlias(BATCH_CLASS, BATCH_CLASS2, JoinFragment.INNER_JOIN); subQuery.setProjection(Projections.property(BATCH_CLASS2_IDENTIFIER)); criteria.add(Subqueries.propertyEq(BATCH_CLASS1_IDENTIFIER, subQuery)); criteria.addOrder(org.hibernate.criterion.Order.asc(FIELD_ORDER_NUMBER)); return find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.FieldTypeDaoImpl.java
License:Open Source License
/** * An API to fetch all Field types by document type name. * /*from w w w. j a v a 2 s. co m*/ * @param docTypeName String * @param batchInstanceIdentifier String * @return List<FieldType> */ @Override public List<FieldType> getFdTypeAndRegexValidationByDocTypeName(String docTypeName, String batchInstanceIdentifier) { LOG.info("batchInstanceID ID : " + batchInstanceIdentifier); DetachedCriteria criteria = criteria(); criteria.createAlias(DOC_TYPE, DOC_TYPE, JoinFragment.INNER_JOIN); criteria.add(Restrictions.eq(DOC_TYPE_NAME, docTypeName)); criteria.createAlias(DOC_TYPE_BATCH_CLASS, BATCH_CLASS1, JoinFragment.INNER_JOIN); criteria.setFetchMode(REGEX_VALIDATION, FetchMode.JOIN); criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); DetachedCriteria subQuery = criteria(BatchInstance.class); subQuery.add(Restrictions.eq(IDENTIFIER, batchInstanceIdentifier)); subQuery.createAlias(BATCH_CLASS, BATCH_CLASS2, JoinFragment.INNER_JOIN); subQuery.setProjection(Projections.property(BATCH_CLASS2_IDENTIFIER)); criteria.add(Subqueries.propertyEq(BATCH_CLASS1_IDENTIFIER, subQuery)); criteria.addOrder(org.hibernate.criterion.Order.asc(FIELD_ORDER_NUMBER)); return find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.PageTypeDaoImpl.java
License:Open Source License
/** * An API to fetch all Page types by batchInstanceID. * /* www.j a va 2 s. c o m*/ * @param batchInstanceIdentifier String * @return List<PageType> */ @Override public List<PageType> getPageTypesByBatchInstanceID(String batchInstanceIdentifier) { DetachedCriteria criteria = criteria(); criteria.createAlias(DOC_TYPE, DOC_TYPE, JoinFragment.INNER_JOIN); criteria.createAlias(DOC_TYPE_BATCH_CLASS, BATCH_CLASS1, JoinFragment.INNER_JOIN); DetachedCriteria subQuery = criteria(BatchInstance.class); subQuery.add(Restrictions.eq(IDENTIFIER, batchInstanceIdentifier)); subQuery.createAlias(BATCH_CLASS, BATCH_CLASS2, JoinFragment.INNER_JOIN); subQuery.setProjection(Projections.property(BATCH_CLASS2_IDENTIFIER)); criteria.add(Subqueries.propertyEq(BATCH_CLASS1_IDENTIFIER, subQuery)); return find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.PageTypeDaoImpl.java
License:Open Source License
/** * An API to fetch all Page types by batchClassID. * // w ww . j av a 2s . co m * @param batchClassID String * @return List<PageType> */ @Override public List<PageType> getPageTypesByBatchClassID(String batchClassID) { DetachedCriteria criteria = criteria(); criteria.createAlias(DOC_TYPE, DOC_TYPE, JoinFragment.INNER_JOIN); criteria.createAlias(DOC_TYPE_BATCH_CLASS, BATCH_CLASS1, JoinFragment.INNER_JOIN); DetachedCriteria subQuery = criteria(BatchClass.class); subQuery.add(Restrictions.eq(IDENTIFIER, batchClassID)); subQuery.setProjection(Projections.property(IDENTIFIER)); criteria.add(Subqueries.propertyEq(BATCH_CLASS1_IDENTIFIER, subQuery)); return find(criteria); }
From source file:com.ephesoft.dcma.da.dao.hibernate.PageTypeDaoImpl.java
License:Open Source License
/** * An API to fetch page type by page type name. * // w w w . j a va 2 s . co m * @param name String * @param batchInstanceIdentifier String * @return List<PageType> */ @Override public List<PageType> getPageTypeByName(String name, String batchInstanceIdentifier) { DetachedCriteria criteria = criteria(); criteria.add(Restrictions.eq(NAME, name)); if (null != batchInstanceIdentifier) { criteria.createAlias(DOC_TYPE, DOC_TYPE, JoinFragment.INNER_JOIN); criteria.createAlias(DOC_TYPE_BATCH_CLASS, BATCH_CLASS1, JoinFragment.INNER_JOIN); DetachedCriteria subQuery = criteria(BatchInstance.class); subQuery.add(Restrictions.eq(IDENTIFIER, batchInstanceIdentifier)); subQuery.createAlias(BATCH_CLASS, BATCH_CLASS2, JoinFragment.INNER_JOIN); subQuery.setProjection(Projections.property(BATCH_CLASS2_IDENTIFIER)); criteria.add(Subqueries.propertyEq(BATCH_CLASS1_IDENTIFIER, subQuery)); } return find(criteria); }