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

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

Introduction

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

Prototype

public OrderByBorder(final String id, final S property, final ISortStateLocator<S> stateLocator) 

Source Link

Usage

From source file:com.gitblit.wicket.panels.RepositoriesPanel.java

License:Apache License

protected OrderByBorder newSort(String wicketId, SortBy field, SortableDataProvider<?, ?> dp,
        final DataView<?> dataView) {
    return new OrderByBorder(wicketId, field.name(), dp) {
        private static final long serialVersionUID = 1L;

        @Override/*from w  w  w  .  j  av  a  2s. c o m*/
        protected void onSortChanged() {
            dataView.setCurrentPage(0);
        }
    };
}

From source file:com.mikhailau.training.motordepot.webapp.page.categorylicense.panel.CategoryLicenseRegistrationListPanel.java

public CategoryLicenseRegistrationListPanel(String id) {
    super(id);/*from w  w w.  j a  v a2  s. c o m*/

    CategoryLicensesDataProvider categoryLicensesDataProvider = new CategoryLicensesDataProvider();
    DataView<CategoryLicense> dataView = new DataView<CategoryLicense>("rows", categoryLicensesDataProvider,
            20) {
        @Override
        protected void populateItem(Item<CategoryLicense> item) {
            CategoryLicense categoryLicense = item.getModelObject();

            item.add(new Label("category", categoryLicense.getCategory()));

            Link<Void> editLink = new Link<Void>("edit-link") {
                @Override
                public void onClick() {
                    setResponsePage(new CategoryLicenseAddPage(categoryLicense));
                }
            };

            Link<Void> deleteLink = new Link<Void>("delete-link") {
                @Override
                public void onClick() {
                    try {
                        categoryLicenseService.delete(categoryLicense.getId());
                        setResponsePage(new CategoryLicenseAddPage(new CategoryLicense()));
                    } catch (PersistenceException e) {
                        System.out.print(
                                "  ? ");
                    }
                }
            };
            item.add(deleteLink);
            item.add(editLink);

        }
    };
    add(dataView);
    add(new OrderByBorder("sort-category", CategoryLicense_.category, categoryLicensesDataProvider));
}

From source file:com.mikhailau.training.motordepot.webapp.page.driver.panel.DriverListPanel.java

public DriverListPanel(String id) {
    super(id);/*from  w  w  w. jav  a2s  .  co m*/

    VehiclesDataProvider vehiclesDataProvider = new VehiclesDataProvider();
    DataView<Vehicle> dataView = new DataView<Vehicle>("rows", vehiclesDataProvider, 5) {
        @Override
        protected void populateItem(Item<Vehicle> item) {
            Vehicle vehicle = item.getModelObject();

            item.add(new Label("lastName", vehicle.getDriver().getLastName()));
            item.add(new Label("firstName", vehicle.getDriver().getFirstName()));
            item.add(DateLabel.forDatePattern("leadTime", Model.of(vehicle.getDriver().getLeadTime()),
                    "dd-MM-yyyy"));

            CheckBox checkboxDriver = new CheckBox("stateFree", Model.of(vehicle.getDriver().getStateFree()));
            checkboxDriver.setEnabled(false);
            item.add(checkboxDriver);
            CheckBox checkboxVehicle = new CheckBox("stateAfterFreight",
                    Model.of(vehicle.getStateAfterFreight()));
            checkboxVehicle.setEnabled(false);
            item.add(checkboxVehicle);
            item.add(new Label("model", vehicle.getModel()));
            item.add(new Label("licensePlate", vehicle.getLicensePlate()));
            item.add(new Label("type", vehicle.getVehicleType().getType()));
            item.add(new Label("weight", vehicle.getMaxWeight()));
            item.add(new Label("pallets", vehicle.getNumberOfPallets()));

            item.add(new Link<Void>("edit-link") {
                @Override
                public void onClick() {

                    setResponsePage(new RegistrationDriverPage(vehicle));
                }
            });

            item.add(new Link<Void>("delete-link") {
                @Override
                public void onClick() {
                    try {
                        driverService.delete(vehicle.getId());
                    } catch (PersistenceException e) {
                        System.out.println("caughth persistance exception");
                    }
                    setResponsePage(new AllDriversPage());
                }
            });
        }
    };
    add(dataView);
    add(new PagingNavigator("paging", dataView));
    add(new OrderByBorder("sort-lastName", Driver_.lastName, vehiclesDataProvider));
    add(new OrderByBorder("sort-firstName", Driver_.firstName, vehiclesDataProvider));
    add(new OrderByBorder("sort-leadTime", Driver_.leadTime, vehiclesDataProvider));
    add(new OrderByBorder("sort-stateFree", Driver_.stateFree, vehiclesDataProvider));
    add(new OrderByBorder("sort-stateAfterFreight", Vehicle_.stateAfterFreight, vehiclesDataProvider));
    add(new OrderByBorder("sort-model", Vehicle_.model, vehiclesDataProvider));
    add(new OrderByBorder("sort-licensePlate", Vehicle_.id, vehiclesDataProvider));
    add(new OrderByBorder("sort-type", VehicleType_.type, vehiclesDataProvider));
    add(new OrderByBorder("sort-weight", Vehicle_.maxWeight, vehiclesDataProvider));
    add(new OrderByBorder("sort-pallets", Vehicle_.numberOfPallets, vehiclesDataProvider));

}

