/* Copyright 2006 - 2010 Under Dusken 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 no.dusken.aranea.service; import no.dusken.aranea.model.Issue; import no.dusken.common.service.GenericService; import java.util.List; public interface IssueService extends GenericService<Issue> { /** * Get issues from the given year. * @param year - the year * @return Issues from year ordered by i.fromDate desc */ public List<Issue> getIssues(int year); /** * Get the issues in the given year that has been published (has a fromdate) * after now() * @param year - the year * @return published Issues from year ordered by i.fromDate desc */ public List<Issue> getIssuesPublished(int year); /** * Get all issues * @return issues ordered by i.fromDate desc */ public List<Issue> getIssues(); /** * Get issue nr issue in year year * @param year - the year * @param issue - the issue * @return the issue specified by year and issue, null if none */ public Issue getIssue(int year, int issue); /** * Get last issue * @return the latest issue */ public Issue getCurrentIssue(); /** * Get issues by from date desc * @param number to fetch * @return the latest number issues */ public List<Issue> getCurrentIssues(int number); /** * Get the oldest issue. * @return the oldest issue */ public Issue getOldestIssue(); /** * Get issues by from date desc * @param offset start with issue number offset * @param number to fetch * @return issues by from date desc */ public List<Issue> getIssues(int offset, int number); /** * Get all issues with fromdate after now() * @param i issues to fetch * @return the i latest published issues. */ public List<Issue> getPublishedIssues(int i); }