1 /****************************************************************************** 2 * SetsDao.java - Dao interface for the Sets 3 * 4 * PicMan - The BuckoSoft Picture Manager in Java 5 * Copyright(c) 2005 - Dick Balaska 6 * 7 */ 8 package com.buckosoft.PicMan.db; 9 10 import java.util.List; 11 import org.springframework.dao.DataAccessException; 12 13 import com.buckosoft.PicMan.domain.Set; 14 15 /** Dao interface for the {@link com.buckosoft.PicMan.domain.Set}s. 16 * @author Dick Balaska 17 * @since 2005/07/30 18 * @version $Revision: 1.1 $ <br> $Date: 2013/12/26 01:25:43 $ 19 * @see <a href="http://cvs.buckosoft.com/Projects/java/PicMan/PicMan/src/com/buckosoft/PicMan/db/SetsDao.java">SetsDao.java</a> 20 */ 21 public interface SetsDao { 22 23 /** Get the number of <code>Set</code>s in the database. 24 * @return The number of Sets 25 * @throws DataAccessException 26 */ 27 public int getSetCount() throws DataAccessException; 28 29 /** Get a List of all of the <code>Set</code>s in the database. 30 * @return The List of all of the <code>Set</code>s. 31 * @throws DataAccessException broke. 32 */ 33 public List<Set> getSets() throws DataAccessException; 34 35 /** Get a cloned List of all of the {@link com.buckosoft.PicMan.domain.Set}s in the database. 36 * This is useful for when you want to prune the list without altering the sets cache. 37 * @return The List of {@link com.buckosoft.PicMan.domain.Set}s 38 */ 39 List<Set> getSetsClone(); 40 41 /** Fetch the <code>Set</code> who's Set ID matches this sid. 42 * @param sid The Set ID to query. 43 * @return The Set that matches this sid, or null if not found. 44 * @throws DataAccessException 45 */ 46 public Set getSet(int sid) throws DataAccessException; 47 48 /** Fetch the <code>Set</code> who's name matches this setName. 49 * @param setName The name of the <code>Set</code> to query for. 50 * @return The <code>Set</code> that matches this name, or null if not found. 51 * @throws DataAccessException boo boo. 52 */ 53 public Set getSet(String setName) throws DataAccessException; 54 55 /** Set the <code>Set</code>s in the database to be this List. 56 * Why you would want to do this, is beyond me. But, here it is... 57 * @param sets The <code>Set</code>s to set. 58 * @throws DataAccessException didn't happen. 59 */ 60 public void setSets(List<Set> sets) throws DataAccessException; 61 62 /** Add this <code>Set</code> to the database. 63 * @param set The <code>Set</code> to add. 64 * @throws DataAccessException not today. 65 */ 66 public void addSet(Set set) throws DataAccessException; 67 68 /** Delete this <code>Set</code> from the database. 69 * @param set The <code>Set</code> to delete. 70 * @throws DataAccessException nyet. 71 */ 72 public void deleteSet(Set set) throws DataAccessException; 73 74 /** Get a List of <code>Set</code>s that the user has NOT marked as inactive. 75 * @return The List of Active <code>Set</code>s. 76 * @throws DataAccessException nein. 77 */ 78 public List<Set> getActiveSets() throws DataAccessException; 79 80 /** Get a List of <code>Set</code>s that the user has marked as inactive. 81 * @return The List of Inactive <code>Set</code>s. 82 * @throws DataAccessException nein. 83 */ 84 public List<Set> getInactiveSets() throws DataAccessException; 85 86 /** Update an existing set in the database 87 * @param set The set to store 88 * @throws DataAccessException 89 */ 90 public void storeSet(Set set) throws DataAccessException; 91 }