Java tutorial
/* * Copyright 2014 yui_inoue. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.mycompany; import java.util.Arrays; import java.util.HashMap; import java.util.List; import org.apache.wicket.Component; import org.apache.wicket.ajax.markup.html.navigation.paging.AjaxPagingNavigator; import org.apache.wicket.extensions.ajax.markup.html.AjaxLazyLoadPanel; import org.apache.wicket.markup.html.WebMarkupContainer; import org.apache.wicket.markup.html.basic.Label; import org.apache.wicket.markup.html.panel.Panel; import org.apache.wicket.markup.repeater.Item; import org.apache.wicket.markup.repeater.data.DataView; import org.apache.wicket.markup.repeater.data.ListDataProvider; import org.apache.wicket.model.PropertyModel; /** * * @author yui_inoue */ public class PagingNavigatorPanel extends Panel { public PagingNavigatorPanel(String id, String name, final String value) { super(id); Label output = new Label("output", name); output.setOutputMarkupId(true); add(output); HashMap<String, List<ListElement>> dataMap = createDataMap(); final DataView<ListElement> view = new DataView<ListElement>("holidayData", new ListDataProvider<ListElement>(dataMap.get(value)), 5) { @Override protected void populateItem(Item<ListElement> item) { ListElement element = item.getModelObject(); item.add(new Label("no", new PropertyModel<String>(element, "no"))); item.add(new Label("monthDay", new PropertyModel<String>(element, "monthDay"))); item.add(new Label("week", new PropertyModel<String>(element, "week"))); item.add(new Label("name", new PropertyModel<String>(element, "name"))); } }; view.setOutputMarkupId(true); final WebMarkupContainer dataContainer = new WebMarkupContainer("dataContainer"); dataContainer.setOutputMarkupId(true); dataContainer.add(new AjaxLazyLoadPanel("dataView") { @Override public Component getLazyLoadComponent(String markupId) { return new DataListPanel(markupId, value, view); } }); add(dataContainer); add(new AjaxPagingNavigator("paging", view)); } private HashMap<String, List<ListElement>> createDataMap() { HashMap returnMap = new HashMap(); List<ListElement> data2010 = Arrays.asList(new ListElement("1", "1/1", "", ""), new ListElement("2", "1/11", "", "??l"), new ListElement("3", "2/11", "", "?LO"), new ListElement("4", "3/21", "", "?t"), new ListElement("5", "3/22", "", "?Ux"), new ListElement("6", "4/29", "", "?a"), new ListElement("7", "5/3", "", "@LO"), new ListElement("8", "5/4", "", ""), new ListElement("9", "5/5", "?", ""), new ListElement("10", "7/19", "", "C"), new ListElement("11", "9/20", "", "hV"), new ListElement("12", "9/23", "", "?H"), new ListElement("13", "10/11", "", ""), new ListElement("14", "11/3", "?", ""), new ListElement("15", "11/23", "", "J"), new ListElement("16", "12/23", "", "V?ca?")); returnMap.put("2010", data2010); List<ListElement> data2011 = Arrays.asList(new ListElement("1", "1/1", "y", ""), new ListElement("2", "1/10", "", "??l"), new ListElement("3", "2/11", "", "?LO"), new ListElement("4", "3/21", "", "?t"), new ListElement("5", "4/29", "", "?a"), new ListElement("6", "5/3", "", "@LO"), new ListElement("7", "5/4", "?", ""), new ListElement("8", "5/5", "", ""), new ListElement("9", "7/18", "", "C"), new ListElement("10", "9/19", "", "hV"), new ListElement("11", "9/23", "", "?H"), new ListElement("12", "10/10", "", ""), new ListElement("13", "11/3", "", ""), new ListElement("14", "11/23", "?", "J"), new ListElement("15", "12/23", "", "V?ca?")); returnMap.put("2011", data2011); List<ListElement> data2012 = Arrays.asList(new ListElement("1", "1/1", "", ""), new ListElement("2", "1/2", "", "?Ux"), new ListElement("3", "1/9", "", "??l"), new ListElement("4", "2/11", "y", "?LO"), new ListElement("5", "3/20", "", "?t"), new ListElement("6", "4/29", "", "?a"), new ListElement("7", "4/30", "", "?Ux"), new ListElement("8", "5/3", "", "@LO"), new ListElement("9", "5/4", "", ""), new ListElement("10", "5/5", "y", ""), new ListElement("11", "7/16", "", "C"), new ListElement("12", "9/17", "", "hV"), new ListElement("13", "9/22", "y", "?H"), new ListElement("14", "10/8", "", ""), new ListElement("15", "11/3", "y", ""), new ListElement("16", "11/23", "", "J"), new ListElement("17", "12/23", "", "V?ca?"), new ListElement("18", "12/24", "", "?Ux")); returnMap.put("2012", data2012); List<ListElement> data2013 = Arrays.asList(new ListElement("1", "1/1", "", ""), new ListElement("2", "1/14", "", "??l"), new ListElement("3", "2/11", "", "?LO"), new ListElement("4", "3/20", "?", "?t"), new ListElement("5", "4/29", "", "?a"), new ListElement("6", "5/3", "", "@LO"), new ListElement("7", "5/4", "y", ""), new ListElement("8", "5/5", "", ""), new ListElement("9", "5/6", "", "?Ux"), new ListElement("10", "7/15", "", "C"), new ListElement("11", "9/16", "", "hV"), new ListElement("12", "9/23", "", "?H"), new ListElement("13", "10/14", "", ""), new ListElement("14", "11/3", "", ""), new ListElement("15", "11/4", "", "?Ux"), new ListElement("16", "11/23", "y", "J"), new ListElement("17", "12/23", "", "V?ca?")); returnMap.put("2013", data2013); List<ListElement> data2014 = Arrays.asList(new ListElement("1", "1/1", "?", ""), new ListElement("2", "1/13", "", "??l"), new ListElement("3", "2/11", "", "?LO"), new ListElement("4", "3/21", "", "?t"), new ListElement("5", "4/29", "", "?a"), new ListElement("6", "5/3", "y", "@LO"), new ListElement("7", "5/4", "", ""), new ListElement("8", "5/5", "", ""), new ListElement("9", "5/6", "", "?Ux"), new ListElement("10", "7/21", "", "C"), new ListElement("11", "9/15", "", "hV"), new ListElement("12", "9/23", "", "?H"), new ListElement("13", "10/13", "", ""), new ListElement("14", "11/3", "", ""), new ListElement("15", "11/23", "", "J"), new ListElement("16", "11/24", "", "?Ux"), new ListElement("17", "12/23", "", "V?ca?")); returnMap.put("2014", data2014); List<ListElement> data2015 = Arrays.asList(new ListElement("1", "1/1", "", ""), new ListElement("2", "1/12", "", "??l"), new ListElement("3", "2/11", "?", "?LO"), new ListElement("4", "3/21", "y", "?t"), new ListElement("5", "4/29", "?", "?a"), new ListElement("6", "5/3", "", "@LO"), new ListElement("7", "5/4", "", ""), new ListElement("8", "5/5", "", ""), new ListElement("9", "5/6", "?", "?Ux"), new ListElement("10", "7/20", "", "C"), new ListElement("11", "9/21", "", "hV"), new ListElement("12", "9/22", "", "?x"), new ListElement("13", "9/23", "?", "?H"), new ListElement("14", "10/12", "", ""), new ListElement("15", "11/3", "", ""), new ListElement("16", "11/23", "", "J"), new ListElement("17", "12/23", "?", "V?ca?")); returnMap.put("2015", data2015); return returnMap; } }