Example usage for org.apache.wicket.extensions.markup.html.repeater.data.sort SortOrder DESCENDING

List of usage examples for org.apache.wicket.extensions.markup.html.repeater.data.sort SortOrder DESCENDING

Introduction

In this page you can find the example usage for org.apache.wicket.extensions.markup.html.repeater.data.sort SortOrder DESCENDING.

Prototype

SortOrder DESCENDING

To view the source code for org.apache.wicket.extensions.markup.html.repeater.data.sort SortOrder DESCENDING.

Click Source Link

Document

descending sort order

Usage

From source file:com.googlecode.wicket.kendo.ui.datatable.DataProviderBehavior.java

License:Apache License

@Override
public void onRequest() {
    final RequestCycle requestCycle = RequestCycle.get();
    final IRequestParameters parameters = requestCycle.getRequest().getQueryParameters();

    final int first = parameters.getParameterValue("skip").toInt(0);
    final int count = parameters.getParameterValue("take").toInt(0);

    // ISortStateLocator //
    if (this.provider instanceof ISortStateLocator<?>) {
        String property = parameters.getParameterValue("sort[0][field]").toOptionalString();
        String direction = parameters.getParameterValue("sort[0][dir]").toOptionalString();

        if (property != null) {
            this.setSort(PropertyUtils.unescape(property), direction == null ? SortOrder.NONE
                    : direction.equals(ASC) ? SortOrder.ASCENDING : SortOrder.DESCENDING);
        }//from ww w  .ja v  a 2s.  co  m
    }

    // IFilterStateLocator //
    if (this.provider instanceof IFilterStateLocator<?>) {
        @SuppressWarnings("unused")
        String logicPattern = "filter[logic]";
        String fieldPattern = "filter[filters][%d][field]";
        String valuePattern = "filter[filters][%d][value]";

        @SuppressWarnings("unused")
        String operatorPattern = "filter[filters][%d][operator]";
        // TODO: implement logic & operator (new IFilterStateLocator interface?)

        @SuppressWarnings("unchecked")
        T object = ((IFilterStateLocator<T>) this.provider).getFilterState();
        PropertyResolverConverter converter = this.newPropertyResolverConverter();

        for (int i = 0; i < COLS; i++) {
            String field = parameters.getParameterValue(String.format(fieldPattern, i)).toOptionalString();
            String value = parameters.getParameterValue(String.format(valuePattern, i)).toOptionalString();

            if (field != null) {
                PropertyResolver.setValue(PropertyUtils.unescape(field), object, value, converter);
            } else {
                break;
            }
        }
    }

    requestCycle.scheduleRequestHandlerAfterCurrent(this.newRequestHandler(first, count));
}

From source file:com.googlecode.wicket.kendo.ui.datatable.DataSourceBehavior.java

License:Apache License

@Override
protected void respond(AjaxRequestTarget target) {
    final RequestCycle requestCycle = RequestCycle.get();
    final IRequestParameters parameters = requestCycle.getRequest().getQueryParameters();

    final int first = parameters.getParameterValue("skip").toInt(0);
    final int count = parameters.getParameterValue("take").toInt(0);

    // ISortStateLocator //
    if (this.provider instanceof ISortStateLocator<?>) {
        String property = parameters.getParameterValue("sort[0][field]").toOptionalString();
        String direction = parameters.getParameterValue("sort[0][dir]").toOptionalString();

        if (property != null) {
            this.setSort(PropertyUtils.unescape(property), direction == null ? SortOrder.NONE
                    : direction.equals(ASC) ? SortOrder.ASCENDING : SortOrder.DESCENDING);
        }//from w  w w .j  a v  a 2s.  c o m
    }

    // IFilterStateLocator //
    if (this.provider instanceof IFilterStateLocator<?>) {
        String fieldPattern = "filter[filters][%d][field]";
        String valuePattern = "filter[filters][%d][value]";

        @SuppressWarnings("unused")
        String logicPattern = "filter[logic]";
        @SuppressWarnings("unused")
        String operatorPattern = "filter[filters][%d][operator]";
        // TODO: implement logic & operator (new IFilterStateLocator interface?)

        @SuppressWarnings("unchecked")
        T object = ((IFilterStateLocator<T>) this.provider).getFilterState();
        PropertyResolverConverter converter = this.newPropertyResolverConverter();

        for (int i = 0; i < COLS; i++) {
            String field = parameters.getParameterValue(String.format(fieldPattern, i)).toOptionalString();
            String value = parameters.getParameterValue(String.format(valuePattern, i)).toOptionalString();

            if (field != null) {
                PropertyResolver.setValue(PropertyUtils.unescape(field), object, value, converter);
            } else {
                break;
            }
        }
    }

    final IRequestHandler handler = this.newRequestHandler(first, count);
    requestCycle.scheduleRequestHandlerAfterCurrent(handler);
}

