1 /* 2 * Copyright 2014 James Pether Sörling 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 * 16 * $Id$ 17 * $HeadURL$ 18 */ 19 package com.hack23.cia.web.impl.ui.application.views.common.pagelinks.api; 20 21 import com.hack23.cia.model.external.riksdagen.person.impl.PersonData; 22 import com.hack23.cia.model.internal.application.data.committee.impl.ViewRiksdagenCommittee; 23 import com.hack23.cia.model.internal.application.data.ministry.impl.ViewRiksdagenMinistry; 24 import com.hack23.cia.model.internal.application.data.party.impl.ViewRiksdagenParty; 25 import com.vaadin.ui.Link; 26 27 /** 28 * A factory for creating PageLink objects. 29 */ 30 public interface PageLinkFactory { 31 32 /** 33 * Creates a new PageLink object. 34 * 35 * @return the link 36 */ 37 Link createMainViewPageLink(); 38 39 /** 40 * Creates a new PageLink object. 41 * 42 * @return the link 43 */ 44 Link createUserHomeViewPageLink(); 45 46 /** 47 * Creates a new PageLink object. 48 * 49 * @return the link 50 */ 51 Link createMinistryRankingViewPageLink(); 52 53 /** 54 * Creates a new PageLink object. 55 * 56 * @return the link 57 */ 58 Link createCommitteeRankingViewPageLink(); 59 60 /** 61 * Creates a new PageLink object. 62 * 63 * @return the link 64 */ 65 Link createPartyRankingViewPageLink(); 66 67 /** 68 * Creates a new PageLink object. 69 * 70 * @return the link 71 */ 72 Link createPoliticianRankingViewPageLink(); 73 74 /** 75 * Creates a new PageLink object. 76 * 77 * @return the link 78 */ 79 Link createAdminDataSummaryViewPageLink(); 80 81 /** 82 * Creates a new PageLink object. 83 * 84 * @return the link 85 */ 86 Link createAdminAgentOperationViewPageLink(); 87 88 /** 89 * Adds the committee page link. 90 * 91 * @param data 92 * the data 93 * @return the link 94 */ 95 Link addCommitteePageLink(ViewRiksdagenCommittee data); 96 97 /** 98 * Adds the ministry page link. 99 * 100 * @param data 101 * the data 102 * @return the link 103 */ 104 Link addMinistryPageLink(ViewRiksdagenMinistry data); 105 106 /** 107 * Adds the party page link. 108 * 109 * @param data 110 * the data 111 * @return the link 112 */ 113 Link addPartyPageLink(ViewRiksdagenParty data); 114 115 /** 116 * Creates a new PageLink object. 117 * 118 * @param label 119 * the label 120 * @param page 121 * the page 122 * @param pageId 123 * the page id 124 * @param pageNr 125 * the page nr 126 * @return the link 127 */ 128 Link createAdminPagingLink(String label,String page,String pageId,String pageNr); 129 130 /** 131 * Creates a new PageLink object. 132 * 133 * @param personData 134 * the person data 135 * @return the link 136 */ 137 Link createPoliticianPageLink(PersonData personData); 138 139 /** 140 * Creates a new PageLink object. 141 * 142 * @return the link 143 */ 144 Link createSearchDocumentViewPageLink(); 145 146 /** 147 * Creates a new PageLink object. 148 * 149 * @return the link 150 */ 151 Link createRegisterPageLink(); 152 153 /** 154 * Creates a new PageLink object. 155 * 156 * @return the link 157 */ 158 Link createLoginPageLink(); 159 160 /** 161 * Creates a new PageLink object. 162 * 163 * @return the link 164 */ 165 Link createCountryRankingViewPageLink(); 166 167 /** 168 * Creates a new PageLink object. 169 * 170 * @return the link 171 */ 172 Link createParliamentViewPageLink(); 173 174 }