Example usage for org.hibernate.criterion DetachedCriteria add

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

Introduction

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

Prototype

public DetachedCriteria add(Criterion criterion) 

Source Link

Document

Add a restriction

Usage

From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDaoImpl.java

License:Open Source License

/**
 * This API will fetch all the batch classes of current user role.
 * //from w ww  . jav  a 2 s .  c  om
 * @param userRoles Set<String>
 * @return List<BatchClass>
 */
@Override
public List<BatchClass> getAllBatchClassesByUserRoles(final Set<String> userRoles) {
    DetachedCriteria criteria = criteria();
    List<BatchClass> batchClassList = 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.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);
    }

    return batchClassList;
}

From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDaoImpl.java

License:Open Source License

/**
 * This API will fetch the size of batchclass.
 * /*from  ww w .j  a  v  a  2 s. com*/
 * @param userRoles Set<String>
 * @return batchClass size
 */
@Override
public int getAllBatchClassCountExcludeDeleted(Set<String> userRoles) {
    DetachedCriteria criteria = criteria();
    if (userRoles != null && !userRoles.isEmpty()) {
        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.or(Restrictions.isNull(IS_DELETED), Restrictions.eq(IS_DELETED, false)));
    return count(criteria);
}

From source file:com.ephesoft.dcma.da.dao.hibernate.BatchClassDaoImpl.java

License:Open Source License

/**
 * This API will fetch the batch class list excluding the deleted batch class.
 * /*from w ww.  j  av  a 2 s  .c  o m*/
 * @return List<BatchClass>
 */
@Override
public List<BatchClass> getAllBatchClassExcludeDeleted() {
    DetachedCriteria criteria = criteria();
    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

/**
 * This API will fetch the batch class (eagerly loaded) list excluding the deleted batch class.
 * /*from   w w  w .j  a v  a  2s . c  o m*/
 * @return List<BatchClass>
 */
@Override
public List<BatchClass> getAllLoadedBatchClassExcludeDeleted() {
    DetachedCriteria criteria = criteria();
    criteria.add(Restrictions.or(Restrictions.isNull(IS_DELETED), Restrictions.eq(IS_DELETED, false)));
    List<BatchClass> batchClasses = this.find(criteria);
    for (BatchClass batchClass : batchClasses) {
        for (BatchClassGroups batchClassGroups : batchClass.getAssignedGroups()) {
            if (LOG.isDebugEnabled() && batchClassGroups != null) {
                LOG.debug(batchClassGroups.getGroupName());
            }
        }
        for (BatchClassScannerConfiguration batchClassScannerConfig : batchClass
                .getBatchClassScannerConfiguration()) {
            if (LOG.isDebugEnabled() && batchClassScannerConfig != null) {
                LOG.debug(batchClassScannerConfig.getValue());
                for (BatchClassScannerConfiguration childScannerConfig : batchClassScannerConfig
                        .getChildren()) {
                    if (LOG.isDebugEnabled() && childScannerConfig != null) {
                        LOG.debug(childScannerConfig.getValue());
                    }
                }
            }
        }
        for (BatchClassModule mod : batchClass.getBatchClassModules()) {
            List<BatchClassPlugin> plugins = mod.getBatchClassPlugins();
            List<BatchClassModuleConfig> batchClassModuleConfig = mod.getBatchClassModuleConfig();
            for (BatchClassPlugin plugin : plugins) {
                List<BatchClassPluginConfig> pluginConfigs = plugin.getBatchClassPluginConfigs();
                List<BatchClassDynamicPluginConfig> dynamicPluginConfigs = plugin
                        .getBatchClassDynamicPluginConfigs();
                for (BatchClassPluginConfig conf : pluginConfigs) {
                    List<KVPageProcess> kvs = conf.getKvPageProcesses();
                    for (KVPageProcess kv : kvs) {
                        if (LOG.isDebugEnabled() && kv != null) {
                            LOG.debug(kv.getKeyPattern());
                        }
                    }
                }
                for (BatchClassDynamicPluginConfig dyPluginConfig : dynamicPluginConfigs) {
                    if (LOG.isDebugEnabled() && dyPluginConfig != null) {
                        LOG.debug(dyPluginConfig.getName());
                    }
                }
            }
            for (BatchClassModuleConfig bcmc : batchClassModuleConfig) {
                if (LOG.isDebugEnabled() && bcmc != null) {
                    LOG.debug(bcmc.getBatchClassModule().getModule().getName());
                }
            }
        }
    }
    return batchClasses;
}

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 a2 s  .  c  om*/
 * @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 by name including deleted.
 * //from w  w  w .j a  va2 s.c om
 * @param batchClassName {@link String}
 * @return {@link BatchClass}
 */
@Override
public BatchClass getBatchClassByNameIncludingDeleted(String batchClassName) {
    BatchClass batchClass = null;
    DetachedCriteria criteria = criteria();
    criteria.add(Restrictions.eq(NAME, batchClassName));
    List<BatchClass> batchClasses = this.find(criteria);
    if (batchClasses != null && !batchClasses.isEmpty()) {
        batchClass = batchClasses.get(0);
    }
    return batchClass;
}

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  ww  . j  a  va2s  . c  om
 * @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.
 * //w  ww  .  j  av  a  2s . c  om
 * @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 batch classes on the basis of excluding the deleted batch class and on the basis of ascending or desending order
 * of specified property./*  ww w  . jav a 2  s. co m*/
 * 
 * @param isExcludeDeleted boolean
 * @param isAsc boolean
 * @param propertyName {@link String}
 * @return List<{@link BatchClass}>
 */
@Override
public List<BatchClass> getAllBatchClasses(boolean isExcludeDeleted, boolean isAsc, String propertyName) {
    DetachedCriteria criteria = criteria();
    if (isExcludeDeleted) {
        criteria.add(Restrictions.or(Restrictions.isNull(IS_DELETED), Restrictions.eq(IS_DELETED, false)));
    }
    if (propertyName != null) {
        if (isAsc) {
            criteria.addOrder(org.hibernate.criterion.Order.asc(propertyName));
        } else {
            criteria.addOrder(org.hibernate.criterion.Order.desc(propertyName));
        }
    }
    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.
 * //from   ww  w. j ava 2s .com
 * @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);
}