From source file:cz.zcu.kiv.eegdatabase.wui.ui.history.HistoryPage.java

License:Apache License

public void addComponents(final ChoiceHistory choice) {

    this.choice = choice;

    isGroupAdmin = securityFacade.userIsGroupAdmin();
    Person loggedUser = EEGDataBaseSession.get().getLoggedUser();
    ResearchGroup defaultGroup = loggedUser.getDefaultGroup();
    groupId = defaultGroup == null ? 0 : loggedUser.getDefaultGroup().getResearchGroupId();

    final boolean admin = securityFacade.isAdmin();
    if (!admin && !isGroupAdmin) {
        throw new RestartResponseAtInterceptPageException(HomePage.class);
    }//www.j  a v a 2  s  .  c om

    if (admin) {
        groupId = 0;
        isGroupAdmin = false;
    }

    setPageTitle(ResourceUtils.getModel("title.page.history"));
    add(new ButtonPageMenu("leftMenu", HistoryLeftPageMenu.values()));

    final WebMarkupContainer container = new WebMarkupContainer("container");
    container.setOutputMarkupId(true);

    final HistoryTopDownloadsDataProvider topDownloadsDataProvider = new HistoryTopDownloadsDataProvider(
            historyFacade);
    topDownloadsDataProvider.setData(choice, isGroupAdmin, groupId);
    topDownloadsDataProvider.setSort("count", SortOrder.DESCENDING);

    final HistoryLastDownloadedDataProvider lastDownloadedDataProvider = new HistoryLastDownloadedDataProvider(
            historyFacade);
    lastDownloadedDataProvider.setData(choice, isGroupAdmin, groupId);
    lastDownloadedDataProvider.setSort("dateOfDownload", SortOrder.DESCENDING);

    final HistoryAllTimeRangeRecordsDataProvider allTimeRangeDataProvider = new HistoryAllTimeRangeRecordsDataProvider(
            historyFacade);
    allTimeRangeDataProvider.setData(choice, isGroupAdmin, groupId);
    allTimeRangeDataProvider.setSort("dateOfDownload", SortOrder.DESCENDING);

    if (choice == ChoiceHistory.DAILY) {
        container.add(new Label("title", ResourceUtils.getModel("pageTitle.dailyDownloadHistory")));
        container.add(new Label("timePeriodStatistic", ResourceUtils.getModel("title.dailyStatistic")));
        container.add(new Label("allTimePeriodRecords", ResourceUtils.getModel("title.allDailyRecords")));

    } else if (choice == ChoiceHistory.WEEKLY) {
        container.add(new Label("title", ResourceUtils.getModel("pageTitle.weeklyDownloadHistory")));
        container.add(new Label("timePeriodStatistic", ResourceUtils.getModel("title.weeklyStatistic")));
        container.add(new Label("allTimePeriodRecords", ResourceUtils.getModel("title.allWeeklyRecords")));

    } else if (choice == ChoiceHistory.MONTHLY) {
        container.add(new Label("title", ResourceUtils.getModel("pageTitle.monthlyDownloadHistory")));
        container.add(new Label("timePeriodStatistic", ResourceUtils.getModel("title.monthlyStatistic")));
        container.add(new Label("allTimePeriodRecords", ResourceUtils.getModel("title.allMonthlyRecords")));

    } else {
        throw new RestartResponseAtInterceptPageException(HistoryPage.class);
    }

    container.add(
            new Label("downloadFiles", ResourceUtils.getModel("text.downloadFiles")).setRenderBodyOnly(true));

    final Model<String> countModel = new Model<String>("" + allTimeRangeDataProvider.getCountOfHistory());
    container.add(new Label("count", countModel).setRenderBodyOnly(true));

    container.add(new Label("topDownloads", ResourceUtils.getModel("title.topDownloads")));

    DefaultDataTable<DownloadStatistic, String> topDownloadedFilelist = new DefaultDataTable<DownloadStatistic, String>(
            "topDownloadedFilelist", createListColumnsTopDownloads(), topDownloadsDataProvider, ITEMS_PER_PAGE);
    container.add(topDownloadedFilelist);

    getChartImage();
    container.add(chartImage);

    container.add(new Label("lastDownloaded", ResourceUtils.getModel("title.lastDownloaded")));

    DefaultDataTable<History, String> lastDownloadedFilesHistoryList = new DefaultDataTable<History, String>(
            "lastDownloadedFilesHistoryList", createListColumnsLastDownloaded(), lastDownloadedDataProvider,
            ITEMS_PER_PAGE);
    container.add(lastDownloadedFilesHistoryList);

    DefaultDataTable<History, String> historyList = new DefaultDataTable<History, String>("historyList",
            createListColumnsAllTimeRangeRecords(), allTimeRangeDataProvider, ITEMS_PER_PAGE);
    container.add(historyList);

    Form<Void> groupForm = new Form<Void>("form");
    ChoiceRenderer<ResearchGroup> renderer = new ChoiceRenderer<ResearchGroup>("title", "researchGroupId");
    List<ResearchGroup> choices = researchGroupFacade.getResearchGroupsWhereUserIsGroupAdmin(loggedUser);
    final DropDownChoice<ResearchGroup> researchGroupChoice = new DropDownChoice<ResearchGroup>("researchGroup",
            new Model<ResearchGroup>(), choices, renderer);

    if (defaultGroup != null)
        researchGroupChoice.setModelObject(defaultGroup);

    if (admin) {
        ResearchGroup showAll = new ResearchGroup();
        showAll.setResearchGroupId(0);
        showAll.setTitle(ResourceUtils.getString("select.option.allGroups"));
        choices.add(0, showAll);
        researchGroupChoice.setModelObject(showAll);
    }

    researchGroupChoice.setRequired(true);
    researchGroupChoice.setLabel(ResourceUtils.getModel("label.group"));
    researchGroupChoice.add(new AjaxFormComponentUpdatingBehavior("onChange") {

        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            isGroupAdmin = securityFacade.userIsGroupAdmin();
            ResearchGroup group = researchGroupChoice.getModelObject();
            groupId = group == null ? -1 : group.getResearchGroupId();

            if (groupId == 0 && admin) {
                isGroupAdmin = false;
            }

            topDownloadsDataProvider.setData(choice, isGroupAdmin, groupId);
            lastDownloadedDataProvider.setData(choice, isGroupAdmin, groupId);
            allTimeRangeDataProvider.setData(choice, isGroupAdmin, groupId);

            countModel.setObject("" + allTimeRangeDataProvider.getCountOfHistory());

            getChartImage();

            target.add(container);
        }
    });

    groupForm.add(researchGroupChoice);
    container.add(groupForm);

    add(container);

}