From source file:com.senacor.wbs.web.project.ProjectListPanel.java

License:Apache License

public ProjectListPanel(final String id, final List<Project> projects) {
    super(id);/*from   w  w w  .  ja  va2s.c o  m*/
    this.locale = getLocale();
    SortableListDataProvider<Project> projectProvider = new SortableListDataProvider<Project>(projects) {
        @Override
        protected Locale getLocale() {
            return ProjectListPanel.this.getLocale();
        }

        public IModel model(final Object object) {
            return new CompoundPropertyModel(object);
        }
    };
    projectProvider.setSort("name", true);
    dataView = new DataView("projects", projectProvider, 4) {
        @Override
        protected void populateItem(final Item item) {
            Project project = (Project) item.getModelObject();
            PageParameters pageParameters = new PageParameters();
            pageParameters.put("projectId", project.getId());
            item.add(new BookmarkablePageLink("tasks", ProjectDetailsPage.class, pageParameters)
                    .add(new Label("id")));
            item.add(new Label("kuerzel"));
            item.add(new Label("titel", project.getName()));
            item.add(new Label("budget"));
            item.add(new Label("costPerHour"));
            item.add(new Label("start"));
            item.add(new Label("ende"));
            item.add(new Label("state"));
            // Alternieren der Farbe zwischen geraden und
            // ungeraden Zeilen
            item.add(new AttributeModifier("class", true, new AbstractReadOnlyModel() {
                @Override
                public Object getObject() {
                    return (item.getIndex() % 2 == 1) ? "even" : "odd";
                }
            }));
        }
    };
    add(dataView);
    Form localeForm = new Form("localeForm");
    ImageButton deButton = new ImageButton("langde", new ResourceReference(BaseWBSPage.class, "de.png")) {
        @Override
        public void onSubmit() {
            ProjectListPanel.this.locale = Locale.GERMANY;
        }
    };
    localeForm.add(deButton);
    ImageButton usButton = new ImageButton("langus", new ResourceReference(BaseWBSPage.class, "us.png")) {
        @Override
        public void onSubmit() {
            ProjectListPanel.this.locale = Locale.US;
        }
    };
    localeForm.add(usButton);
    add(localeForm);
    final IResourceStream pdfResourceStream = new AbstractResourceStreamWriter() {
        public void write(final OutputStream output) {
            Document document = new Document();
            try {
                PdfWriter.getInstance(document, output);
                document.open();
                // document.add(new
                // Paragraph("WBS-Projektliste"));
                // document.add(new Paragraph(""));
                PdfPTable table = new PdfPTable(new float[] { 1f, 1f, 2f, 1f });
                PdfPCell cell = new PdfPCell(new Paragraph("WBS-Projektliste"));
                cell.setColspan(4);
                cell.setGrayFill(0.8f);
                table.addCell(cell);
                table.addCell("ID");
                table.addCell("Krzel");
                table.addCell("Titel");
                table.addCell("Budget in PT");
                for (Project project : projects) {
                    table.addCell("" + project.getId());
                    table.addCell(project.getKuerzel());
                    table.addCell(project.getName());
                    table.addCell("" + project.getBudget());
                }
                document.add(table);
                document.close();
            } catch (DocumentException e) {
                throw new RuntimeException(e);
            }
        }

        public String getContentType() {
            return "application/pdf";
        }
    };
    WebResource projectsResource = new WebResource() {
        {
            setCacheable(false);
        }

        @Override
        public IResourceStream getResourceStream() {
            return pdfResourceStream;
        }

        @Override
        protected void setHeaders(final WebResponse response) {
            super.setHeaders(response);
            // response.setAttachmentHeader("projekte.pdf");
        }
    };
    WebResource projectsResourceDL = new WebResource() {
        {
            setCacheable(false);
        }

        @Override
        public IResourceStream getResourceStream() {
            return pdfResourceStream;
        }

        @Override
        protected void setHeaders(final WebResponse response) {
            super.setHeaders(response);
            response.setAttachmentHeader("projekte.pdf");
        }
    };
    ResourceLink pdfDownload = new ResourceLink("pdfDownload", projectsResourceDL);
    ResourceLink pdfPopup = new ResourceLink("pdfPopup", projectsResource);
    PopupSettings popupSettings = new PopupSettings(PopupSettings.STATUS_BAR);
    popupSettings.setWidth(500);
    popupSettings.setHeight(700);
    pdfPopup.setPopupSettings(popupSettings);
    Link pdfReqTarget = new Link("pdfReqTarget") {
        @Override
        public void onClick() {
            RequestCycle.get()
                    .setRequestTarget(new ResourceStreamRequestTarget(pdfResourceStream, "projekte.pdf"));
        }
    };
    add(pdfReqTarget);
    add(pdfDownload);
    add(pdfPopup);
    add(new OrderByBorder("orderByKuerzel", "kuerzel", projectProvider));
    add(new OrderByBorder("orderByName", "name", projectProvider));
    add(new OrderByBorder("orderByBudget", "budget", projectProvider));
    add(new OrderByBorder("orderByCostPerHour", "costPerHour", projectProvider));
    add(new OrderByBorder("orderByStart", "start", projectProvider));
    add(new OrderByBorder("orderByEnde", "ende", projectProvider));
    add(new OrderByBorder("orderByState", "state", projectProvider));
    add(new PagingNavigator("projectsNavigator", dataView));
}

