Example usage for org.hibernate.criterion Restrictions or

List of usage examples for org.hibernate.criterion Restrictions or

Introduction

In this page you can find the example usage for org.hibernate.criterion Restrictions or.

Prototype

public static LogicalExpression or(Criterion lhs, Criterion rhs) 

Source Link

Document

Return the disjuction of two expressions

Usage

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

License:Open Source License

/**
 * This API will fetch all the unlocked batch classes.
 * /*w w w.  j av a 2s.c o m*/
 * @return List<BatchClass>
 */
@Override
public List<BatchClass> getAllUnlockedBatchClasses() {
    DetachedCriteria criteria = criteria();
    criteria.add(Restrictions.isNull(CURRENT_USER));
    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

/**
 * To get Batch Class by Identifier./* ww w.  j  a  v a  2s  .c  om*/
 * @param batchClassIdentifier String
 * @return BatchClass
 */
@Override
public BatchClass getBatchClassByIdentifier(final String batchClassIdentifier) {
    DetachedCriteria criteria = criteria();
    criteria.add(Restrictions.eq(IDENTIFIER, batchClassIdentifier));
    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

/**
 * API to fetch BatchClass for the current user.
 * /*from  w w w  .  ja  v a2  s .  c om*/
 * @param currentUser {@link String}
 * @return List<BatchClass>
 */
@Override
public List<BatchClass> getAllBatchClassesForCurrentUser(final String currentUser) {
    DetachedCriteria criteria = criteria();
    criteria.add(Restrictions.eq(CURRENT_USER, currentUser));
    criteria.add(Restrictions.or(Restrictions.isNull(IS_DELETED), Restrictions.eq(IS_DELETED, false)));
    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.
 * /*from w w  w  . j  a va  2 s .  c  om*/
 * @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

/**
 * This API will fetch all the batch classes of current user role.
 * //  www  .j  a  va  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.
 * /*  ww w  . j  ava  2 s.  c  o m*/
 * @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.
 * // w w  w .j  av a2 s  . c  om
 * @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 ww w .j a  v  a 2 s  .  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.
 * //ww w .java 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.
 * //  w  w  w .  jav  a  2  s  . 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);
}