From source file:org.apache.isis.viewer.wicket.ui.components.collectioncontents.ajaxtable.IsisAjaxHeadersToolbar.java

License:Apache License

/**
 * Factory method for the sort icon/* w  w w .  j  av a 2  s.  com*/
 *
 * @param id
 *          the component id
 * @param column
 *          the column for which a sort icon is needed
 * @param stateLocator
 *          locator for the ISortState implementation used by sortable headers
 * @param <T>
 *          The model object type of the data table
 * @return A component that should be used as a sort icon
 */
protected <T> Component newSortIcon(String id, final IColumn<T, S> column,
        final ISortStateLocator<S> stateLocator) {
    return new WebComponent(id) {
        @Override
        protected void onComponentTag(ComponentTag tag) {
            super.onComponentTag(tag);

            if (column.isSortable()) {
                ISortState<S> sortState = stateLocator.getSortState();
                S sortProperty = column.getSortProperty();
                SortOrder sortOrder = sortProperty == null ? SortOrder.NONE
                        : sortState.getPropertySortOrder(sortProperty);
                if (sortOrder == SortOrder.ASCENDING) {
                    Attributes.addClass(tag, CLASS_SORT_UP);
                } else if (sortOrder == SortOrder.DESCENDING) {
                    Attributes.addClass(tag, CLASS_SORT_DOWN);
                } else {
                    Attributes.addClass(tag, CLASS_SORT_NONE);
                }
            }
        }
    };
}