From source file:de.alpharogroup.wicket.data.provider.examples.dataview.SortableDataViewPanel.java

License:Apache License

/**
 * Instantiates a new sortable data view panel.
 *
 * @param id/*w ww. j  a va2s .co m*/
 *            the id
 */
public SortableDataViewPanel(final String id) {
    super(id);
    final List<Person> persons = PersonDatabaseManager.getInstance().getPersons();

    final SortableFilterPersonDataProvider dataProvider = new SortableFilterPersonDataProvider(persons) {

        private static final long serialVersionUID = 1L;

        @Override
        public List<Person> getData() {
            return PersonDatabaseManager.getInstance().getPersons();
        }
    };

    dataProvider.setSort("firstname", SortOrder.ASCENDING);

    final DataView<Person> dataView = new DataView<Person>("dataView", dataProvider) {
        /**
         * The serialVersionUID.
         */
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final Item<Person> item) {
            item.setDefaultModel(new CompoundPropertyModel<Person>(item.getModel()));
            item.add(new Label("firstname"));
            item.add(new Label("lastname"));
            item.add(new Label("dateOfBirth"));
        }
    };

    dataView.setItemsPerPage(10);
    add(dataView);

    add(new OrderByBorder<String>("orderByFirstname", "firstname", dataProvider));
    add(new OrderByBorder<String>("orderByLastname", "lastname", dataProvider));
    add(new OrderByBorder<String>("orderByDateOfBirth", "dateOfBirth", dataProvider));
    add(new NavigatorLabel("label", dataView));
    add(new PagingNavigator("topNavigator", dataView));
    add(new PagingNavigator("footernavigator", dataView));
}

From source file:net.unbewaff.wicketcrudr.components.StyledHeadersToolbar.java

License:Apache License

/**
 * Factory method for sortable header components. A sortable header
 * component must have id of <code>headerId</code> and conform to markup
 * specified in <code>HeadersToolbar.html</code>
 *
 * @param headerId/* w w  w. j  a va 2s  . co  m*/
 *            header component id
 * @param property
 *            property this header represents
 * @param locator
 *            sort state locator
 * @return created header component
 */
