List of usage examples for org.apache.wicket.model IModel detach
@Override default void detach()
From source file:com.doculibre.constellio.wicket.components.form.LoggingTextArea.java
License:Open Source License
public LoggingTextArea(String id, final IModel loggedLinesModel, long refreshDelayMillis) { super(id);/* w ww .j a v a2s.com*/ setModel(new LoadableDetachableModel() { @SuppressWarnings("unchecked") @Override protected Object load() { StringBuffer sb = new StringBuffer(); List<String> loggedLines = (List<String>) loggedLinesModel.getObject(); for (String loggedLine : loggedLines) { sb.append(loggedLine + "\n"); } return sb.toString(); } @Override protected void onDetach() { loggedLinesModel.detach(); super.onDetach(); } }); initComponents(refreshDelayMillis); }
From source file:com.doculibre.constellio.wicket.panels.admin.solrConfig.SolrConfigPanel.java
License:Open Source License
private ListView getPropertiesListView(List<PropertyRow> propertyRows) { return new ListView("properties", propertyRows) { @Override/*from w w w. j a v a 2 s . c o m*/ protected void populateItem(final ListItem item) { final PropertyRow propertyRow = (PropertyRow) item.getModelObject(); item.setOutputMarkupId(true); item.add(new Label("property", new StringResourceModel(propertyRow.getMessageKey(), SolrConfigPanel.this, null))); IModel stateModel = new LoadableDetachableModel() { protected Object load() { SolrConfig config = solrConfigModel.getObject(); boolean isSet = PropertyResolver.getValue(propertyRow.getProperty(), config) != null; return new StringResourceModel(isSet ? "yes" : "no", SolrConfigPanel.this, null) .getObject(); } }; item.add(new Label("state", stateModel)); AjaxLink defaultValueLink = new AjaxLink("defaultValue") { @Override public void onClick(AjaxRequestTarget target) { SolrConfig config = solrConfigModel.getObject(); PropertyResolver.setValue(propertyRow.getProperty(), config, null, null); target.addComponent(item); save(); } @Override public boolean isVisible() { SolrConfig config = solrConfigModel.getObject(); return PropertyResolver.getValue(propertyRow.getProperty(), config) != null; } }; item.add(defaultValueLink); IModel titleLabelModel = new LoadableDetachableModel() { @Override protected Object load() { boolean isServerConfig = solrConfigModel.getObject().getRecordCollection() == null; String resourceKey = isServerConfig ? "defaultValue" : "defaultServerValue"; return new StringResourceModel(resourceKey, SolrConfigPanel.this, null).getObject(); } }; defaultValueLink.add(new Label("label", titleLabelModel)); if (propertyRow.isModalEdit()) { item.add(new ModalImgLinkHolder("editComponent") { @Override public WebMarkupContainer newLink(String id) { return new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { ModalWindow editModal = getModalWindow(); editModal.setInitialHeight(MODAL_HEIGHT); editModal.setInitialWidth(MODAL_WIDTH); String editMsg = getLocalizer().getString("edit", SolrConfigPanel.this); editModal.setTitle(editMsg); WebMarkupContainer editContent = propertyRow .getEditLinkPanel(editModal.getContentId()); editModal.setContent(editContent); editModal.show(target); target.addComponent(item); } }; } @Override protected Component newImg(String id) { return new NonCachingImage(id, new ResourceReference(BaseConstellioPage.class, "images/ico_crayon.png")); } }); } else if (propertyRow.getType().equals(Boolean.class)) { final IModel valueModel = propertyRow.createModel(); item.add(new CheckBoxHolder("editComponent") { @Override protected WebMarkupContainer newInput(String id) { return new AjaxCheckBox(id, valueModel) { @Override protected void onUpdate(AjaxRequestTarget target) { save(); target.addComponent(item); } @Override public void detachModels() { super.detachModels(); valueModel.detach(); } }; } }); } else { final IModel valueModel = propertyRow.createModel(); item.add(new AjaxEditableLabel("editComponent", valueModel) { @Override protected void onSubmit(AjaxRequestTarget target) { super.onSubmit(target); save(); target.addComponent(item); } @Override public void detachModels() { super.detachModels(); valueModel.detach(); } }); } } }; }
From source file:com.doculibre.constellio.wicket.panels.status.UserStatusPanel.java
License:Open Source License
public UserStatusPanel(String id, final IModel simpleSearchModel) { super(id);/* w w w . ja v a 2 s .c o m*/ add(new AdminLinkHolder("adminLinkHolder")); add(new SignInLinkHolder("signInLinkHolder")); add(new SignOutLinkHolder("signOutLinkHolder")); add(new SwitchLocaleLinkHolder("switchLocaleLinkHolder")); //TODO Disactivate if the user do not want it add(new SwitchSearchMethod("switchSearchMethod", (SimpleSearch) simpleSearchModel.getObject())); add(new LinkHolder("searchHistoryLinkHolder", new StringResourceModel("searchHistory", this, null)) { @Override protected WebMarkupContainer newLink(String id) { SimpleSearch simpleSearch = (SimpleSearch) simpleSearchModel.getObject(); return new BookmarkablePageLink(id, SearchHistoryPage.class, new PageParameters(SimpleSearch.COLLECTION_NAME + "=" + simpleSearch.getCollectionName())); } @Override public boolean isVisible() { SimpleSearch simpleSearch = (SimpleSearch) simpleSearchModel.getObject(); String collectionName = simpleSearch.getCollectionName(); return super.isVisible() && collectionName != null && !ConstellioSession.get().getSearchHistory(collectionName).isEmpty(); } @Override public void detachModels() { simpleSearchModel.detach(); super.detachModels(); } }); add(new LinkHolder("newSearchLinkHolder", new StringResourceModel("newSearch", this, null)) { @Override protected WebMarkupContainer newLink(String id) { PageFactoryPlugin pageFactoryPlugin = PluginFactory.getPlugin(PageFactoryPlugin.class); SimpleSearch simpleSearch = (SimpleSearch) simpleSearchModel.getObject(); return new BookmarkablePageLink(id, pageFactoryPlugin.getSearchFormPage(), SearchFormPage.getParameters(simpleSearch)); } @Override public boolean isVisible() { PageFactoryPlugin pageFactoryPlugin = PluginFactory.getPlugin(PageFactoryPlugin.class); return super.isVisible() && !(pageFactoryPlugin.isSearchFormPage(UserStatusPanel.this.getPage())); } }); }
From source file:com.jeroensteenbeeke.hyperion.data.TestPersistenceModel.java
License:Open Source License
@Test public void testPersistenceModel() { current = sf.openSession();//from ww w . ja v a 2 s . c om Lolcat t1 = new Lolcat(); Lolcat t2 = new Lolcat(); t2.setParent(t1); current.save(t1); current.save(t2); IModel<Lolcat> model = new PersistenceModel<Lolcat>(t1) { private static final long serialVersionUID = 1L; @Override protected void injectDAO() { setDao(new BaseEntityFinder() { @SuppressWarnings("unchecked") @Override public <T extends DomainObject> T getEntity(Class<T> entityClass, Serializable id) { return (T) current.load(entityClass, id); } }); } }; current.close(); model.detach(); current = sf.openSession(); assertEquals(1, model.getObject().getChildren().size()); current.close(); }
From source file:com.norconex.commons.wicket.bootstrap.filesystem.BootstrapSelectableContent.java
License:Apache License
@Override public boolean isSelected(File file) { IModel<File> model = provider.model(file); try {//from ww w.ja v a 2 s.c o m return selected != null && selected.equals(model); } finally { model.detach(); } }
From source file:com.pushinginertia.wicket.core.model.ConcatResourceModel.java
License:Open Source License
@Override public void detach() { super.detach(); for (final IModel<String> model : modelList) { model.detach(); }/*from w w w. ja va2 s.com*/ }
From source file:com.servoy.j2db.server.headlessclient.dataui.WebDataRenderer.java
License:Open Source License
public void refreshRecord(IRecordInternal record) { IModel<?> model = getDefaultModel(); if (model != null) { model.detach(); }/*from w w w . j a v a 2 s. c o m*/ if (dataAdapterList != null) { dataAdapterList.setRecord(record, true); } DataAdapterList.setDataRendererComponentsRenderState(this, record); if (getOnRenderComponent().getRenderEventExecutor().hasRenderCallback()) { jsChangeRecorder.setChanged(); } }
From source file:com.wickettraining.modelproxy.ProxyManager.java
License:Apache License
public <T> IModel<T> proxyModel(final IModel<T> model) { return new LoadableDetachableModel<T>() { private static final long serialVersionUID = 1L; @Override// w w w . jav a2 s. co m protected T load() { T ret = proxy(model.getObject()); if (!committed.get()) { try { commit(ret); } catch (Exception ex) { logger.warn("Error while committing during proxyModel#load: " + ex.getMessage()); ex.printStackTrace(); } } return ret; } @Override public void setObject(T object) { super.setObject(object); model.setObject(object); } @Override public void detach() { super.detach(); model.detach(); } }; }
From source file:cz.zcu.kiv.eegdatabase.wui.ui.experiments.components.ExperimentListForm.java
License:Apache License
/** * * @return list of columns the table of experiments shall display *///from w ww . j ava 2 s . com private List<? extends IColumn<Experiment, String>> createListColumns() { List<IColumn<Experiment, String>> columns = new ArrayList<IColumn<Experiment, String>>(); columns.add(new CheckBoxColumn<Experiment, String>(Model.of("")) { @Override protected IModel<Boolean> newCheckBoxModel(final IModel<Experiment> rowModel) { return new AbstractCheckBoxModel() { @Override public boolean isSelected() { return selectedExperiments.contains(rowModel.getObject()); } @Override public void select() { selectedExperiments.add(rowModel.getObject()); } @Override public void unselect() { selectedExperiments.add(rowModel.getObject()); } @Override public void detach() { rowModel.detach(); } }; } }); columns.add(new PropertyColumn<Experiment, String>(ResourceUtils.getModel("dataTable.heading.number"), "experimentId", "experimentId")); columns.add(new PropertyColumn<Experiment, String>( ResourceUtils.getModel("dataTable.heading.scenarioTitle"), "scenario.title", "scenario.title")); columns.add(new PropertyColumn<Experiment, String>(ResourceUtils.getModel("dataTable.heading.date"), "startTime", "startTime")); columns.add(new PropertyColumn<Experiment, String>(ResourceUtils.getModel("dataTable.heading.gender"), "personBySubjectPersonId.gender", "personBySubjectPersonId.gender")); columns.add(new TimestampPropertyColumn<Experiment, String>( ResourceUtils.getModel("dataTable.heading.yearOfBirth"), "personBySubjectPersonId.dateOfBirth", "personBySubjectPersonId.dateOfBirth", "yyyy")); return columns; }
From source file:cz.zcu.kiv.eegdatabase.wui.ui.experiments.components.ExperimentPackageManagePanel.java
License:Apache License
/** * * @return list of columns the table of experiments shall display *//* w w w. j a va2 s .co m*/ private List<? extends IColumn<Experiment, String>> createListColumns() { List<IColumn<Experiment, String>> columns = new ArrayList<IColumn<Experiment, String>>(); columns.add(new CheckBoxColumn<Experiment, String>(Model.of("")) { @Override protected IModel<Boolean> newCheckBoxModel(final IModel<Experiment> rowModel) { return new AbstractCheckBoxModel() { @Override public boolean isSelected() { return selectedExperiments.contains(rowModel.getObject()); } @Override public void select() { selectedExperiments.add(rowModel.getObject()); } @Override public void unselect() { selectedExperiments.add(rowModel.getObject()); } @Override public void detach() { rowModel.detach(); } }; } }); columns.add(new PropertyColumn<Experiment, String>(ResourceUtils.getModel("dataTable.heading.number"), "experimentId", "experimentId")); columns.add(new PropertyColumn<Experiment, String>( ResourceUtils.getModel("dataTable.heading.scenarioTitle"), "scenario.title", "scenario.title")); columns.add(new PropertyColumn<Experiment, String>(ResourceUtils.getModel("dataTable.heading.date"), "startTime", "startTime")); columns.add(new PropertyColumn<Experiment, String>(ResourceUtils.getModel("dataTable.heading.gender"), "personBySubjectPersonId.gender", "personBySubjectPersonId.gender")); columns.add(new TimestampPropertyColumn<Experiment, String>( ResourceUtils.getModel("dataTable.heading.yearOfBirth"), "personBySubjectPersonId.dateOfBirth", "personBySubjectPersonId.dateOfBirth", "yyyy")); columns.add(new PropertyColumn<Experiment, String>(ResourceUtils.getModel("dataTable.heading.detail"), null, null) { @Override public void populateItem(Item<ICellPopulator<Experiment>> item, String componentId, IModel<Experiment> rowModel) { item.add(new ViewLinkPanel(componentId, ExperimentsDetailPage.class, "experimentId", rowModel, ResourceUtils.getModel("link.detail"))); } }); return columns; }