Example usage for org.apache.wicket.markup.repeater.data DataView DataView

List of usage examples for org.apache.wicket.markup.repeater.data DataView DataView

Introduction

In this page you can find the example usage for org.apache.wicket.markup.repeater.data DataView DataView.

Prototype

protected DataView(String id, IDataProvider<T> dataProvider) 

Source Link

Usage

From source file:org.xaloon.wicket.plugin.user.admin.panel.RolesPanel.java

License:Apache License

@Override
protected void onBeforeRender() {
    super.onBeforeRender();
    removeAll();//from   w ww  . ja v a2  s  .  c  o m

    // Add paging navigation container with navigation toolbar
    final DecoratedPagingNavigatorContainer<SecurityRole> dataContainer = new DecoratedPagingNavigatorContainer<SecurityRole>(
            "container", getCurrentRedirectLink());
    addOrReplace(dataContainer);
    dataContainer.setOutputMarkupId(true);

    // Add blog list data view
    final DataView<SecurityRole> securityGroupDataView = new DataView<SecurityRole>("security-roles",
            new JpaSecurityRoleDataProvider()) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(Item<SecurityRole> item) {
            final SecurityRole role = item.getModelObject();

            PageParameters pageParams = new PageParameters();
            pageParams.add(Bookmarkable.PARAM_PATH, role.getPath());
            BookmarkablePageLink<Void> roleLink = new BookmarkablePageLink<Void>("roleDetails",
                    RoleDetailPage.class, pageParams);
            item.add(roleLink);
            roleLink.add(new Label("name", new Model<String>(role.getName())));

            // Add delete role link
            item.add(new ConfirmationAjaxLink<Void>("delete") {
                private static final long serialVersionUID = 1L;

                @Override
                public void onClick(AjaxRequestTarget target) {
                    roleService.delete(role);
                    target.add(dataContainer);
                }

            });
        }
    };
    dataContainer.addAbstractPageableView(securityGroupDataView);

    // Add the modal window to create new group
    final ModalWindow addNewGroupModalWindow = new CustomModalWindow("modal-new-role", "New role") {
        private static final long serialVersionUID = 1L;

        @Override
        protected void addComponentsToRefresh(java.util.List<Component> components) {
            components.add(RolesPanel.this);
        };
    };
    addNewGroupModalWindow.setContent(new CreateNewEntityPanel<SecurityRole>(
            addNewGroupModalWindow.getContentId(), new Model<SecurityRole>(roleService.newAuthority())) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onNewEntitySubmit(AjaxRequestTarget target, SecurityRole entity) {
            roleService.save(entity);
            addNewGroupModalWindow.close(target);
        }
    });
    add(addNewGroupModalWindow);

    // add new group link
    add(new AjaxLink<Void>("add-new-role") {
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {
            addNewGroupModalWindow.show(target);
        }
    });
}

From source file:org.xaloon.wicket.plugin.user.admin.panel.UsersPanel.java

License:Apache License