protected WebMarkupContainer newSortableHeader(final String headerId, final String property,
        final ISortStateLocator locator) {
    return new OrderByBorder(headerId, property, locator) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSortChanged() {
            getTable().setCurrentPage(0);
        }
    };
}

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

License:Apache License

/**
 * Factory method for sortable header components. A sortable header component must have id of
 * <code>headerId</code> and conform to markup specified in <code>HeadersToolbar.html</code>
 * /*from  w w  w  . ja v  a  2  s. c  o m*/
 * @param headerId
 *            header component id
 * @param property
 *            property this header represents
 * @param locator
 *            sort state locator
 * @return created header component
 */
protected WebMarkupContainer newSortableHeader(final String headerId, final S property,
        final ISortStateLocator<S> locator) {
    return new OrderByBorder<S>(headerId, property, locator) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSortChanged() {
            getTable().setCurrentPage(0);
        }
    };
}

From source file:org.apache.jetspeed.portlets.prm.ApplicationsListHome.java

License:Apache License

public ApplicationsListHome() {
    SearchForm form = new SearchForm("appSearchForm");
    add(form);//from   www.j  a  v  a 2s . c  o m

    // Construct Data View
    final JetspeedServiceLocator locator = ((AbstractAdminWebApplication) getApplication()).getServiceLocator();
    final Locale locale = (((AbstractAdminWebApplication) getApplication()).getPortletRequest()).getLocale();
    final ApplicationDataProvider applicationDataProvider = new ApplicationDataProvider(locator);
    final PortletDataProvider portletListDataProvider = new PortletDataProvider("j2-admin", locale, locator);

    final DataView<ApplicationBean> dataView = new DataView<ApplicationBean>(APP_TABLE,
            applicationDataProvider) {
        private static final long serialVersionUID = 1L;

        protected void populateItem(final Item<ApplicationBean> item) {
            final ApplicationBean pa = item.getModelObject();

            Link<ApplicationBean> nameLink = new Link<ApplicationBean>("nameLink") {
                private static final long serialVersionUID = 1L;

                public void onClick() {
                    String appName = this.get("nameLabel").getDefaultModelObjectAsString();
                    portletListDataProvider.changeAppName(appName);

                    try {
                        PortletMessaging.publish(
                                ((AbstractAdminWebApplication) getApplication()).getPortletRequest(),
                                ApplicationsListApplication.PRM_TOPIC,
                                ApplicationsListApplication.SELECTED_APPLICATION_EVENT, pa);
                        DataView portletView = (DataView) getPage().get(PORTLET_TABLE);
                        PortletDataProvider pdp = (PortletDataProvider) portletView.getDataProvider();
                        if (pdp.getSearchMode() == true) {
                            pdp.setSearchMode(false);
                            pdp.refresh();
                        }
                    } catch (NotSerializableException e) {
                        logger.error("Message to publish is not serializable.", e);
                    }
                }
            };

            nameLink.add(new Label("nameLabel", pa.getApplicationName()));
            item.add(nameLink);
            item.add(new Label("version", pa.getVersion()));
            item.add(new Label("path", pa.getPath()));
            item.add(new RunningPanel("running", item.getModel()));
            item.add(new ActionPanel("actions", item.getModel()));
        }
    };

    dataView.setItemsPerPage(
            ((AbstractAdminWebApplication) getApplication()).getPreferenceValueAsInteger("appRows"));

    add(new OrderByLink("appOrderByName", "name", applicationDataProvider, VoidCssProvider.getInstance()) {
        private static final long serialVersionUID = 1L;

        protected void onSortChanged() {
            if (applicationDataProvider.getOrderBy() == AppOrderBy.NAME_ASC) {
                applicationDataProvider.setOrderBy(AppOrderBy.NAME_DESC);
            } else {
                applicationDataProvider.setOrderBy(AppOrderBy.NAME_ASC);
            }
            applicationDataProvider.sort();
            dataView.setCurrentPage(0);
        }
    });

    add(new OrderByLink("appOrderByVersion", "version", applicationDataProvider,
            VoidCssProvider.getInstance()) {
        private static final long serialVersionUID = 1L;

        protected void onSortChanged() {
            if (applicationDataProvider.getOrderBy() == AppOrderBy.VERSION_ASC) {
                applicationDataProvider.setOrderBy(AppOrderBy.VERSION_DESC);
            } else {
                applicationDataProvider.setOrderBy(AppOrderBy.VERSION_ASC);
            }
            applicationDataProvider.sort();
            dataView.setCurrentPage(0);
        }
    });

    add(new OrderByLink("appOrderByPath", "path", applicationDataProvider, VoidCssProvider.getInstance()) {
        private static final long serialVersionUID = 1L;

        protected void onSortChanged() {
            if (applicationDataProvider.getOrderBy() == AppOrderBy.PATH_ASC) {
                applicationDataProvider.setOrderBy(AppOrderBy.PATH_DESC);
            } else {
                applicationDataProvider.setOrderBy(AppOrderBy.PATH_ASC);
            }
            applicationDataProvider.sort();
            dataView.setCurrentPage(0);
        }
    });

    add(dataView);
    add(new PagingNavigator("appNavigator", dataView));
    FeedbackPanel feedback = new FeedbackPanel("feedback");
    feedback.setEscapeModelStrings(false);
    add(feedback);

    final DataView<PortletDefinitionBean> portletListView = new DataView<PortletDefinitionBean>(PORTLET_TABLE,
            portletListDataProvider) {
        private static final long serialVersionUID = 1L;

        protected void populateItem(final Item<PortletDefinitionBean> item) {
            final PortletDefinitionBean portletDefinitionBean = item.getModelObject();

            Link<PortletDefinitionBean> link = new Link<PortletDefinitionBean>("nameLink", item.getModel()) {
                private static final long serialVersionUID = 1L;

                @Override
                public void onClick() {
                    try {
                        PortletMessaging.publish(
                                ((AbstractAdminWebApplication) getApplication()).getPortletRequest(),
                                ApplicationsListApplication.PRM_TOPIC,
                                ApplicationsListApplication.SELECTED_PORTLET_EVENT, portletDefinitionBean);
                        PortletMessaging.publish(
                                ((AbstractAdminWebApplication) getApplication()).getPortletRequest(),
                                ApplicationsListApplication.PRM_TOPIC,
                                ApplicationsListApplication.SELECTED_APPLICATION_EVENT,
                                new ApplicationBean(
                                        locator.getPortletRegistry().getPortletApplication(
                                                portletDefinitionBean.getApplicationName()),
                                        locator.getPortletFactory().isPortletApplicationRegistered(
                                                locator.getPortletRegistry().getPortletApplication(
                                                        portletDefinitionBean.getApplicationName()))));
                    } catch (NotSerializableException e) {
                        logger.error("Message to publish is not serializable.", e);
                    }
                }
            };

            link.add(new Label("nameLabel", portletDefinitionBean.getDisplayName()));

            item.add(link);
            item.add(new CloneStatusPanel("status", item.getModel()));
            item.add(new PortletActionPanel("actions", item.getModel()));
        }
    };

    portletListView.setItemsPerPage(
            ((AbstractAdminWebApplication) getApplication()).getPreferenceValueAsInteger("portletRows"));
    add(new OrderByBorder("plOrderByDisplayName", "name", portletListDataProvider) {
        private static final long serialVersionUID = 1L;

        protected void onSortChanged() {
            if (portletListDataProvider.getOrderBy() == PortletOrderBy.DISPLAY_NAME_ASC) {
                portletListDataProvider.setOrderBy(PortletOrderBy.DISPLAY_NAME_DESC);
            } else {
                portletListDataProvider.setOrderBy(PortletOrderBy.DISPLAY_NAME_ASC);
            }
            portletListDataProvider.sort();
            dataView.setCurrentPage(0);
        }
    });

    add(portletListView);
    add(new PagingNavigator("plNavigator", portletListView));

    CloneModalWindow modalWindow = new CloneModalWindow("modalwindow");
    add(modalWindow);

    Label modalWindowCloseScript = new Label("modalWindowCloseScript",
            new PropertyModel<String>(this, "currentModalWindowCloseScript"));
    modalWindowCloseScript.setOutputMarkupId(true);
    add(modalWindowCloseScript);
}

