Klassenbiliothek fuer Dateiverwaltung
ulrich
18 hours ago b659da052d5cd75bae7b7ee1e82c222fae2c5377
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
/*
  fm - File management class library
  Copyright (C) 2024  Ulrich Hilger
 
  This program is free software: you can redistribute it and/or modify
  it under the terms of the GNU Affero General Public License as
  published by the Free Software Foundation, either version 3 of the
  License, or (at your option) any later version.
 
  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU Affero General Public License for more details.
 
  You should have received a copy of the GNU Affero General Public License
  along with this program.  If not, see <https://www.gnu.org/licenses/>.
 */
package de.uhilger.fm;
 
/**
 * Einfache Transportklasse fuer eine Datei-Referenz
 * 
 * @author Ulrich Hilger
 * @version 1, 11. Mai 2021
 */
public class FileRef {
  
  public static final String TYP_DATEI = "datei";
  public static final String TYP_ORDNER = "ordner";
  
  public static final String TK_DATEI = "icon-doc-inv";
  public static final String TK_ORDNER = "icon-folder";
  
  /*
  
  Ergaenzt um Garfiken mit Data-URI
  https://wiki.selfhtml.org/wiki/Grafik/Grafiken_mit_Data-URI
  
  src="data:image/gif;base64,R0lGODdhEAAQAMwAAPj7+FmhUYjNfGuxYY
    DJdYTIeanOpT+DOTuANXi/bGOrWj6CONzv2sPjv2CmV1unU4zPgISg6DJnJ3ImTh8Mtbs00aNP1CZSGy0YqLEn47RgXW8amasW
    7XWsmmvX2iuXiwAAAAAEAAQAAAFVyAgjmRpnihqGCkpDQPbGkNUOFk6DZqgHCNGg2T4QAQBoIiRSAwBE4VA4FACKgkB5NGReAS
    FZEmxsQ0whPDi9BiACYQAInXhwOUtgCUQoORFCGt/g4QAIQA7"
  
    Schema
    data:[<mime type>][;charset=<Zeichensatz>][;base64],<Daten>
  
  */
  
  private String name;
  //private String pfad;
  private String typ;
  private String typKlasse;
  private boolean bild = false;
  private String miniurl;
  private String imgsrc;
 
  /**
   * Den Ausdruck fuer <code>imgsrc</code> ermitteln,
   * wenn es sich bei der Datei um eine Bilddatei handelt
   * 
   * @return den imgsrc-Ausdruck
   */
  public String getImgSrc() {
    return imgsrc;
  }
 
  /**
   * Den Ausdruck fuer <code>imgsrc</code> angeben,
   * wenn es sich bei der Datei um eine Bilddatei handelt
   * 
   * @param imgSrc  der imgsrc-Ausdruck
   */
  public void setImgSrc(String imgSrc) {
    this.imgsrc = imgSrc;
  }
 
  /**
   * Den URL der Miniaturansicht ermitteln, 
   * wenn es sich bei der Datei um eine Bilddatei handelt
   * 
   * @return URL der Miniaturansicht
   */
  public String getMiniurl() {
    return miniurl;
  }
 
  /**
   * Den URL der Miniaturansicht setzen, 
   * wenn es sich bei der Datei um eine Bilddatei handelt
   * 
   * @param miniurl URL der Miniaturansicht
   */
  public void setMiniurl(String miniurl) {
    this.miniurl = miniurl;
  }
 
  /**
   * Die CSS-Typ-Klasse fuer diese Datei ermitteln
   * 
   * @return  die CSS-Typ-Klasse dieser Datei
   */
  public String getTypKlasse() {
    return typKlasse;
  }
 
  /**
   * Die CSS-Typ-Klasse fuer diese Datei setzen
   * 
   * @param typKlasse die CSS-Typ-Klasse dieser Datei
   */
  public void setTypKlasse(String typKlasse) {
    this.typKlasse = typKlasse;
  }
 
  /**
   * Den Namen dieser Datei ermitteln
   * 
   * @return Name dieser Datei 
   */
  public String getName() {
    return name;
  }
 
  /**
   * Den Namen dieser Datei setzen
   * 
   * @param name Name dieser Datei 
   */
  public void setName(String name) {
    this.name = name;
  }
 
  /**
   * Den Typ dieser Datei ermitteln
   * 
   * @return 'datei' oder 'ordner' 
   */
  public String getTyp() {
    return typ;
  }
 
  /**
   * Den Typ dieser Datei setzen
   * 
   * @param typ 'datei' oder 'ordner' 
   */
  public void setTyp(String typ) {
    this.typ = typ;
    switch(typ) {
      case TYP_DATEI:
        setTypKlasse(TK_DATEI);
        break;
      case TYP_ORDNER:
        setTypKlasse(TK_ORDNER);
        break;
      default:
        setTypKlasse(TK_DATEI);
        break;
    }
  }
 
  /**
   * Ermitteln, ob es sich bei dieser Datei um ein Bild handelt
   * 
   * @return true, wenn diese Datei ein Bild ist, false wenn nicht 
   */
  public boolean isBild() {
    return bild;
  }
 
  /**
   * Den Bildindikator fuer diese Dateireferenz setzen
   * 
   * @param istBild true, wenn diese Datei ein Bild ist, false wenn nicht 
   */
  public void setBild(boolean istBild) {
    this.bild = istBild;
  }
 
  //public String getPfad() {
  //  return pfad;
  //}
 
  //public void setPfad(String pfad) {
  //  this.pfad = pfad;
  //}
  
  
  
  
}