@Override
protected void onBeforeRender() {
    super.onBeforeRender();

    removeAll();//from ww w.ja  v  a2 s . co m

    // Add paging navigation container with navigation toolbar
    final DecoratedPagingNavigatorContainer<UserSearchResult> dataContainer = new DecoratedPagingNavigatorContainer<UserSearchResult>(
            "container", getCurrentRedirectLink());
    dataContainer.setOutputMarkupId(true);
    addOrReplace(dataContainer);

    // Add blog list data view
    final DataView<UserSearchResult> securityGroupDataView = new DataView<UserSearchResult>("security-users",
            new JpaUserDetailsDataProvider()) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(Item<UserSearchResult> item) {
            final UserSearchResult user = item.getModelObject();

            // Add link to user details
            PageParameters params = new PageParameters();
            params.add(UsersPage.PARAM_USER_ID, user.getUsername());
            BookmarkablePageLink<Void> userDetailsLink = new BookmarkablePageLink<Void>("details-link",
                    UserSecurityPage.class, params);
            item.add(userDetailsLink);

            // Add username
            userDetailsLink.add(new Label("username",
                    new Model<String>(userFacade.getFullNameForUser(user.getUsername()))));

            // Add delete user link
            item.add(new ConfirmationAjaxLink<Void>("deleteUser") {
                private static final long serialVersionUID = 1L;

                @Override
                public void onClick(AjaxRequestTarget target) {
                    userFacade.deleteUser(user.getUsername());
                    target.add(dataContainer);
                }
            });

            // Add checkbox if account enabled
            item.add(new AjaxCheckBox("accountEnabled", new Model<Boolean>(user.isEnabled())) {
                private static final long serialVersionUID = 1L;

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    userFacade.modifyAccountEnabled(user.getUsername(), getModelObject());
                    target.add(dataContainer);
                }
            });

            // Add checkbox if account not expired
            item.add(new AjaxCheckBox("accountNonExpired", new Model<Boolean>(user.isAccountNonExpired())) {
                private static final long serialVersionUID = 1L;

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    userFacade.modifyAccountNonExpired(user.getUsername(), getModelObject());
                    target.add(dataContainer);
                }
            });

            // Add checkbox if account not locked
            item.add(new AjaxCheckBox("accountNonLocked", new Model<Boolean>(user.isAccountNonLocked())) {
                private static final long serialVersionUID = 1L;

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    userFacade.modifyAccountNonLocked(user.getUsername(), getModelObject());
                    target.add(dataContainer);
                }
            });

            // Add checkbox if credentials not expired
            item.add(new AjaxCheckBox("credentialsNonExpired",
                    new Model<Boolean>(user.isCredentialsNonExpired())) {
                private static final long serialVersionUID = 1L;

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    userFacade.modifyCredentialsNonExpired(user.getUsername(), getModelObject());
                    target.add(dataContainer);
                }
            });

        }

    };
    dataContainer.addAbstractPageableView(securityGroupDataView);

    // Add query form
    Form<String> searchForm = new Form<String>("search");
    searchForm.add(new TextField<String>(QUERY_PARAM, new PropertyModel<String>(properties, QUERY_PARAM)));
    searchForm.add(new IndicatingAjaxButton("submit") {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            target.add(dataContainer);
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
        }
    });
    add(searchForm);
}

From source file:pl.klimczakowie.cpublication2.web.view.base.BaseCriteriaTablePage.java

License:Apache License

/**
 * Constructor that is invoked when page is invoked without a session.
 * //from  w  ww.  j a  v  a2  s.co  m
 * @param parameters
 *            Page parameters
 */
@SuppressWarnings("rawtypes")
public BaseCriteriaTablePage(final PageParameters parameters) {
    super(parameters);
    reRender = new ReRenderComponentProvider();

    // TABLE
    GenericSortableDataProvider<T, M> dataProvider = new GenericSortableDataProvider<T, M>(
            getPersistenceReference(), this);
    table = new AjaxFallbackDefaultDataTable<T, String>("table", getColumns(), dataProvider, getRowsPerPage());

    criteriaWMC = new WebMarkupContainer("criteriaWMC");
    criteriaWMC.setOutputMarkupId(true);
    criteriaWMC.add(new DataView<CriterionDTO>("criterionList", new CriteriaDataProvider()) {
        private static final long serialVersionUID = 2544212454413843168L;

        @SuppressWarnings("unchecked")
        @Override
        protected void populateItem(final Item<CriterionDTO> item) {
            final StaticImage pencil = new StaticImage("pencil", "pencil.png");

            item.add(new Label("displayName"));
            item.add(new Label("type"));
            item.add(new AjaxEditableLabel<Object>("stringValue") {
                private static final long serialVersionUID = -8211904925503430617L;

                @Override
                protected void onSubmit(final AjaxRequestTarget target) {
                    super.onSubmit(target);
                    getCriteria().set(item.getModelObject());
                    reRender.reRenderComponents(target);
                }

                protected Component newLabel(final MarkupContainer parent, final String componentId,
                        final IModel<Object> model) {
                    pencil.add(new LabelAjaxBehavior(getLabelAjaxEvent()));
                    return super.newLabel(parent, componentId, model);
                }
            });

            item.add(pencil);
            item.add(new CriteriaRemoveLink("remove", item.getModelObject()));
        }
    });

    reRender.addReRenderComponent(table, getRefreshDuration());
    reRender.addReRenderComponent(criteriaWMC);

    add(criteriaWMC);
    add(table);
    add(new ModalWindowActionPanel<Criterion<M>>("addCriterion", "Add new search criterion",
            new CriteriumToModalProvider(reRender)));
}

