KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > teamkonzept > field > TKUploadFilenameFilter


1 /*
2  * $Header: /cvsroot/webman-cms/source/webman/com/teamkonzept/field/TKUploadFilenameFilter.java,v 1.6 2000/06/01 15:02:54 alex Exp $
3  *
4  */

5 /**
6  * Die Klasse TKUploadfield stellt Methoden zur Verfuegung, Uploads zu ermoeglichen und
7  * die hochgeladenen Dateien (Bilder) darzustellen, sowie die Daten in der Datenbank zu speichern.
8  * Das Verzeichnis, in dem die Bilder gespeichert werden sollen, wird mit dem Parameterhash
9  * uebergeben. Der Key ist mit UPBASE banannt.
10  *
11  * 1. Upload von Dateien
12  * Die im UPBASE liegenden Dateien werden ausgelesen und in einem Pulldown-
13  * menue zur Auswahl gestellt.
14  *
15  * 2 Upload von Dateien vom lokalen Rechner auf den Server
16  * Dateien koennen vom lokalen Rechner in das UPBASE-Verzeichnis auf den Server
17  * kopiert werden. Es besteht die Moeglichkeit, Dateinamen zu aendern.
18  *
19  * Das Upload benoetigt 2 Templates.
20  * 1. Datei-Auswahl
21  * Das erste (ce_upload.tmpl und ct_upload.tmpl)
22  * stellt Funktionalitaeten zur Verfuegung, die die Auswahl der Dateien ermoeglicht.
23  *
24  * 2. Darstellung der Datei
25  * Das 2. Template (field_option.tmpl) stellt das Bild da und enthaelt einen Button "Modify".
26  * Wird dieser Event ausgeloest, wird das Template zur Datei-Auswahl wieder generiert.
27  *
28  * Die Events fuer das Modify werden im Hauptprogramm (CTGenerator) abgearbeitet.
29  */

30 package com.teamkonzept.field;
31
32 import java.io.*;
33 import com.teamkonzept.lib.*;
34
35 public class TKUploadFilenameFilter implements FilenameFilter {
36         
37         TKVector extensionVector;
38         
39         public TKUploadFilenameFilter( TKVector extensionVector) {
40             this.extensionVector = extensionVector;
41         }
42         
43             
44         /**
45          * Durchsucht ein Dir nach Files
46          * @return true, wenn Dateien im dir vorhanden
47          */

48         public boolean accept(File dir, String JavaDoc name)
49         {
50             
51             //TKHttp.out().println( "<br><b>################ EXTENSION VECTOR : </b>"+extensionVector);
52
//TKHttp.out().println( "<br><b>################ NAME : </b>"+name);
53

54             //---- file ist kein dir ----//
55
if (!new File( dir, name ).isDirectory()) {
56                 String JavaDoc sep = ".";
57                 
58                 //---- nur dateien mit der richtigen extension auswaehlen ----//
59
for(int i=0; i < extensionVector.size(); i++) {
60                     String JavaDoc extension = (String JavaDoc) extensionVector.elementAt(i);
61                     int sepIdx = name.lastIndexOf(sep);
62                     String JavaDoc fileExt = name.substring( sepIdx+1, name.length() );
63                     if( fileExt.equals(extension) )
64                         return true;
65                 }
66                 return false;
67             }
68             else
69                 return false;
70             
71         }
72
73
74
75     //{{DECLARE_CONTROLS
76
//}}
77
}//end class
78

79
Popular Tags