List of usage examples for org.apache.wicket.markup.html.list ListView get
@Override public final Component get(String path)
From source file:org.apache.syncope.client.console.pages.ApprovalModalPage.java
License:Apache License
public ApprovalModalPage(final PageReference pageRef, final ModalWindow window, final WorkflowFormTO formTO) { super();/* w ww .j a v a2 s. c o m*/ IModel<List<WorkflowFormPropertyTO>> formProps = new LoadableDetachableModel<List<WorkflowFormPropertyTO>>() { private static final long serialVersionUID = 3169142472626817508L; @Override protected List<WorkflowFormPropertyTO> load() { return formTO.getProperties(); } }; final ListView<WorkflowFormPropertyTO> propView = new AltListView<WorkflowFormPropertyTO>("propView", formProps) { private static final long serialVersionUID = 9101744072914090143L; @Override @SuppressWarnings({ "unchecked", "rawtypes" }) protected void populateItem(final ListItem<WorkflowFormPropertyTO> item) { final WorkflowFormPropertyTO prop = item.getModelObject(); Label label = new Label("key", prop.getName() == null ? prop.getId() : prop.getName()); item.add(label); FieldPanel field; switch (prop.getType()) { case Boolean: field = new AjaxDropDownChoicePanel("value", label.getDefaultModelObjectAsString(), new Model<Boolean>(Boolean.valueOf(prop.getValue()))) .setChoices(Arrays.asList(new String[] { "Yes", "No" })); break; case Date: SimpleDateFormat df = StringUtils.isNotBlank(prop.getDatePattern()) ? new SimpleDateFormat(prop.getDatePattern()) : new SimpleDateFormat(); Date parsedDate = null; if (StringUtils.isNotBlank(prop.getValue())) { try { parsedDate = df.parse(prop.getValue()); } catch (ParseException e) { LOG.error("Unparsable date: {}", prop.getValue(), e); } } field = new DateTimeFieldPanel("value", label.getDefaultModelObjectAsString(), new Model<Date>(parsedDate), df.toLocalizedPattern()); break; case Enum: MapChoiceRenderer<String, String> enumCR = new MapChoiceRenderer<String, String>( prop.getEnumValues()); field = new AjaxDropDownChoicePanel("value", label.getDefaultModelObjectAsString(), new Model(prop.getValue())).setChoiceRenderer(enumCR).setChoices(new Model() { private static final long serialVersionUID = -858521070366432018L; @Override public Serializable getObject() { return new ArrayList<String>(prop.getEnumValues().keySet()); } }); break; case Long: field = new SpinnerFieldPanel<Long>("value", label.getDefaultModelObjectAsString(), Long.class, new Model<Long>(NumberUtils.toLong(prop.getValue())), null, null); break; case String: default: field = new AjaxTextFieldPanel("value", PARENT_PATH, new Model<String>(prop.getValue())); break; } field.setReadOnly(!prop.isWritable()); if (prop.isRequired()) { field.addRequiredLabel(); } item.add(field); } }; final AjaxButton userDetails = new IndicatingAjaxButton("userDetails", new Model<String>(getString("userDetails"))) { private static final long serialVersionUID = -4804368561204623354L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) { editUserWin.setPageCreator(new ModalWindow.PageCreator() { private static final long serialVersionUID = -7834632442532690940L; @Override public Page createPage() { return new ViewUserModalPage(ApprovalModalPage.this.getPageReference(), editUserWin, userRestClient.read(formTO.getUserKey())) { private static final long serialVersionUID = -2819994749866481607L; @Override protected void closeAction(final AjaxRequestTarget target, final Form form) { setResponsePage(ApprovalModalPage.this); } }; } }); editUserWin.show(target); } }; MetaDataRoleAuthorizationStrategy.authorize(userDetails, ENABLE, xmlRolesReader.getEntitlement("Users", "read")); final AjaxButton submit = new IndicatingAjaxButton(APPLY, new Model<String>(getString(SUBMIT))) { private static final long serialVersionUID = -958724007591692537L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) { Map<String, WorkflowFormPropertyTO> props = formTO.getPropertyMap(); for (int i = 0; i < propView.size(); i++) { @SuppressWarnings("unchecked") ListItem<WorkflowFormPropertyTO> item = (ListItem<WorkflowFormPropertyTO>) propView.get(i); String input = ((FieldPanel) item.get("value")).getField().getInput(); if (!props.containsKey(item.getModelObject().getId())) { props.put(item.getModelObject().getId(), new WorkflowFormPropertyTO()); } if (item.getModelObject().isWritable()) { switch (item.getModelObject().getType()) { case Boolean: props.get(item.getModelObject().getId()).setValue(String.valueOf("0".equals(input))); break; case Date: case Enum: case String: case Long: default: props.get(item.getModelObject().getId()).setValue(input); break; } } } formTO.getProperties().clear(); formTO.getProperties().addAll(props.values()); try { restClient.submitForm(formTO); ((Todo) pageRef.getPage()).setModalResult(true); window.close(target); } catch (SyncopeClientException e) { error(getString(Constants.ERROR) + ": " + e.getMessage()); LOG.error("While submitting form {}", formTO, e); feedbackPanel.refresh(target); } } @Override protected void onError(final AjaxRequestTarget target, final Form<?> form) { feedbackPanel.refresh(target); } }; final AjaxButton cancel = new IndicatingAjaxButton(CANCEL, new ResourceModel(CANCEL)) { private static final long serialVersionUID = -958724007591692537L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form form) { window.close(target); } @Override protected void onError(final AjaxRequestTarget target, final Form form) { // nothing } }; cancel.setDefaultFormProcessing(false); Form form = new Form(FORM); form.add(propView); form.add(userDetails); form.add(submit); form.add(cancel); MetaDataRoleAuthorizationStrategy.authorize(form, ENABLE, xmlRolesReader.getEntitlement("Approval", SUBMIT)); editUserWin = new ModalWindow("editUserWin"); editUserWin.setCssClassName(ModalWindow.CSS_CLASS_GRAY); editUserWin.setInitialHeight(USER_WIN_HEIGHT); editUserWin.setInitialWidth(USER_WIN_WIDTH); editUserWin.setCookieName("edit-user-modal"); add(editUserWin); add(form); }
From source file:org.apache.syncope.console.pages.ApprovalModalPage.java
License:Apache License
public ApprovalModalPage(final PageReference pageRef, final ModalWindow window, final WorkflowFormTO formTO) { super();// w w w . j a v a2 s. co m IModel<List<WorkflowFormPropertyTO>> formProps = new LoadableDetachableModel<List<WorkflowFormPropertyTO>>() { private static final long serialVersionUID = 3169142472626817508L; @Override protected List<WorkflowFormPropertyTO> load() { return formTO.getProperties(); } }; final ListView<WorkflowFormPropertyTO> propView = new AltListView<WorkflowFormPropertyTO>("propView", formProps) { private static final long serialVersionUID = 9101744072914090143L; @Override @SuppressWarnings({ "unchecked", "rawtypes" }) protected void populateItem(final ListItem<WorkflowFormPropertyTO> item) { final WorkflowFormPropertyTO prop = item.getModelObject(); Label label = new Label("key", prop.getName() == null ? prop.getId() : prop.getName()); item.add(label); FieldPanel field; switch (prop.getType()) { case Boolean: field = new AjaxDropDownChoicePanel("value", label.getDefaultModelObjectAsString(), new Model<Boolean>(Boolean.valueOf(prop.getValue()))) .setChoices(Arrays.asList(new String[] { "Yes", "No" })); break; case Date: SimpleDateFormat df = StringUtils.isNotBlank(prop.getDatePattern()) ? new SimpleDateFormat(prop.getDatePattern()) : new SimpleDateFormat(); Date parsedDate = null; if (StringUtils.isNotBlank(prop.getValue())) { try { parsedDate = df.parse(prop.getValue()); } catch (ParseException e) { LOG.error("Unparsable date: {}", prop.getValue(), e); } } field = new DateTimeFieldPanel("value", label.getDefaultModelObjectAsString(), new Model<Date>(parsedDate), df.toLocalizedPattern()); break; case Enum: MapChoiceRenderer<String, String> enumCR = new MapChoiceRenderer<String, String>( prop.getEnumValues()); field = new AjaxDropDownChoicePanel("value", label.getDefaultModelObjectAsString(), new Model(prop.getValue())).setChoiceRenderer(enumCR).setChoices(new Model() { private static final long serialVersionUID = -858521070366432018L; @Override public Serializable getObject() { return new ArrayList<String>(prop.getEnumValues().keySet()); } }); break; case Long: field = new SpinnerFieldPanel<Long>("value", label.getDefaultModelObjectAsString(), Long.class, new Model<Long>(NumberUtils.toLong(prop.getValue())), null, null); break; case String: default: field = new AjaxTextFieldPanel("value", PARENT_PATH, new Model<String>(prop.getValue())); break; } field.setReadOnly(!prop.isWritable()); if (prop.isRequired()) { field.addRequiredLabel(); } item.add(field); } }; final AjaxButton userDetails = new IndicatingAjaxButton("userDetails", new Model<String>(getString("userDetails"))) { private static final long serialVersionUID = -4804368561204623354L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) { editUserWin.setPageCreator(new ModalWindow.PageCreator() { private static final long serialVersionUID = -7834632442532690940L; @Override public Page createPage() { return new ViewUserModalPage(ApprovalModalPage.this.getPageReference(), editUserWin, userRestClient.read(formTO.getUserId())) { private static final long serialVersionUID = -2819994749866481607L; @Override protected void closeAction(final AjaxRequestTarget target, final Form form) { setResponsePage(ApprovalModalPage.this); } }; } }); editUserWin.show(target); } }; MetaDataRoleAuthorizationStrategy.authorize(userDetails, ENABLE, xmlRolesReader.getAllAllowedRoles("Users", "read")); final AjaxButton submit = new IndicatingAjaxButton(APPLY, new Model<String>(getString(SUBMIT))) { private static final long serialVersionUID = -958724007591692537L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) { Map<String, WorkflowFormPropertyTO> props = formTO.getPropertyMap(); for (int i = 0; i < propView.size(); i++) { @SuppressWarnings("unchecked") ListItem<WorkflowFormPropertyTO> item = (ListItem<WorkflowFormPropertyTO>) propView.get(i); String input = ((FieldPanel) item.get("value")).getField().getInput(); if (!props.containsKey(item.getModelObject().getId())) { props.put(item.getModelObject().getId(), new WorkflowFormPropertyTO()); } if (item.getModelObject().isWritable()) { switch (item.getModelObject().getType()) { case Boolean: props.get(item.getModelObject().getId()).setValue(String.valueOf("0".equals(input))); break; case Date: case Enum: case String: case Long: default: props.get(item.getModelObject().getId()).setValue(input); break; } } } formTO.setProperties(props.values()); try { restClient.submitForm(formTO); ((Todo) pageRef.getPage()).setModalResult(true); window.close(target); } catch (SyncopeClientException e) { error(getString(Constants.ERROR) + ": " + e.getMessage()); LOG.error("While submitting form {}", formTO, e); feedbackPanel.refresh(target); } } @Override protected void onError(final AjaxRequestTarget target, final Form<?> form) { feedbackPanel.refresh(target); } }; final AjaxButton cancel = new IndicatingAjaxButton(CANCEL, new ResourceModel(CANCEL)) { private static final long serialVersionUID = -958724007591692537L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form form) { window.close(target); } @Override protected void onError(final AjaxRequestTarget target, final Form form) { // nothing } }; cancel.setDefaultFormProcessing(false); Form form = new Form(FORM); form.add(propView); form.add(userDetails); form.add(submit); form.add(cancel); MetaDataRoleAuthorizationStrategy.authorize(form, ENABLE, xmlRolesReader.getAllAllowedRoles("Approval", SUBMIT)); editUserWin = new ModalWindow("editUserWin"); editUserWin.setCssClassName(ModalWindow.CSS_CLASS_GRAY); editUserWin.setInitialHeight(USER_WIN_HEIGHT); editUserWin.setInitialWidth(USER_WIN_WIDTH); editUserWin.setCookieName("edit-user-modal"); add(editUserWin); add(form); }
From source file:org.geoserver.security.web.AbstractSecurityNamedServicePanelTest.java
License:Open Source License
protected <T extends SecurityNamedServicePanelInfo> void setSecurityConfigClassName(Class<T> clazz) { ListView list = (ListView) tester.getLastRenderedPage().get("servicesContainer:services"); int toClick = -1; for (int i = 0; i < list.getList().size(); i++) { if (clazz.isInstance(list.getList().get(0))) { toClick = i;/*from ww w . j a va2 s . c o m*/ break; } } AjaxLink link = (AjaxLink) ((MarkupContainer) list.get(toClick)).get("link"); tester.executeAjaxEvent(link, "onclick"); // formTester.select("config.className", index); // tester.executeAjaxEvent(formTester.getForm().getPageRelativePath()+":config.className", "onchange"); }
From source file:org.openengsb.ui.admin.edb.EdbClientTest.java
License:Apache License
@SuppressWarnings("unchecked") @Test/*from w ww . j a v a 2 s . co m*/ public void testEnterQuery_shouldReturnQueryResults() throws Exception { tester.startPage(EdbClient.class); FormTester formTester = tester.newFormTester("form"); DropDownChoice<Class<? extends OpenEngSBModel>> modeldropdown = (DropDownChoice<Class<? extends OpenEngSBModel>>) tester .getComponentFromLastRenderedPage("form:modelSelector"); formTester.select("modelSelector", getIndexForValue(modeldropdown, "DummyModel")); tester.executeAjaxEvent(modeldropdown, "onchange"); formTester.setValue("query", "id:42"); tester.executeAjaxEvent("form:submit", "onclick"); ListView<? extends OpenEngSBModel> resultElement = (ListView<? extends OpenEngSBModel>) tester .getComponentFromLastRenderedPage("result:list"); tester.assertFeedback("form:feedback", "Found 1 results"); assertThat(resultElement.get("0:id").getDefaultModelObjectAsString(), is("42")); assertThat(resultElement.get("0:entries").getDefaultModelObjectAsString(), containsString("foo")); }
From source file:org.openengsb.ui.admin.edb.EdbHistoryPanelTest.java
License:Apache License
@Test public void testInitPanel_shouldShowHistory() throws Exception { tester.startPage(new EdbHistoryPanel("42")); tester.debugComponentTrees();/*from ww w . ja v a 2 s .c o m*/ ListView<?> list = (ListView<?>) tester.getComponentFromLastRenderedPage("history"); Component line = list.get(0); assertThat(line.get("time").getDefaultModelObjectAsString(), containsString("Jun 28")); assertThat(line.get("committer").getDefaultModelObjectAsString(), is("adams")); }
From source file:org.syncope.console.pages.ApprovalModalPage.java
License:Apache License
public ApprovalModalPage(final PageReference callerPageRef, final ModalWindow window, final WorkflowFormTO formTO) { super();/*www.j a va 2 s. co m*/ IModel<List<WorkflowFormPropertyTO>> formProps = new LoadableDetachableModel<List<WorkflowFormPropertyTO>>() { private static final long serialVersionUID = 3169142472626817508L; @Override protected List<WorkflowFormPropertyTO> load() { return formTO.getProperties(); } }; final ListView<WorkflowFormPropertyTO> propView = new ListView<WorkflowFormPropertyTO>("propView", formProps) { private static final long serialVersionUID = 9101744072914090143L; @Override protected void populateItem(final ListItem<WorkflowFormPropertyTO> item) { final WorkflowFormPropertyTO prop = item.getModelObject(); Label label = new Label("key", prop.getName() == null ? prop.getId() : prop.getName()); item.add(label); FieldPanel field = null; switch (prop.getType()) { case Boolean: field = new AjaxDropDownChoicePanel("value", label.getDefaultModelObjectAsString(), new Model(Boolean.valueOf(prop.getValue())), true) .setChoices(Arrays.asList(new String[] { "Yes", "No" })); break; case Date: SimpleDateFormat df = StringUtils.isNotBlank(prop.getDatePattern()) ? new SimpleDateFormat(prop.getDatePattern()) : new SimpleDateFormat(); Date parsedDate = null; if (StringUtils.isNotBlank(prop.getValue())) { try { parsedDate = df.parse(prop.getValue()); } catch (ParseException e) { LOG.error("Unparsable date: {}", prop.getValue(), e); } } field = new DateTimeFieldPanel("value", label.getDefaultModelObjectAsString(), new Model(parsedDate), true, df.toLocalizedPattern()); break; case Enum: MapChoiceRenderer<String, String> enumCR = new MapChoiceRenderer<String, String>( prop.getEnumValues()); field = new AjaxDropDownChoicePanel("value", label.getDefaultModelObjectAsString(), new Model(prop.getValue()), true).setChoiceRenderer(enumCR).setChoices(new Model() { private static final long serialVersionUID = -858521070366432018L; @Override public Serializable getObject() { return new ArrayList(prop.getEnumValues().keySet()); } }); break; case Long: field = new AjaxNumberFieldPanel("value", label.getDefaultModelObjectAsString(), new Model(Long.valueOf(prop.getValue())), Long.class, true); break; case String: default: field = new AjaxTextFieldPanel("value", PARENT_PATH, new Model(prop.getValue()), true); break; } field.setReadOnly(!prop.isWritable()); if (prop.isRequired()) { field.addRequiredLabel(); } item.add(field); } }; final AjaxButton submit = new IndicatingAjaxButton("apply", new Model(getString("submit"))) { private static final long serialVersionUID = -958724007591692537L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) { Map<String, WorkflowFormPropertyTO> props = formTO.getPropertiesAsMap(); for (int i = 0; i < propView.size(); i++) { ListItem<WorkflowFormPropertyTO> item = (ListItem<WorkflowFormPropertyTO>) propView.get(i); String input = ((FieldPanel) item.get("value")).getField().getInput(); if (!props.containsKey(item.getModelObject().getId())) { props.put(item.getModelObject().getId(), new WorkflowFormPropertyTO()); } if (item.getModelObject().isWritable()) { switch (item.getModelObject().getType()) { case Boolean: props.get(item.getModelObject().getId()).setValue(String.valueOf(input.equals("0"))); break; case Date: case Enum: case String: case Long: default: props.get(item.getModelObject().getId()).setValue(input); break; } } } formTO.setProperties(props.values()); try { restClient.submitForm(formTO); ((Todo) callerPageRef.getPage()).setModalResult(true); window.close(target); } catch (SyncopeClientCompositeErrorException e) { error(getString("error") + ":" + e.getMessage()); LOG.error("While submitting form {}", formTO, e); target.add(feedbackPanel); } } @Override protected void onError(final AjaxRequestTarget target, final Form<?> form) { target.add(feedbackPanel); } }; Form form = new Form("form"); form.add(propView); form.add(submit); MetaDataRoleAuthorizationStrategy.authorize(form, ENABLE, xmlRolesReader.getAllAllowedRoles("Approval", "submit")); add(form); }