From source file:se.inera.axel.riv.webconsole.RivShsServiceMappingsPage.java

License:Open Source License

public RivShsServiceMappingsPage(final PageParameters parameters) {
    super(parameters);

    mappingData = new RivShsServiceMappingDataProvider();

    DataView<RivShsServiceMapping> dataView = new DataView<RivShsServiceMapping>("mappings", mappingData) {
        private static final long serialVersionUID = 1L;

        @SuppressWarnings("serial")
        protected void populateItem(final Item<RivShsServiceMapping> item) {
            item.setModel(new CompoundPropertyModel<>(item.getModel()));
            String id = item.getModelObject().getId();
            item.add(labelWithLink("rivServiceNamespace", id));
            item.add(labelWithLink("shsProductId", id));
            //            item.add(labelWithLink("rivServiceEndpoint", id));
            item.add(new Link<String>("delete") {
                @Override/*from w  ww. j  ava2 s .  c  o m*/
                public void onClick() {
                    mappingRepository.delete(item.getModelObject());
                    setResponsePage(RivShsServiceMappingsPage.class);
                }
            });
        }
    };
    add(dataView);

    dataView.setItemsPerPage(10000);
    //      add(new PagingNavigator("navigator", dataView));

    add(new BookmarkablePageLink<RivShsServiceMappingEditPage>("add", RivShsServiceMappingEditPage.class,
            new PageParameters()));

}

From source file:se.inera.axel.rivssek.webconsole.RivSsekServiceMappingPage.java

License:Open Source License

public RivSsekServiceMappingPage(final PageParameters parameters) {
    super(parameters);

    mappingData = new RivSsekServiceMappingDataProvider();

    DataView<RivSsekServiceMapping> dataView = new DataView<RivSsekServiceMapping>("mappings", mappingData) {
        private static final long serialVersionUID = 1L;

        @SuppressWarnings("serial")
        protected void populateItem(final Item<RivSsekServiceMapping> item) {
            item.setModel(new CompoundPropertyModel<>(item.getModel()));
            String id = item.getModelObject().getId();
            item.add(labelWithLink("rivServiceNamespace", id));
            item.add(labelWithLink("rivLogicalAddress", id));
            item.add(labelWithLink("address", id));
            item.add(labelWithLink("ssekReceiver", id));
            item.add(new Link<String>("delete") {
                @Override//ww w. j ava2s.  c  o m
                public void onClick() {
                    mappingRepository.delete(item.getModelObject());
                    setResponsePage(RivSsekServiceMappingPage.class);
                }
            });
        }
    };
    add(dataView);

    dataView.setItemsPerPage(10000);
    //        add(new PagingNavigator("navigator", dataView));

    add(new BookmarkablePageLink<RivSsekServiceMappingEditPage>("add", RivSsekServiceMappingEditPage.class,
            new PageParameters()));

}

From source file:se.inera.axel.shs.broker.webconsole.agreement.ListAgreementsPanel.java

License:Open Source License

