initial checkin
[ical-validator.git] / src / main / java / net / bzzt / ical / ValidationResultPanel.java
blob1666337404e6c4706d873fd9d854645facb1ef0c
1 package net.bzzt.ical;
3 import java.util.ArrayList;
4 import java.util.List;
5 import java.util.Set;
7 import net.fortuna.ical4j.util.validation.ValidationResult;
9 import org.apache.wicket.markup.html.WebMarkupContainer;
10 import org.apache.wicket.markup.html.basic.Label;
11 import org.apache.wicket.markup.html.list.ListItem;
12 import org.apache.wicket.markup.html.list.ListView;
13 import org.apache.wicket.markup.html.panel.Panel;
15 public class ValidationResultPanel extends Panel {
17 /**
20 private static final long serialVersionUID = 1L;
22 public ValidationResultPanel(String id, List<ValidationResult> results) {
23 super(id);
25 final MultiValueMap<String, ValidationResult> resultMap = new MultiValueMap<String, ValidationResult>();
27 for (ValidationResult result : results)
29 resultMap.put(result.component.toString(), new ValidationResult(null, result.message, result.args));
32 add(new Label("summary", results.size() + " results in " + resultMap.keySet().size() + " components"));
34 List<ValidationResult> generalFailures = (List<ValidationResult>) resultMap.get(null);
35 if (generalFailures.isEmpty())
37 add(new Label("message", "None."));
38 WebMarkupContainer webMarkupContainer = new WebMarkupContainer("messages");
39 // webMarkupContainer.add(new WebMarkupContainer("message"));
40 add(webMarkupContainer.setVisible(false));
42 else
44 add(new WebMarkupContainer("message").setVisible(false));
45 add(new ValidationResultListView("messages", generalFailures));
48 add(new ListView<String>("component", new ArrayList<String>((Set<String>) resultMap.keySet()))
51 /**
54 private static final long serialVersionUID = 1L;
56 @Override
57 protected void populateItem(
58 ListItem<String> item) {
59 String key = item.getModelObject();
60 if (key != null)
62 item.add(new Label("code", key.toString()));
64 else
66 item.add(new Label("code", ""));
67 item.setVisible(false);
69 item.add(new ValidationResultListView("messages", (List<? extends ValidationResult>) resultMap.get(key)));
74 // for (Entry<Component, List<ValidationResult>> entry : )
75 // {
76 // info(entry.getKey().toString());
77 // for (ValidationResult result : entry.getValue())
78 // {
79 // info(result.getText());
80 // }
81 // }
82 // TODO Auto-generated constructor stub