View Javadoc

1   /*
2    * Copyright (C) 2007 Alf Mikula
3    * 
4    * This file is part of PromoteGo.
5    *
6    * PromoteGo is free software: you can redistribute it and/or modify
7    * it under the terms of the GNU General Public License as published by
8    * the Free Software Foundation, either version 3 of the License, or
9    * (at your option) any later version.
10   *
11   * PromoteGo is distributed in the hope that it will be useful,
12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14   * GNU General Public License for more details.
15   *
16   * You should have received a copy of the GNU General Public License
17   * along with PromoteGo.  If not, see <http://www.gnu.org/licenses/>.
18   */
19  package org.promotego.dao.interfaces;
20  
21  import java.util.Date;
22  import java.util.List;
23  
24  import org.promotego.beans.ScheduledGame;
25  import org.promotego.beans.User;
26  
27  public interface ScheduledGameDao extends RadiusSearchDao<ScheduledGame>
28  {
29      public List<ScheduledGame> getByUser(User theUser);
30  
31  	/***
32  	 * Return the list of games coming up in the specified reminder window from the
33  	 * current time, which have not had reminders sent already.
34  	 * 
35  	 * @param currentTime The beginning of the search period for upcoming games.
36  	 * @param reminderWindow The length of the search period for upcoming games.
37  	 * @return The list of games in the specified interval which still need reminders sent.
38  	 */
39  	public List<ScheduledGame> getGamesNeedingReminder(Date currentTime, long reminderWindow);
40  }