public ListAgreementsPanel(String id, PageParameters params) {
    super(id);/*from w  ww .j ava 2 s  .c om*/

    String query = params.get("search:q").toString();
    listData = new AgreementAdminServiceDataProvider(query);

    DataView<ShsAgreement> dataView = new DataView<ShsAgreement>("list", listData) {
        private static final long serialVersionUID = 1L;

        protected void populateItem(final Item<ShsAgreement> item) {
            item.setModel(new CompoundPropertyModel<>(item.getModel()));

            String uuid = item.getModelObject().getUuid();
            item.add(labelWithLink("shs.product[0].value", uuid));
            item.add(labelWithLink("shs.principal.commonName", uuid));
            item.add(labelWithLink("shs.customer.commonName", uuid));
            item.add(labelWithLink("shs.product[0].commonName", uuid));

            item.add(new Link<String>("delete") {
                @Override
                public void onClick() {
                    agreementAdminService.delete(item.getModelObject());
                    setResponsePage(AgreementPage.class);
                }

                private static final long serialVersionUID = 1L;
            });
        }

    };
    add(dataView);

    dataView.setItemsPerPage(20);
    PagingNavigator pagingNavigator = new PagingNavigator("agreementNavigator", dataView);
    pagingNavigator.setVisibilityAllowed(listData.size() > 20);

    add(pagingNavigator);
}

From source file:se.inera.axel.shs.broker.webconsole.directory.AddressListPanel.java

License:Open Source License

public AddressListPanel(String id, IModel<Organization> organizationModel) {
    super(id, organizationModel);

    this.organizationModel = organizationModel;

    final String orgNumber = this.organizationModel.getObject().getOrgNumber();
    if (StringUtils.isNotBlank(orgNumber)) {

        add(new BookmarkablePageLink<String>("add", ActorEditPage.class,
                new PageParameters().add("type", "address").add("orgNumber", orgNumber)));

        listData = new AddressDataProvider(this.organizationModel);

        DataView<Address> dataView = new DataView<Address>("list", listData) {
            private static final long serialVersionUID = 1L;

            @Override//from w w w.  j  a v a  2  s.  c  o  m
            protected void populateItem(final Item<Address> item) {
                item.setModel(new CompoundPropertyModel<Address>(item.getModel()));

                String serialNumber = item.getModelObject().getSerialNumber();
                item.add(labelWithLink("serialNumber", orgNumber, serialNumber));
                item.add(labelWithLink("deliveryMethods", orgNumber, serialNumber));

                item.add(new Link<Void>("delete") {
                    @Override
                    public void onClick() {
                        getDirectoryAdminService().removeAddress(
                                AddressListPanel.this.organizationModel.getObject(), item.getModelObject());
                    }

                    private static final long serialVersionUID = 1L;
                });
            }
        };
        add(dataView);

        dataView.setItemsPerPage(10);
        PagingNavigator pagingNavigator = new PagingNavigator("addressNavigator", dataView);
        pagingNavigator.setVisibilityAllowed(listData.size() > 10);
        add(pagingNavigator);

    }
}

From source file:se.inera.axel.shs.broker.webconsole.directory.AgreementListPanel.java

License:Open Source License