From source file:org.apache.syncope.client.console.commons.TaskDataProvider.java

License:Apache License

public TaskDataProvider(final int paginatorRows, final TaskType taskType, final TaskRestClient taskRestClient) {
    super(paginatorRows);

    this.taskRestClient = taskRestClient;
    setSort("start", SortOrder.DESCENDING);
    comparator = new SortableDataProviderComparator<>(this);
    this.taskType = taskType;
}

From source file:org.cast.isi.ISIApplication.java

License:Open Source License

/**
 * determine any custom response sorting
 *///from w  w w.j  ava 2  s.  c om
public void configureResponseSort() {
    String field = configuration.getProperty("isi.response.sortField");
    String state = configuration.getProperty("isi.response.sort");

    if (field != null) {
        responseSortField = field.trim();
        log.info("The Response will be sorted by: {}", responseSortField);
    }
    if (state != null) {
        state = state.trim();
        if (state.equalsIgnoreCase("ascending"))
            responseSortState = SortOrder.ASCENDING;
        else if (state.equalsIgnoreCase("descending"))
            responseSortState = SortOrder.DESCENDING;
        else if (state.equalsIgnoreCase("none"))
            responseSortState = SortOrder.NONE;
        log.info("The Response have a sort order: {}", state);
    }
}

From source file:org.cdlflex.ui.markup.html.repeater.data.table.SortableListDataProviderTest.java

License:Apache License

@Test
public void iterator_afterSettingSortState_returnsElementsInCorrectOrder() throws Exception {
    provider.getSortState().setPropertySortOrder("name", SortOrder.DESCENDING);

    Iterator<? extends Person> iterator = provider.iterator(0, 4);

    assertEquals("D", iterator.next().getName());
    assertEquals("C", iterator.next().getName());
    assertEquals("B", iterator.next().getName());
    assertEquals("A", iterator.next().getName());

    assertFalse(iterator.hasNext());//from w ww.j a  va2 s.  c o m
}

From source file:org.dcache.webadmin.view.panels.poolqueues.PoolQueuePlotsControlPanel.java

License:Open Source License

private void addSortGroup(ThumbnailPanelProvider provider) {
    IModel<String> sortValue = new PropertyModel<>(provider, "order");
    RadioGroup rgrp = new RadioGroup("sortgroup", sortValue) {
        private static final long serialVersionUID = -5500105320665027261L;

        @Override/*from  w w w. j av a2  s  . c om*/
        protected boolean wantOnSelectionChangedNotifications() {
            return true;
        }
    };

    rgrp.add(new Radio("ascending", Model.of(SortOrder.ASCENDING.toString())));
    rgrp.add(new Radio("descending", Model.of(SortOrder.DESCENDING.toString())));

    add(rgrp);
}

From source file:org.efaps.ui.wicket.components.bpm.process.NodeInstanceProvider.java

License:Apache License

