1 /*
2 * $Id: GHFile.java 2993 2011-11-24 19:51:48Z andrewinkler $
3 * ============================================================================
4 * Project gluehloch-homepage-core
5 * Copyright (c) 2004-2007 by Andre Winkler. All rights reserved.
6 * ============================================================================
7 * GNU LESSER GENERAL PUBLIC LICENSE
8 * TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
9 *
10 * This library is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU Lesser General Public
12 * License as published by the Free Software Foundation; either
13 * version 2.1 of the License, or (at your option) any later version.
14 *
15 * This library is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * Lesser General Public License for more details.
19 *
20 * You should have received a copy of the GNU Lesser General Public
21 * License along with this library; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23 *
24 */
25
26 package de.awtools.homegen.directory;
27
28 /**
29 * Die Schnittstelle für die Files. Liegen i.d.R. in einem {@link GHDirectory}.
30 *
31 * @version $LastChangedRevision: 2993 $ $LastChangedDate: 2011-11-24 20:51:48 +0100 (Thu, 24 Nov 2011) $
32 * @author by Andre Winkler, $LastChangedBy: andrewinkler $
33 */
34 public interface GHFile extends GHEntry {
35
36 /**
37 * Liefert den Namen plus den Verzeichnispfad von der Wurzel an abwärts.
38 *
39 * @return Datei und Pfadname.
40 */
41 public String getNameAndPath();
42
43 /**
44 * Liefert das zugeordnete Verzeichnis.
45 *
46 * @return Das zugeordnete Verzeichnis.
47 */
48 public GHDirectory getDirectory();
49
50 /**
51 * Liefert den Dateityp.
52 *
53 * @return Dateityp
54 */
55 public FileType getFileType();
56
57 /**
58 * Liefert den Namen der Datei ohne Extension, d.h. der Name ohne den
59 * Zusatz, der nach '.' erscheint.
60 *
61 * @return Der Name der Datei ohne Extension.
62 */
63 public String getNameWithoutExtension();
64
65 /**
66 * Liefert die Extension der Datei, d.h. alles was nach dem letzten '.'
67 * im Namen steht.
68 *
69 * @return Die Datei-Extension.
70 */
71 public String getExtension();
72
73 }