public AgreementListPanel(String id, final IModel<Organization> model) {
    super(id, model);

    final String organizationNumber = model.getObject().getOrgNumber();

    add(new BookmarkablePageLink<String>("add", ActorEditPage.class,
            new PageParameters().add("type", "agreement").add("orgno", organizationNumber)));

    listData = new AgreementDataProvider(model.getObject());

    DataView<Agreement> dataView = new DataView<Agreement>("list", listData) {
        private static final long serialVersionUID = 1L;

        @Override/* ww w  . j  a va 2  s  . com*/
        protected void populateItem(final Item<Agreement> item) {
            item.setModel(new CompoundPropertyModel<Agreement>(item.getModel()));
            String serialNumber = item.getModelObject().getSerialNumber();
            item.add(labelWithLink("productId", organizationNumber, serialNumber));
            item.add(labelWithLink("productName", organizationNumber, serialNumber));
            item.add(labelWithLink("principal", organizationNumber, serialNumber));

            item.add(new Link<Void>("delete") {
                @Override
                public void onClick() {
                    getDirectoryAdminService().removeAgreement(model.getObject(), item.getModelObject());
                }

                private static final long serialVersionUID = 1L;
            });
        }
    };
    add(dataView);

    dataView.setItemsPerPage(10);
    PagingNavigator pagingNavigator = new PagingNavigator("agreementsNavigator", dataView);
    pagingNavigator.setVisibilityAllowed(listData.size() > 10);
    add(pagingNavigator);
}

From source file:se.inera.axel.shs.broker.webconsole.directory.ListDirectoryPanel.java

License:Open Source License

public ListDirectoryPanel(String id) {
    super(id);/*  w  ww .  j a  v  a 2  s  .com*/

    listData = new OrganizationDataProvider((Component) this);
    DataView<Organization> dataView = new DataView<Organization>("list", listData) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(Item<Organization> item) {
            String orgNumber = item.getModelObject().getOrgNumber();
            item.add(labelWithLink("orgName", orgNumber));
            item.add(labelWithLink("orgNumber", orgNumber));
            item.add(labelWithLink("description", orgNumber));
        }

    };
    add(dataView);

    dataView.setItemsPerPage(1000);
    PagingNavigator pagingNavigator = new PagingNavigator("directoryNavigator", dataView);

    add(pagingNavigator);

    // Add a FeedbackPanel for displaying error messages
    FeedbackPanel feedbackPanel = new FeedbackPanel("feedback") {
        protected void onConfigure() {
            List<FeedbackMessage> feedbackMsgs = this.getFeedbackMessagesModel().getObject();
            if (feedbackMsgs.isEmpty()) {
                this.setVisibilityAllowed(false);
            } else {
                this.setVisibilityAllowed(true);
            }

            super.onConfigure();
        };
    };

    add(feedbackPanel);
}

From source file:se.inera.axel.shs.broker.webconsole.directory.ProductListPanel.java

License:Open Source License

public ProductListPanel(String id, IModel<Organization> organizationModel) {
    super(id, organizationModel);

    this.organizationModel = organizationModel;

    final String orgNumber = this.organizationModel.getObject().getOrgNumber();
    if (StringUtils.isNotBlank(orgNumber)) {

        add(new BookmarkablePageLink<String>("add", ActorEditPage.class,
                new PageParameters().add("type", "product").add("orgNumber", orgNumber)));

        listData = new ProductTypeDataProvider(this.organizationModel);

        DataView<ProductType> dataView = new DataView<ProductType>("list", listData) {
            private static final long serialVersionUID = 1L;

            @Override//from  w ww .  j a  v  a  2s .  c  om
            protected void populateItem(final Item<ProductType> item) {
                item.setModel(new CompoundPropertyModel<ProductType>(item.getModel()));

                String productId = item.getModelObject().getSerialNumber();

                item.add(labelWithLink("productName", orgNumber, productId));
                item.add(labelWithLink("serialNumber", orgNumber, productId));
                item.add(labelWithLink("description", orgNumber, productId));

                item.add(new Link<Void>("delete") {
                    @Override
                    public void onClick() {
                        getDirectoryAdminService().removeProduct(
                                ProductListPanel.this.organizationModel.getObject(), item.getModelObject());
                    }

                    private static final long serialVersionUID = 1L;
                });
            }
        };
        add(dataView);

        dataView.setItemsPerPage(10);
        PagingNavigator pagingNavigator = new PagingNavigator("productNavigator", dataView);
        pagingNavigator.setVisibilityAllowed(listData.size() > 10);
        add(pagingNavigator);
    }
}