001: /*
002: * $Header: /cvsroot/mvnforum/mvnforum/src/com/mvnforum/db/AttachmentDAO.java,v 1.21 2007/10/09 11:09:18 lexuanttkhtn Exp $
003: * $Author: lexuanttkhtn $
004: * $Revision: 1.21 $
005: * $Date: 2007/10/09 11:09:18 $
006: *
007: * ====================================================================
008: *
009: * Copyright (C) 2002-2007 by MyVietnam.net
010: *
011: * All copyright notices regarding mvnForum MUST remain
012: * intact in the scripts and in the outputted HTML.
013: * The "powered by" text/logo with a link back to
014: * http://www.mvnForum.com and http://www.MyVietnam.net in
015: * the footer of the pages MUST remain visible when the pages
016: * are viewed on the internet or intranet.
017: *
018: * This program is free software; you can redistribute it and/or modify
019: * it under the terms of the GNU General Public License as published by
020: * the Free Software Foundation; either version 2 of the License, or
021: * any later version.
022: *
023: * This program is distributed in the hope that it will be useful,
024: * but WITHOUT ANY WARRANTY; without even the implied warranty of
025: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
026: * GNU General Public License for more details.
027: *
028: * You should have received a copy of the GNU General Public License
029: * along with this program; if not, write to the Free Software
030: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
031: *
032: * Support can be obtained from support forums at:
033: * http://www.mvnForum.com/mvnforum/index
034: *
035: * Correspondence and Marketing Questions can be sent to:
036: * info at MyVietnam net
037: *
038: * @author: Minh Nguyen
039: */
040: package com.mvnforum.db;
041:
042: import java.sql.Timestamp;
043: import java.util.Collection;
044:
045: import net.myvietnam.mvncore.exception.CreateException;
046: import net.myvietnam.mvncore.exception.DatabaseException;
047: import net.myvietnam.mvncore.exception.ObjectNotFoundException;
048: import net.myvietnam.mvncore.exception.ForeignKeyNotFoundException;
049:
050: public interface AttachmentDAO {
051:
052: public static final String TABLE_NAME = DatabaseConfig.TABLE_PREFIX
053: + "Attachment";
054:
055: public void create(int postID, int memberID, String attachFilename,
056: int attachFileSize, String attachMimeType,
057: String attachDesc, String attachCreationIP,
058: Timestamp attachCreationDate, Timestamp attachModifiedDate,
059: int attachDownloadCount, int attachOption, int attachStatus)
060: throws CreateException, DatabaseException,
061: ForeignKeyNotFoundException;
062:
063: public int createAttachment(int postID, int memberID,
064: String attachFilename, int attachFileSize,
065: String attachMimeType, String attachDesc,
066: String attachCreationIP, Timestamp attachCreationDate,
067: Timestamp attachModifiedDate, int attachDownloadCount,
068: int attachOption, int attachStatus) throws CreateException,
069: DatabaseException, ForeignKeyNotFoundException,
070: ObjectNotFoundException;
071:
072: public void delete(int attachID) throws DatabaseException,
073: ObjectNotFoundException;
074:
075: public AttachmentBean getAttachment(int attachID)
076: throws ObjectNotFoundException, DatabaseException;
077:
078: // this method is not used now
079: public Collection getAttachments() throws DatabaseException;
080:
081: public int getNumberOfAttachments(int category, int forum)
082: throws DatabaseException;
083:
084: public int getNumberOfAttachments_inPost(int postID)
085: throws DatabaseException;
086:
087: public int getNumberOfAttachments_inThread(int threadID)
088: throws DatabaseException;
089:
090: public void delete_inPost(int postID) throws DatabaseException;
091:
092: public Collection getAttachments_inPost(int postID)
093: throws DatabaseException;
094:
095: public Collection getAttachments_inThread(int threadID)
096: throws DatabaseException;
097:
098: public Collection getAttachments_inForum(int forumID)
099: throws DatabaseException;
100:
101: public void increaseDownloadCount(int attachID)
102: throws DatabaseException, ObjectNotFoundException;
103:
104: public void updateAttachDesc(int attachID, String newDesc)
105: throws DatabaseException, ObjectNotFoundException;
106:
107: public void updateAttachOption(int attachID, int attachOption)
108: throws DatabaseException, ObjectNotFoundException;
109:
110: public Collection getAttachments_withSortSupport_limit(int offset,
111: int rowsToReturn, int category, int forum)
112: throws IllegalArgumentException, DatabaseException;
113:
114: public int getMaxAttachmentID() throws DatabaseException;
115:
116: public Collection getAttachments_fromIDRange(int fromID, int toID)
117: throws IllegalArgumentException, DatabaseException;
118: }
|