001    package org.hackystat.projectbrowser.page.telemetry.inputpanel;
002    
003    import org.apache.wicket.markup.html.basic.Label;
004    import org.apache.wicket.markup.html.list.ListItem;
005    import org.apache.wicket.markup.html.list.ListView;
006    import org.apache.wicket.markup.html.panel.Panel;
007    import org.apache.wicket.model.PropertyModel;
008    import org.hackystat.projectbrowser.ProjectBrowserSession;
009    import org.hackystat.projectbrowser.page.telemetry.TelemetrySession;
010    import org.hackystat.telemetry.service.resource.chart.jaxb.TelemetryChartDefinition;
011    
012    /**
013     * Panel to show the description of the telemetrys.
014     * @author Shaoxuan Zhang
015     *
016     */
017    public class TelemetryDescriptionPanel extends Panel {
018      /** Support serialization. */
019      private static final long serialVersionUID = 1L;
020    
021      /**
022       * @param id the wicket component id.
023       */
024      public TelemetryDescriptionPanel(String id) {
025        super(id);
026        TelemetrySession session = ProjectBrowserSession.get().getTelemetrySession();
027        ListView descriptions = 
028          new ListView("descriptions", new PropertyModel(session, "chartDescriptions")) {
029          /** Support serialization. */
030          public static final long serialVersionUID = 1L;
031          @Override
032          protected void populateItem(ListItem item) {
033            TelemetryChartDefinition teleDef = (TelemetryChartDefinition)item.getModelObject();
034            item.add(new Label("name", teleDef.getName()));
035            item.add(new Label("description", teleDef.getDescription()));
036          }
037        };
038        add(descriptions);
039      }
040    
041    }