@Override
public Iterator<? extends UINodeInstanceLog> iterator(final long _first, final long _count) {
    final String sortprop = getSort().getProperty();
    final boolean asc = getSort().isAscending();

    try {//from w  w w  . j  ava  2s .co m
        Context.getThreadContext().setUserAttribute(getUserAttributeKey4SortOrder(),
                asc ? SortOrder.ASCENDING.name() : SortOrder.DESCENDING.name());
        Context.getThreadContext().setUserAttribute(getUserAttributeKey4SortProperty(), sortprop);
    } catch (final EFapsException e) {
        // only UserAttributes ==> logging only
        AbstractSortableProvider.LOG.error("error on setting UserAttributes", e);
    }

    Collections.sort(getValues(), new Comparator<UINodeInstanceLog>() {
        @Override
        public int compare(final UINodeInstanceLog _node0, final UINodeInstanceLog _node1) {
            final UINodeInstanceLog node0;
            final UINodeInstanceLog node1;
            if (asc) {
                node0 = _node0;
                node1 = _node1;
            } else {
                node1 = _node0;
                node0 = _node1;
            }
            int ret = 0;
            if (node0 != null && node1 != null) {
                if ("id".equals(sortprop)) {
                    ret = Long.valueOf(node0.getId()).compareTo(Long.valueOf(node1.getId()));
                } else if ("nodeId".equals(sortprop)) {
                    ret = node0.getNodeId().compareTo(node1.getNodeId());
                } else if ("nodeInstanceId".equals(sortprop)) {
                    ret = node0.getNodeInstanceId().compareTo(node1.getNodeInstanceId());
                } else if ("nodeName".equals(sortprop)) {
                    ret = node0.getNodeName().compareTo(node1.getNodeName());
                } else if ("type".equals(sortprop)) {
                    ret = Long.valueOf(node0.getType()).compareTo(Long.valueOf(node1.getType()));
                } else if ("date".equals(sortprop)) {
                    ret = node0.getDate().compareTo(node1.getDate());
                }
            }
            return ret;
        }
    });
    return getValues().subList(Long.valueOf(_first).intValue(), Long.valueOf(_first + _count).intValue())
            .iterator();
}

From source file:org.efaps.ui.wicket.components.bpm.process.ProcessInstanceProvider.java

License:Apache License

@Override
public Iterator<? extends UIProcessInstanceLog> iterator(final long _first, final long _count) {
    final String sortprop = getSort().getProperty();
    final boolean asc = getSort().isAscending();

    try {//from   www  .  j a v  a  2 s. com
        Context.getThreadContext().setUserAttribute(getUserAttributeKey4SortOrder(),
                asc ? SortOrder.ASCENDING.name() : SortOrder.DESCENDING.name());
        Context.getThreadContext().setUserAttribute(getUserAttributeKey4SortProperty(), sortprop);
    } catch (final EFapsException e) {
        // only UserAttributes ==> logging only
        AbstractSortableProvider.LOG.error("error on setting UserAttributes", e);
    }

    Collections.sort(getValues(), new Comparator<UIProcessInstanceLog>() {
        @Override
        public int compare(final UIProcessInstanceLog _process0, final UIProcessInstanceLog _process1) {
            final UIProcessInstanceLog process0;
            final UIProcessInstanceLog process1;
            if (asc) {
                process0 = _process0;
                process1 = _process1;
            } else {
                process1 = _process0;
                process0 = _process1;
            }
            int ret = 0;
            if (process0 != null && process1 != null) {
                if ("processId".equals(sortprop)) {
                    ret = process0.getProcessId().compareTo(process1.getProcessId());
                } else if ("id".equals(sortprop)) {
                    ret = Long.valueOf(process0.getId()).compareTo(Long.valueOf(process1.getId()));
                } else if ("processInstanceId".equals(sortprop)) {
                    ret = Long.valueOf(process0.getProcessInstanceId())
                            .compareTo(Long.valueOf(process1.getProcessInstanceId()));
                } else if ("start".equals(sortprop)) {
                    ret = process0.getStart().compareTo(process1.getStart());
                } else if ("end".equals(sortprop)) {
                    ret = process0.getEnd() != null && process1.getEnd() != null
                            ? process0.getEnd().compareTo(process1.getEnd())
                            : 0;
                } else if ("status".equals(sortprop)) {
                    ret = Long.valueOf(process0.getStatus()).compareTo(Long.valueOf(process1.getStatus()));
                } else if ("processName".equals(sortprop)) {
                    ret = String.valueOf(process0.getProcessName())
                            .compareTo(String.valueOf(process1.getProcessName()));
                } else if ("processVersion".equals(sortprop)) {
                    ret = String.valueOf(process0.getProcessVersion())
                            .compareTo(String.valueOf(process1.getProcessVersion()));
                } else if ("durationTime".equals(sortprop)) {
                    ret = Long.valueOf(process0.getDuration()).compareTo(Long.valueOf(process1.getDuration()));
                }
            }
            return ret;
        }
    });
    return getValues().subList(Long.valueOf(_first).intValue(), Long.valueOf(_first + _count).intValue())
            .iterator();
}