Example usage for com.liferay.portal.kernel.trash TrashHandlerRegistryUtil getTrashHandlers

List of usage examples for com.liferay.portal.kernel.trash TrashHandlerRegistryUtil getTrashHandlers

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.trash TrashHandlerRegistryUtil getTrashHandlers.

Prototype

public static List<TrashHandler> getTrashHandlers() 

Source Link

Usage

From source file:com.liferay.trash.internal.search.TrashIndexer.java

License:Open Source License

@Override
public BooleanQuery getFullQuery(SearchContext searchContext) throws SearchException {

    try {/*from www .  ja va  2  s.co m*/
        BooleanFilter fullQueryBooleanFilter = new BooleanFilter();

        fullQueryBooleanFilter.addRequiredTerm(Field.COMPANY_ID, searchContext.getCompanyId());

        List<TrashHandler> trashHandlers = TrashHandlerRegistryUtil.getTrashHandlers();

        for (TrashHandler trashHandler : trashHandlers) {
            Filter filter = trashHandler.getExcludeFilter(searchContext);

            if (filter != null) {
                fullQueryBooleanFilter.add(filter, BooleanClauseOccur.MUST_NOT);
            }

            processTrashHandlerExcludeQuery(searchContext, fullQueryBooleanFilter, trashHandler);
        }

        long[] groupIds = searchContext.getGroupIds();

        if (ArrayUtil.isNotEmpty(groupIds)) {
            TermsFilter groupTermsFilter = new TermsFilter(Field.GROUP_ID);

            groupTermsFilter.addValues(ArrayUtil.toStringArray(groupIds));

            fullQueryBooleanFilter.add(groupTermsFilter, BooleanClauseOccur.MUST);
        }

        fullQueryBooleanFilter.addRequiredTerm(Field.STATUS, WorkflowConstants.STATUS_IN_TRASH);

        BooleanQuery fullQuery = createFullQuery(fullQueryBooleanFilter, searchContext);

        return fullQuery;
    } catch (SearchException se) {
        throw se;
    } catch (Exception e) {
        throw new SearchException(e);
    }
}

From source file:com.liferay.trash.service.test.TrashHandlerRegistryUtilTest.java

License:Open Source License

@Test
public void testGetTrashHandlers() {
    List<TrashHandler> trashHandlers = TrashHandlerRegistryUtil.getTrashHandlers();

    boolean exists = false;

    for (TrashHandler trashHandler : trashHandlers) {
        Class<?> clazz = trashHandler.getClass();

        String className = clazz.getName();

        if (className.equals(TestTrashHandler.class.getName())) {
            exists = true;//  w  w w . j a v a  2  s .  c om

            break;
        }
    }

    Assert.assertTrue(TestTrashHandler.class.getName() + " is not registered", exists);
}