001 /* 002 003 $Id: FileResponse.java,v 1.5 2003/05/02 20:29:47 culdesac Exp $ 004 005 */ 006 007 package sharpster.common; 008 009 import sharpster.common.FileCollection; 010 import sharpster.common.Response; 011 import java.io.Serializable; 012 import java.io.ObjectStreamException; 013 014 /** 015 * A response containg received files. 016 */ 017 public class FileResponse extends Response implements java.io.Serializable { 018 019 /** 020 * Object for holding the affected files. 021 */ 022 private FileCollection files; 023 024 /** 025 * Returns the type of this response. 026 */ 027 public int getType() { 028 return sharpster.common.ResponseType.FILE; 029 } 030 031 /** 032 * Returns the file collection. 033 * 034 * @return A file collection. 035 */ 036 public FileCollection getFiles() { 037 return files; 038 } 039 040 public Object writeReplace() throws ObjectStreamException { 041 files.removeAllPluginData(); 042 return this; 043 } 044 045 /** 046 * Sets the FileCollection. 047 * 048 * @param files The file collection to be set. 049 */ 050 public void setFiles(FileCollection files) { 051 this.files = files; 052 } 053 054 public String toString() { 055 String msg = super.toString(); 056 057 msg = "File response\n" + msg; 058 msg += "- Files: "; 059 060 for(int i=0;i<files.getFileCount();i++) { 061 SharedFile file = files.getFile(i); 062 if(file != null) { 063 msg += file.toString() + "\n "; 064 } 065 } 066 067 return msg; 068 } 069 } 070 071