From source file:org.artifactory.webapp.wicket.page.browse.simplebrowser.VirtualRepoBrowserPanel.java

License:Open Source License

public VirtualRepoBrowserPanel(String id, RepoPath repoPath, Properties requestProps) {
    super(id);//w  w  w .  j  a  v a2  s .com
    add(new CssClass("virtual-repo-browser"));
    add(new BreadCrumbsPanel("breadCrumbs", repoPath.getId()));

    final String hrefPrefix = RequestUtils.getWicketServletContextUrl();
    //Try to get a virtual repo
    List<BaseBrowsableItem> browsableChildren;
    try {
        BrowsableItemCriteria.Builder builder = new BrowsableItemCriteria.Builder(repoPath)
                .requestProperties(requestProps);
        boolean includeChecksums = !ConstantValues.uiHideChecksums.getBoolean();
        builder.includeChecksums(includeChecksums);
        BrowsableItemCriteria criteria = builder.build();
        browsableChildren = repoBrowsingService.getVirtualRepoBrowsableChildren(criteria);
        if (!includeChecksums) {
            browsableChildren = BrowseUtils.filterChecksums(browsableChildren);
        }
    } catch (Exception e) {
        log.debug("Exception occurred while trying to get browsable children for repo path " + repoPath, e);
        throw new AbortWithHttpErrorCodeException(HttpServletResponse.SC_NOT_FOUND);
    }
    browsableChildren.add(getPseudoUpLink(repoPath));
    final String repoKey = repoPath.getRepoKey();

    //Add a table for the dirItems
    DirectoryItemsDataProvider dataProvider = new DirectoryItemsDataProvider(
            Lists.newArrayList(browsableChildren));
    DataView table = new DataView<BaseBrowsableItem>("items", dataProvider) {

        @Override
        protected void populateItem(final Item<BaseBrowsableItem> listItem) {
            BaseBrowsableItem browsableItem = listItem.getModelObject();
            String itemRelativePath = browsableItem.getRelativePath();
            AbstractLink itemLink;
            if (StringUtils.isEmpty(browsableItem.getRepoKey())) {
                //Up link to the list of repositories
                itemLink = createRootLink();
            } else {
                String itemName = browsableItem.getName();
                if (browsableItem.isFolder() && StringUtils.isNotBlank(itemRelativePath)) {
                    itemRelativePath += "/";
                    itemName += itemName.equals(BrowsableItem.UP) ? "" : "/";
                }

                String hrefBuilder = hrefPrefix + "/" + SIMPLE_BROWSING_PATH + "/" + repoKey + "/"
                        + itemRelativePath;
                itemLink = new ExternalLink("link", hrefBuilder, itemName);
            }
            itemLink.add(new CssClass(getCssClass(browsableItem)));
            listItem.add(itemLink);
            addGlobeIcon(listItem, browsableItem.isRemote());

            final List<String> repoKeys = (browsableItem instanceof VirtualBrowsableItem)
                    ? ((VirtualBrowsableItem) browsableItem).getRepoKeys()
                    : Collections.<String>emptyList();
            final String finalRelativePath = itemRelativePath;
            ListView<String> repositoriesList = new ListView<String>("repositoriesList", repoKeys) {

                @Override
                protected void populateItem(ListItem<String> repoKeyListItem) {
                    String repoItemKey = repoKeyListItem.getModelObject();
                    String localRepoHref = hrefPrefix + "/" + repoItemKey + "/" + finalRelativePath;
                    ExternalLink repoItemLink = new ExternalLink("repoKey", localRepoHref, repoItemKey);
                    repoItemLink.add(new CssClass("item-link"));
                    repoKeyListItem.add(repoItemLink);
                }
            };
            listItem.add(repositoriesList);
            listItem.add(new AttributeModifier("class", new AbstractReadOnlyModel() {
                @Override
                public Object getObject() {
                    return (listItem.getIndex() % 2 == 0) ? "even" : "odd";
                }
            }));
        }
    };
    //Add sorting decorator
    add(new OrderByBorder("orderByName", "name", dataProvider));
    add(table);
}

From source file:org.devproof.portal.core.module.email.page.EmailTemplatePage.java

License:Apache License

private OrderByBorder createModifiedTableOrder() {
    return new OrderByBorder("table_modified_by", "modifiedBy", emailTemplateDataProvider);
}